Closed
Description
Milestone: https://github.com/scala/scala/milestone/61
Target date: July 17
Before the release
- Notify community on https://contributors.scala-lang.org/c/announcements
- Create next milestone, move the "Merge to 2.13.x" description to it (default for new PRs)
- Close the milestone
- Triage scala/bug and scala/scala-dev tickets that target [version]
- Check PRs assigned to the milestone, also check WIP
- Check merged PRs for the next milestone in this branch, and assign them to this milestone.
- Check module versioning
- Merge in older release branch
Release notes
- PRs with release-notes label must have excellent title & description (title will be pasted literally in release note bullet list)
- Draft release notes (to be published once GitHub tag is pushed)
- Summarize release notes and submit to https://github.com/typesafehub/techhub-blog => https://github.com/typesafehub/techhub-blog/pull/19
- Prepare PR to https://github.com/scala/scala-lang/ (using scala/make-release-notes)
documentation/api.md
download/index.md
_config.yml
(update devscalaversion or scalaversion)- => Announce Scala 2.12.3 scala-lang#713
Actual release
- Announce start of release process, point to release note PRs for feedback
- Close the scala/bug milestone, create next, move pending issues
- Close the scala-dev milestone, create next, move pending issues
- Double check
version.properties
, maybe create a PR with updates
Stage the release
- Run the build job, specify
SCALA_VER_BASE
andSCALA_VER_SUFFIX
: scala-2.12.x-release-main#878- Note the scala/scala@NNNNNN commit built by integrate-bootstrap job (on jenkins page): 6ac6da8b61a3a427089a166c7802a940eac71064
- Create tag locally:
git tag -s -m "Scala [version]" v[version] [sha]
, - Note the scala/scala-dist@NNNNNN commit built by package-unix job (on jenkins page): e49f4b3a8b9d83d21f7c50e283f5426808f21231
- Create tag locally:
git tag -s -m "Scala [version]" v[version] [sha]
, - Staging repo to be promoted after tag is cut (see log of the boostrap job): orgscala-lang-1432
- Sanity check jar/pom in https://oss.sonatype.org/content/repositories/staging/org/scala-lang/scala-compiler/2.N.M/ (and a module)
- Announce release is staged at https://oss.sonatype.org/content/repositories/staging/ on https://contributors.scala-lang.org/c/announcements
Point of no return
- Push scala/scala tag:
git push https://github.com/scala/scala.git v[version]
-
Before the next nightly, advance HEAD on scala/scala past the tag. Otherwise, the nightly build will re-stage the release and overwrite the distribution archives on S3. TODO: should we disable this?Tag driven distribution publication was disabled in Disable tag driven publication of distribution scala#5979 - Push scala/scala-dist tag:
git push https://github.com/scala/scala-dist.git v[version]
- Promote staging repos:
st_stagingRepoPromote [scala-repo]
,st_stagingRepoPromote [modules-repo]
Check availability
- Check release on sonatype: https://oss.sonatype.org/content/repositories/releases/org/scala-lang/scala-compiler/
- Check the release on maven central: http://central.maven.org/maven2/org/scala-lang/scala-compiler/
- Check the release on maven search (takes longer): http://search.maven.org/#search%7Cga%7C1%7Cg%3Aorg.scala-lang%20v%3A[version]
When everything is on maven central
- Create PR to update
versions.properties
(new file generated by the bootstrap job) and thebaseVersion
inbuild.sbt
- Pre-announce the release on https://contributors.scala-lang.org/c/announcements
- Check that the API docs are published
- On 2.13.0 only: (manually) update the
current
symlink for the API docs
Announcements
- Scala Users discourse https://users.scala-lang.org
- Tweet from @scala_lang
Metadata
Metadata
Assignees
Labels
No labels