Skip to content

Latest commit

 

History

History
42 lines (40 loc) · 2.49 KB

RELEASING.md

File metadata and controls

42 lines (40 loc) · 2.49 KB

Scala.js Release Process

  1. Clean up bugs:
    • Make sure all bugs assigned to the milestone are closed.
    • Make sure all fixed bugs are assigned to the milestone (this query should not return anything).
  2. Create a "Version x.y.z." commit (example) and push it to a branch on your fork.
    1. Ping people on the commit for review.
    2. Once you have LGTM, push to main (do not create a merge commit).
  3. Testing (post results as comments to commit):
  4. If all tests pass, tag the commit with the release version.
  5. Perform manual testing that needs the tagging (source maps).
  6. Publish:
    • Sonatype (./script/publish.sh)
    • Docs to website: Use ~/fetchapis.sh <full sjs version> <binary sjs version> on the webserver once artifacts are on maven central.
  7. Once artifacts are on maven central, create a "Towards x.y.z." commit (example).
    1. Create an "FF ONLY" PR for CI and review.
    2. Once you have LGTM, push the commit (do not click the merge button)
  8. Prepare release announcement, taking the last one as model (example).
  9. When merging the release announcement PR (after proper review):
    • Update the latest/ URLs (use ~/setlatestapi.sh <full sjs version> on webserver)
    • Create a release on the core scala-js repository.
    • Announce on Twitter using the @scala_js account
    • Announce on Gitter
    • Cross-post as an Announcement in Scala Users (example)
    • Send a PR to Scala Steward to "unleash" the release by updating these lines with the next possible version numbers