Roll a release
SethTisue opened this issue · 1 comments
SethTisue commented
- Check CI passes against the latest Scala versions.
- Draft a new release for the release, allowing GitHub to generate draft release notes automatically.
- Run
git tag -a -s 1.x.y -m 'Version 1.x.y'
. The name of the tag should NOT have a 'v' prefix. - In sbt run
reload
andshow version
to verify the version. - In sbt run
clean
, particularly if you've recently bumpedscalaVersion
. - In sbt run
publishSigned
. You should start seeing "published mima-.. to https://oss.sonatype.org/service/local/staging/deploy/maven2/..". - In sbt run
++2.13
coreJVM/publishSigned
coreNative/publishSigned
- In sbt run
++3.3
coreJVM/publishSigned
coreNative/publishSigned
- Find and close your staging repository. (See Sonatype's Releasing the Deployment guide.)
- Switch to a branch (e.g.
git checkout -b release-1.x.y
) - In
plugins.sbt
updatesbt-mima-plugins
. - In
project/MimaSettings.scala
updatemimaPreviousVersion
& clear outmimaBinaryIssueFilters
. - In sbt run
testStaging
WITHOUTreload
ing first (testStaging
adds the staging resolvers & runsreload
). - Run
git commit -am 'Update sbt-mima-plugin to 1.x.y
and PR it (hub pull-request
). The PR won't pass CI until the release is available on Maven Central. You may poll repo1 directly (note the trailing slash in the URL). - Find and release your staging repository.
- Switch back to the main branch and run
git push --follow-tags
to push the tag. - Find and merge your update PR.
- Find and hit "Publish Release" on the draft GitHub release.
You are done!
SethTisue commented
Technically, the fact that we took the Scala 3.2->3.3 upgrade means we ought to bump the minor version (to 1.2.0).
But I think almost nobody is using MiMa as a Scala 3 library, so I think we should just call it 1.1.3 🤷