Release notes for betas
Summary
The beta versions contain breaking changes (it's actually alpha), but there's no release notes for them. Could we have a pre-release GitHub Releases workflow set up to publish what changed in each beta? Or just tag the betas?!
Even if it's just the PR list would be better then the nothing we have now.
Examples of recent breaking changes:
- beta18 renamed common to core (https://github.com/wiremock/wiremock/commit/4c88fd66a7ac26fe77557813a5fd3fcddabcd165)
- Swagger resources disappeared from .JAR files (https://github.com/wiremock/wiremock/commit/0dc7ba4f4a2750b737d53bfe9a42e520ee4c4126); this is a good thing, but notable!
- Split out JUnit artifacts (https://github.com/wiremock/wiremock/commit/5a696b4a033bf0caa62605b185ebf3a354a241da) breaks compilation and we needed to add extra dependencies.
- The decoupled apache client (https://github.com/wiremock/wiremock/pull/3241) breaks compilation and needed extra dependencies.
Potentially something like this would work in release.yml:
release-notes:
name: "GitHub Release"
needs:
- publish-core
timeout-minutes: 5
permissions:
contents: write
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- name: "Checkout ${{ github.ref }} in ${{ github.repository }} repository."
uses: actions/checkout@v6
- name: "Get version"
id: release-version
run: |
full_version=$(grep --perl-regexp --only-matching '(?<=^version=)(.+)(?=$)' wiremock-core/src/main/resources/version.properties)
echo "version=${full_version}" | tee --append "${GITHUB_OUTPUT}"
- name: "Create GitHub release"
env:
TAG: "v${{ steps.release-version.outputs.version }}"
GH_TOKEN: ${{ github.token }}
run: |
link=$(gh release create "${TAG}" --generate-notes --prerelease)
echo "::notice title=Release ${TAG}::drafted: ${link}"
Note: internally, we use a release drafter workflow (gh release create "${TAG}" --generate-notes --draft) that drafts a release on every push to main, so we can "just publish" the releases whenever, with ready release notes. I see you have something similar, maybe it's just not published because it's "beta".
References
No response