chore(ci): update release-please to combine core packages into a single PR - #8932
Conversation
There was a problem hiding this comment.
Code Review
This pull request splits the Release Please configuration by moving core packages from release-please-submodules.json into a new release-please-core.json file and updating .github/release-please.yml to run both configurations. The reviewer identified a critical issue where using the same manifest file (.release-please-manifest.json) for both configurations will cause Release Please to fail validation, and suggested splitting it into two separate manifest files.
westarle
left a comment
There was a problem hiding this comment.
How did you verify it works? Does release-please have a dry run?
|
I think the release please folks were happy with your suggestion to move core things to |
|
After doing a bit of digging, I found this linked-versions plugin: https://github.com/googleapis/release-please/blob/main/src/plugins/linked-versions.ts If I am understanding correctly, enabling this plugin would effectively group the core packages into a single PR AND augment the branch name to avoid a conflict? It would look like this: If I am understanding the functionality correctly would result in a branch name of |
|
I ran the following command to verify my config: Unfortunately, it revealed that this plugin (while it does create a separate branch), forces all packages to have the same version number. I now understand what "linked-versions" means here. Not the right solution for us. |
|
As a temporary work around, I have moved the core libraries from This will group librarian made It looks like the publicly available release-please version (via Command completes successfully and generates a single PR. |
We are struggling with the conflicts created by merging individual release please PRs though updates to our global changelog.json.
We filed googleapis/release-please#2835 to resolve this permanently (by migrating to a changelog per package). However, in the mean time we will combine our core releases into a single PR to reduce toil.
This is also a blocker to our Node version upgrade as it will require many releases to complete.