The release note generated by action-gh-release includes older changes than the selected version
What happened:
When I use action-gh-release, some older changes exist.
For example, I released v0.46.0 from v0.45.4. I expected the release note to include changes from v0.45.4 to HEAD commit, but there were some changes created at older than v0.45.4.
https://github.com/pipe-cd/pipecd/pull/4775#issuecomment-1928719219
Maybe it looks like changes from v0.45.0 to HEAD commit because the last one is the next to the merged commit for v0.45.0.
https://github.com/pipe-cd/pipecd/commits/master/?after=49627aa0e3dcd29c30d3f251813ac36f077ebb25+104
What you expected to happen:
We hope to include the correct changes like from v0.45.4 to v0.46.0.
How to reproduce it:
Environment:
pipedversion:control-planeversion:- Others:
let me try 🤾
Investigation Result
The cause
The list contains from v0.N.0, which is the common ancestor of release-v0.N.x and master.
(e.g. v0.49.0...c0392f596b8e50b05cf896a8b1707d70614120c7 for v0.49.3)
-
The tool lists commits of
<previous-tag>...<head>in themasterbranch. (e.g.v0.49.2...c0392f596b8e50b05cf896a8b1707d70614120c7for v0.49.3 release)https://github.com/pipe-cd/pipecd/blob/c2bf91d0e02165e1dbeff671d2f9d10d8a2bfda5/tool/actions-gh-release/release.go#L172-L173
-
Patch release tags are put to
release-v0.N.x, notmaster,
Why not happened previously?
Previously, this problem did not exist because the release flow was different.
The feature of automatically creating a Release was turned off in #3701 (The reason is not sure...).
At that time, the release flow of release-v0.N.x did not exist.
Solution (not full answer)
- We need to change the release flow. The tool should list commits in
release-v0.N.zAFTER cherry-picking. - Listing commits in
masterbranch is NOT enough because it contains several commits which would not be released as patch (e.g. pipedv1-related).
This problem does not happen when releasing minor versions. The reason is the same as I mentioned above.
Let me postpone this issue. The reasons are:
- Prioritize developing the plugin
- We need to change the release flow after releasing the plugin arch