- Draft release notes using the
Draft new releasebutton in theReleasessection ofscala-cliGitHub page.- Create a tag for the new release.
- Use the
Auto-generate release notesfeature to pre-populate the document with pull requests included in the release. - Fill in the remaining sections, as in previous releases (features worth mentioning, notable changes, etc).
- Don't publish, save as draft instead
- Add the release notes on top
of the release notes doc and
create a PR.
- Make sure the notes render correctly on the website - that
includes swapping out GitHub-idiomatic @mentions of users, links to PRs, issues, etc.
- This is automated with the process_release_notes.sc script.
- When using IntelliJ you can do that using the regexes in release-notes-regexes.md.
- Copy any fixes over to the draft after getting the PR reviewed and merged.
- Make sure the notes render correctly on the website - that
includes swapping out GitHub-idiomatic @mentions of users, links to PRs, issues, etc.
- Mark the release draft as
pre-releaseand thenPublish Release - Wait for a green release CI build with all the updated versions.
- Double check if none of the steps failed, including individual distribution channels in
the
update-packagesandwindows-packagesjobs.
- Double check if none of the steps failed, including individual distribution channels in
the
- ScalaCLI Setup
- Merge pull request with updated Scala CLI version in scala-cli-setup repository. Pull request should be opened automatically after release.
- Wait for the
Update distPR to be automatically created after the previous one has been merged, and then proceed to merge it. - Make a release with the updated Scala CLI version.
- Update the
v1&v1.12tags to the latest release commit.git fetch --all git checkout origin v1.12.x git tag -d v1.12 git tag v1.12 git push origin v1.12 -f git tag -d v1 git tag v1 git push origin v1 -f
- Submit Scala CLI MSI installer
scala-cli-x86_64-pc-win32.msifor malware analysis. The Msi file must be uploaded using this service. For more information on this process, refer here. - Unmark release as
pre-release. - Announce the new release
- announce on Twitter
- announce on Discord
- announce on Reddit if the release contains any noteworthy changes
- Create a ticket for the next release using the
Plan a releasetemplate and assign it to the person responsible.