The year 2021 is now behind us and what a year it was. Sometimes I could not keep listening to the news, once you feel the grip of depression you must act quickly to get out of the downward spiral. When that happened I turned my attention to code. Fortunately at work together with my teammates we had a series of success stories and wins all year long, yay for us! Now on the side of personal projects I did not manage as many releases as last year, 59 this years vs. 98 last. Or did I?
Back in late 2020 Max Andersen (@maxandersen) of JBang fame and I had a conversation regarding the steps required by JBang to publish its binaries to a wide range of distribution channels. He relied on a combination Gradle build files, bash scripts, REST APIs, file templates, and more. It so happens I had done just that for Gum by leveraging GoReleaser and all I had to do was configure a single YAML file. GoReleaser is great for Go projects, sadly it does not work for Java projects. Then the penny dropped and we came up with a plan: find someone willing to build a tool like GoReleaser but for Java projects.
Yeah, that someone turned out to be me, and that's how JReleaser came to be, which if you've seen the entries posted at this blog for 2021 you'll notice the project has dominated the discourse. JReleaser dramatically simplifies releasing projects with lost of configuration options available while at the same time taking advantage of conventions to reduce the amount of said configuration you may provide. One of the early features added to the tool (thanks to Christian Stein (@sormuras) is the ability to post early-access releases given a particular trigger. In the case of JReleaser we do so on every push to the main branch.
So what does this have to do with the number of releases? If you count only final releases then yes, there are only 59 of them. But if you also count the number of early-access releases then the number jumps to ... over 400!
Below is a list of all projects under my control that posted releases on 2021, the bulk concentrated on JReleaser. Hey, would you look at that? Griffon posted a new release (after a 3 year hiatus).
Layrry is actually Gunnar's project but I pushed the button 😜
If you find any of these projects to be useful to your work then consider sponsoring my work. There's Patreon or GitHub sponsorship options. You may also become a Tidelift subscriptor and notify me of the packages you'd like to see lifted. It's also possible to sponsor (or bounty a feature!) for JReleaser via its Open Collective.
Keep on coding!