Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 2.13.2 #665

Closed
59 tasks done
SethTisue opened this issue Jan 31, 2020 · 13 comments
Closed
59 tasks done

Release 2.13.2 #665

SethTisue opened this issue Jan 31, 2020 · 13 comments
Assignees
Milestone

Comments

@SethTisue
Copy link
Member

SethTisue commented Jan 31, 2020

release lead: @SethTisue

SCALA_VER_BASE="2.13.2"
SCALA_VER_SUFFIX=""
SCALA_SHA=706ef1b291134a5e5bce2275df2c222261f73451
DIST_SHA=????????????????????????????????????????
SCALA_VER="$SCALA_VER_BASE$SCALA_VER_SUFFIX"

Key links:

N weeks before the release

  • Wind down PR queue. There has to be enough time after the last (non-trivial) PR is merged and the next phase. The core of the eco-system needs time to prepare for the final!
  • Triage scala/bug and scala/scala-dev tickets
  • Create next scala/scala milestone, move the magical "Merge to 2.13.x" description to it (so Scabot uses it as default for new PRs)
  • Close the scala/bug milestone, create next milestone, move pending issues
  • Close the scala/scala-dev milestone, create next milestone, move pending issues
  • Check PRs assigned to the milestone, also check WIP
  • Announce expected release date and current nightly "release candidate" (nightly sha-mangled version) at https://scala-ci.typesafe.com/artifactory/scala-integration/ on https://contributors.scala-lang.org/c/announcements

Release announcement / notes

N days before release

  • Announce no more PRs will be merged unless last-minute regressions are found. Re-iterate current nightly sha version for testing.
  • Community build
  • Run scala-collections-laws and evaluate results
    • Rex Kerr (@Ichoran) is the keeper and expert on this
  • Windows Jenkins job
  • Check any merged PRs accidentally assigned to the next milestone in this branch, and re-assign them to this milestone
  • Merge in any older release branch
  • Check module versioning (is everything in versions.properties up to date?)
  • On major release, bump PickleFormat version

Point of no return

Check availability

When everything is on maven central

Modules

Announcements

Afterwards

@SethTisue SethTisue added this to the 2.13.2 milestone Jan 31, 2020
@SethTisue SethTisue self-assigned this Jan 31, 2020
@ijuma
Copy link

ijuma commented Apr 21, 2020

Do we have a rough ETA for 2.13.2?

@SethTisue
Copy link
Member Author

SethTisue commented Apr 21, 2020

@ijuma I hope to build tomorrow. only a few JLine tweaks have yet to land; I expect to finish those up today

@ijuma
Copy link

ijuma commented Apr 21, 2020

Awesome, thanks!

@SethTisue
Copy link
Member Author

2.13.2-bin-7d29ccc is the release candidate. If all goes well 2.13.2 itself will hit Maven Central later today

@h-vetinari
Copy link

2.13.2-bin-7d29ccc is the release candidate. If all goes well 2.13.2 itself will hit Maven Central later today

Seeing that scala/scala@7d29ccc was created 2h ago, that's a tremendously short window for a release candidate (I was, for example, hoping the spark folks would test a release candidate once it became available, with enough time to provide feedback). Why bother at all with rc's if it's <24h?

@SethTisue
Copy link
Member Author

SethTisue commented Apr 22, 2020

@h-vetinari Good question! I think I can explain.

Spark doesn't support 2.13 yet, except on a development branch, so until that upgrade work is farther along, I see no reason for a 2.13.x release to block waiting on Spark specifically.

Nonetheless, we welcome feedback from Spark folks at any point — the earlier the better! Note that one of the major changes in 2.13.2, scala/scala#8748, involves aligning the REPL with Spark's needs.

Also, we've already publicized several release candidates at https://contributors.scala-lang.org/t/coming-soon-scala-2-12-11-scala-2-13-2/4003/31 , the current one is merely the latest. Very little has changed in the last 4 weeks, and most of what has changed in these final weeks is in the UI code for the REPL, or in other minor features that don't affect the viability of a release.

Finally, note that the 7-month delay between 2.13.1 and 2.13.2 is an extreme outlier. 2.13.3 is likely to follow in 2–3 months, or even sooner if notable regressions turn up.

@h-vetinari
Copy link

Well, who am I to say. Just from my POV: I was waiting for the REPL work to finish, and to see an actual tagged rc under releases. Then I would have reached out to the spark people if that fixes the issues that blocked them from upgrading to 2.13, and figure out what if anything is missing before having them blocked another ~6 months.

The spark ecosystem is lagging extremely in terms of scala versions (for example, the entire cloudera stack up until the most recent version is still on scala 2.11, because spark 3.0 hasn't been released yet, much less made it into a CDH/CDP release). This creates quite an extreme stretch for some libraries in terms of widely used scala versions needing support. It's 10 months since the release of 2.13, and if there are any blockers still left in 2.13.2 as currently planned from the spark side of things, that gap will only continue to widen.

Anyway, just my 2 cents.

@smarter
Copy link
Member

smarter commented Apr 22, 2020

@h-vetinari There was a single issue that was known to be blocking Spark from using Scala 2.13.1: scala/bug#11840. I quickly fixed it as soon as I heard about it, and I left a comment giving detailed instructions on how to test a version of Scala with the fix: scala/bug#11840 (comment), since then, there hasn't been any feedback from Spark, so I don't really see what else you were expecting.

@SethTisue
Copy link
Member Author

draft release notes, feedback welcome: https://gist.github.com/SethTisue/16a53b061754dd0f0073193263b6ba2b

@ijuma
Copy link

ijuma commented Apr 22, 2020

Then I would have reached out to the spark people if that fixes the issues that blocked them from upgrading to 2.13, and figure out what if anything is missing before having them blocked another ~6 months.

@SethTisue clarified in his message that 2.13.3 is likely to follow in 2-3 months. Given that Spark 3.0.0 RC1 is in progress[1], I don't think Scala 2.13 support will be available until Spark 3.1.0 in the best case.

[1] http://apache-spark-developers-list.1001551.n3.nabble.com/VOTE-Apache-Spark-3-0-0-RC1-td29151.html

@smarter
Copy link
Member

smarter commented Apr 22, 2020

Yes, in fact https://issues.apache.org/jira/browse/SPARK-25075 has been listing 3.1 as target version since November.

@SethTisue
Copy link
Member Author

JARs are on Maven Central, websites are updated, tweet is tweeted

@h-vetinari
Copy link

@smarter: [...] there hasn't been any feedback from Spark, so I don't really see what else you were expecting.

Considering that the spark issue for 2.13 REPL changes hasn't yet seen much action, and considering that the JLine changes came in shortly before the release, there's a non-negligible probability for another blocker, and verifying this would have IMO been beneficial. I had asked about this three weeks ago, and was then planning to ping the spark people once there was a release candidate (not realising that there would be no such tagged release candidate).

But ok, no use over-analysing this further. Let's see how things go.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants