Open sourcing a library: how hard can that be?
summary
Library extracts Diablo Resurrected save files, handles C/C++ little-endian bit fields vs Java big-endian and patches shifted bits by adding one byte for three item cases, ships Java 21 code and examples, and publishes artifacts to Maven Central (sonatype) and GitHub Packages while signing with GPG and using LGPL 2.1. Tooling uses OpenRewrite for migrations and formatting; a native Quarkus demo runs ~50 MB and passes automated tests. Publishing hits a 500 error and monthly GitHub token upkeep, but releases succeed once signing and metadata are correct.
AI-written summary · about
chapters (17)
- 0:00Introduction
- 1:32Open source your work
- 3:59Backdoor incident risks
- 6:07Choosing library to open source
- 7:31Reverse engineering Diablo saves
- 10:04Endianness pitfalls
- 11:27Anonymity and legal issues
- 13:56Documentation for libraries
- 16:27ADRs and maintenance
- 18:33Building open source community
- 21:04GitHub Packages vs Maven Central
- 23:54Maven Central process
- 27:05Security and artifact signing
- 30:58Key takeaways
- 34:13Java 21 features
- 36:06Quarkus stats viewer demo
- 37:33Q&A
related talks
45mOpen sourcing a library: how hard can that be?
49mOpen sourcing a library: how hard can that be?
46mThe Unexpected Demise of Open Source Libraries
48mJava's Hidden Gems: Tools and Libraries
47mManaging micro libraries with Scala CLI
14mOpen-source it right (and avoid calling your IP lawyer)!
43mLibrary Developer Confidential
35mI want to publish my first Open Source library
