Skip to content

Latest commit

 

History

History
74 lines (51 loc) · 2.68 KB

RELEASING.md

File metadata and controls

74 lines (51 loc) · 2.68 KB

Releasing

Prerequisites

JDK 8 and JDK 9

Releasing Akka requires running on at least JDK 9, but also having JDK 8 installed. The reason for this is that we want the Akka artifacts to be usable with JRE 8, but also want to compile some classes with JDK9-specific types.

When we stop supporting Scala 2.11 we might be able to update the build towork without having JDK 8 installed, by using the -release option.

MinGW

When releasing from Windows, you need MinGW and a gpg distribution such as Gpg4Win

Git

Make sure you have set core.autocrlf to false in your ~/.gitconfig, otherwise git might convert line endings in some cases.

Whitesource

Make sure you have the Lightbend Whitesource credentials configured in your ~/.sbt/1.0/private-credentials.sbt.

Release steps

  • Check the instructions for project/scripts/release
  • Do a project/scripts/release <version> dry run
  • If all goes well, project/scripts/release --real-run <version>
  • Log into sonatype, 'close' the staging repo.
  • Test the artifacts by adding resolvers += "Staging Repo" at "https://oss.sonatype.org/content/repositories/comtypesafe-xxxx" to a test project
  • If all is well, 'release' the staging repo.

Announcing

  • Prepare milestone on github:

  • go to the Milestones tab

  • move all open issues so that this milestone contains completed work only

  • close that milestone

  • In case of a new major release:

  • update the branch descriptions at CONTRIBUTING.md#branches-summary

  • Create an announcement as a PR against akka/akka.github.com .

    • credits can be generated with scripts/authors.scala v2.3.5 v2.3.6
    • also update the latest variable in _config.yml.
  • Update MiMa.latestPatchOf and PR that change (project/MiMa.scala)

Now wait until all artifacts have been properly propagated. Then:

  • Change the symbolic links from 'current': ssh [email protected] ./update-akka-current-version.sh <x.y.z>

  • Merge the release announcement

  • Tweet about it

  • Post about it on Gitter and Discuss

Update references

Update the versions used in: