Scala-dev: Release 2.12.3

Created on 7 Jul 2017  路  16Comments  路  Source: scala/scala-dev

Milestone: https://github.com/scala/scala/milestone/61

Target date: July 17

Before the release

  • [x] Notify community on https://contributors.scala-lang.org/c/announcements
  • [x] Create next milestone, move the "Merge to 2.13.x" description to it (default for new PRs)
  • [x] Close the milestone
  • [x] Triage scala/bug and scala/scala-dev tickets that target [version]
  • [x] Check PRs assigned to the milestone, also check WIP
  • [x] Check merged PRs for the next milestone in this branch, and assign them to this milestone.
  • [x] Check module versioning
  • [x] Merge in older release branch

Release notes

Actual release

  • [x] Announce start of release process, point to release note PRs for feedback
  • [x] Close the scala/bug milestone, create next, move pending issues
  • [x] Close the scala-dev milestone, create next, move pending issues
  • [x] Double check version.properties, maybe create a PR with updates

Stage the release

Point of no return

  • [x] Push scala/scala tag: git push https://github.com/scala/scala.git v[version]
  • [x] 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 https://github.com/scala/scala/pull/5979
  • [x] Push scala/scala-dist tag: git push https://github.com/scala/scala-dist.git v[version]
  • [x] Promote staging repos: st_stagingRepoPromote [scala-repo], st_stagingRepoPromote [modules-repo]

Check availability

When everything is on maven central

Announcements

Most helpful comment

Pre-announce draft:

2.12.3

Highlights:

2.13.0-M2

The REPL is undergoing renovations and features better positioning of errors and a cleaner internal implementation. multi-line editing and syntax highlighting.

Right associative methods with a by-name parameter no longer eagerly evaluate the operand.

Furthermore, all changes in the 2.12.3 will be part of 2.13.0-M2.

What's next?

We are planning to make 2.13.x the default branch for pull requests after these releases to help us focus our collective attention on working towards 2.13.0. We'll still target some changes to 2.12.x that are high reward and low risk, that fix important regressions.

All 16 comments

Pre-announce draft:

2.12.3

Highlights:

2.13.0-M2

The REPL is undergoing renovations and features better positioning of errors and a cleaner internal implementation. multi-line editing and syntax highlighting.

Right associative methods with a by-name parameter no longer eagerly evaluate the operand.

Furthermore, all changes in the 2.12.3 will be part of 2.13.0-M2.

What's next?

We are planning to make 2.13.x the default branch for pull requests after these releases to help us focus our collective attention on working towards 2.13.0. We'll still target some changes to 2.12.x that are high reward and low risk, that fix important regressions.

Compiler performance has been improved significantly

Omg hype!! Can't wait for the release date. 馃挅

call me hyped. My favorite part is "point of no return". Do I need a bungie cord?

"point of no return" sounds like the next SIP-18 language flag.

The release build for 2.12.3 failed with:

[info] :: delivering :: org.scala-lang#junit;2.12.3 :: 2.12.3 :: release :: Mon Jul 24 08:37:49 UTC 2017
[info]  delivering ivy file to /home/jenkins/workspace/scala-2.12.x-integrate-bootstrap/target/junit/ivy-2.12.3.xml
java.io.IOException: PUT operation to URL https://oss.sonatype.org/service/local/staging/deploy/maven2/org/scala-lang/scala-library-all/2.12.3/scala-library-all-2.12.3.pom failed with status code 504: GATEWAY_TIMEOUT
    at org.apache.ivy.util.url.AbstractURLHandler.validatePutStatusCode(AbstractURLHandler.java:82)
    at org.apache.ivy.util.url.BasicURLHandler.upload(BasicURLHandler.java:264)
    at org.apache.ivy.util.FileUtil.copy(FileUtil.java:150)
    at org.apache.ivy.plugins.repository.url.URLRepository.put(URLRepository.java:84)

In any case, we had one extra PR to add to the release, https://github.com/scala/scala/pull/6004, so we'll need to re-run anyway.

However, the subsequent nightly build failed with: https://github.com/scala/scala-dev/issues/409 which I'll have to look at first.

Optimistically kicking off the release build while I investigate: https://scala-ci.typesafe.com/view/scala-2.12.x/job/scala-2.12.x-release-main/876/console

409 is a latent bug, let the release roll on.

409 hit again on the next attempt (https://scala-ci.typesafe.com/job/scala-2.12.x-integrate-bootstrap/1042/consoleFull)

[info] ! type deconstruction.tuple type (3): Exception raised on property evaluation.
[info] > Exception: java.lang.IllegalArgumentException: requirement failed: Tuples with 3 arity aren't supported

Starting another one... https://scala-ci.typesafe.com/view/scala-2.12.x/job/scala-2.12.x-release-main/878/

Might be prudent to add a workaround for #409, maybe something changed to
make the race condition more likely to trip?

Yeah - at least the build passed now. https://scala-ci.typesafe.com/job/scala-2.12.x-release-main/878/ I'll announce the staging tomorrow (if nobody does it before).

I've announced the staged release.

I have just compiled Zinc with 2.12.3. Everything's good on my end.

For those who'll want to try out the 2.12.3 prerelease, here are the required changes to your sbt builds: https://github.com/scalamacros/paradise/blob/2c7f071ecd1d0e75b678fbdc81fc0e6e80042edf/project/build.scala#L6-L7.

resolvers += Resolver.sonatypeRepo("staging") also works

We've noticed a 23% improvement in the overall sbt codebase: https://github.com/sbt/sbt/pull/3383#event-1183760017.

Are there any results about improvements in the scala/scala codebase? Have you already bumped to 2.12.3?

Have you already bumped to 2.12.3?

yes, scala/scala#6011

Are there any results about improvements in the scala/scala codebase?

http://developer.lightbend.com/blog/2017-06-12-faster-scala-compiler/ has that number (0.85x)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

lrytz picture lrytz  路  7Comments

adriaanm picture adriaanm  路  5Comments

adriaanm picture adriaanm  路  6Comments

lrytz picture lrytz  路  4Comments

adriaanm picture adriaanm  路  7Comments