DEV Community

loading...

Discussion on: How my team releases libraries

Collapse
brunnerlivio profile image
Livio Brunner

Very interesting post! I am trying evangalize this kind of mindset of library development at Roche as well. So seeing this done similarly by Google definitely gives assurance.
May I ask, why did you create a new tool opposed to semantic-release which seems to be similar?

Collapse
bcoe profile image
Benjamin E. Coe Author

The main differences are:

  1. the concept of "release PRs". Rather than releasing from a branch, we needed a big red button to allow product teams to release on their preferred cadence.
  2. I wanted complete control over the library, since I knew we'd need to make customizations for each of the language teams (mono-repos, vs., split repos, etc).

The impression I get is that semantic-release is a great library, especially if you're releasing JavaScript, and are open to continuously releasing from a branch. It's also customizable, so I think it would have been an alternate route we could have opted for (but we'd have needed to customize it significantly).

Collapse
brunnerlivio profile image
Livio Brunner

I see.. I think semantic release has very nice concepts, but its heavy focus on NPM packages has felt like lost potential. The same concepts can very well be applied to other languages, which you have implemented with release-please quite nicely!
Thanks for sharing, looking forward to see release-please grow!

Thread Thread
bcoe profile image
Benjamin E. Coe Author

I was reading through the docs for semantic-release thoroughly, in prep for this post. I do think it's customizable enough, that you could flesh out something similar to release-please on it. It would just take folks from other language communities building it out.

I went this route partially because I knew I'd have lots of edge-case requests from my own stakeholders (I would have been a nuisance on semantic-release's issue tracker
😂).