@@ -111,10 +111,6 @@ jobs:
111111 with :
112112 fetch-depth : 0
113113 - uses : dtolnay/rust-toolchain@stable
114- - name : Install git-cliff
115- uses : taiki-e/install-action@v2
116- with :
117- tool : git-cliff
118114 - name : Determine next version from conventional commits
119115 id : next_version
120116 working-directory : ./rust/main
@@ -179,17 +175,16 @@ jobs:
179175 echo "Next version: $NEW_VERSION ($BUMP_TYPE bump from $CURRENT_VERSION)"
180176 - name : Generate changelog
181177 id : changelog
182- working-directory : ./rust/main
183178 env :
184179 NEW_VERSION : ${{ steps.next_version.outputs.new_version }}
185180 run : |
186- # Generate changelog for commits since last release
181+ # Generate workspace-grouped changelog using custom script
187182 LATEST_TAG=$(git tag -l "agents-v*" --sort=-version:refname | grep -E "^agents-v[0-9]+\.[0-9]+\.[0-9]+$" | head -1)
188183
189184 if [ -z "$LATEST_TAG" ]; then
190- CHANGELOG=$(git-cliff --config cliff.toml --unreleased --strip all )
185+ CHANGELOG=$(./rust/scripts/generate-workspace-changelog.sh )
191186 else
192- CHANGELOG=$(git-cliff --config cliff.toml "${LATEST_TAG}..HEAD" --strip all )
187+ CHANGELOG=$(./rust/scripts/generate-workspace-changelog.sh "${LATEST_TAG}..HEAD")
193188 fi
194189
195190 # Save changelog to file for PR body
@@ -277,11 +272,11 @@ jobs:
277272 git push -f origin "$BRANCH_NAME"
278273
279274 # Create or update PR
280- PR_BODY="## Release agents v${NEW_VERSION}
275+ PR_BODY="# Release agents v${NEW_VERSION}
281276
282277 This PR prepares the release of Hyperlane agents version **${NEW_VERSION}** (${BUMP_TYPE} bump).
283278
284- ### What's Changed
279+ ## What's Changed
285280
286281 ${CHANGELOG}
287282
@@ -336,12 +331,7 @@ jobs:
336331 - uses : actions/checkout@v4
337332 with :
338333 fetch-depth : 0
339- - name : Install git-cliff
340- uses : taiki-e/install-action@v2
341- with :
342- tool : git-cliff
343334 - name : Determine version and create release
344- working-directory : ./rust/main
345335 env :
346336 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
347337 IS_PRERELEASE : ${{ github.event_name == 'workflow_dispatch' && inputs.prerelease }}
@@ -381,12 +371,21 @@ jobs:
381371 TAG_NAME="agents-v${VERSION}"
382372 echo "Creating $RELEASE_TYPE: $TAG_NAME"
383373
384- # Generate changelog
374+ # Generate workspace-grouped changelog
385375 PREV_TAG=$(git describe --tags --abbrev=0 --match "agents-v*" 2>/dev/null || echo "")
376+
377+ # For stable releases (push to main), use HEAD~1 to exclude the version bump commit
378+ # For prereleases (workflow_dispatch), use HEAD since there's no version bump commit
379+ if [ "$IS_PRERELEASE" = "true" ]; then
380+ COMMIT_RANGE_END="HEAD"
381+ else
382+ COMMIT_RANGE_END="HEAD~1"
383+ fi
384+
386385 if [ -z "$PREV_TAG" ]; then
387- CHANGELOG=$(git-cliff --config cliff.toml --unreleased --strip all )
386+ CHANGELOG=$(./rust/scripts/generate-workspace-changelog.sh )
388387 else
389- CHANGELOG=$(git-cliff --config cliff.toml --latest --strip all )
388+ CHANGELOG=$(./rust/scripts/generate-workspace-changelog.sh "${PREV_TAG}..${COMMIT_RANGE_END}" )
390389 fi
391390
392391 # Add warning for pre-releases
0 commit comments