Skip to content

Release 2.12.7 #558

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

Closed
45 tasks done
adriaanm opened this issue Sep 18, 2018 · 21 comments
Closed
45 tasks done

Release 2.12.7 #558

adriaanm opened this issue Sep 18, 2018 · 21 comments
Assignees

Comments

@adriaanm
Copy link
Contributor

adriaanm commented Sep 18, 2018

Variables expanded in template:

  • SCALA_VER_BASE="2.12.7"
  • SCALA_VER_SUFFIX=""
  • SCALA_SHA=d96b8eb48e83d400c03663a05b66ec218ead9c14
  • DIST_SHA=11da0884a4af4520c8704499c95bce10b731eafa
  • SCALA_VER="2.12.7"

Key links:

Before the release

Stage the release

Release notes

  • Review merged PRs, make sure release-notes label is applied appropriately
  • 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)
    • note that GitHub release notes drafts can only be viewed by committers, so use a gist to draft the notes, so the gist can be shared with the community
  • On contributors thread, link to release note gist and request feedback
  • Prepare PR to https://github.com/scala/scala-lang/ (using scala/make-release-notes)

Point of no return

  • tags are forever, so are maven artifacts and S3 uploads (S3 buckets can be changed, but it can takes days to become consistent)
  • Push scala/scala tag: git push https://github.com/scala/scala.git v2.12.7
  • Add release notes to https://github.com/scala/scala/releases/tag/v2.12.7
  • Push scala/scala-dist tag: git push https://github.com/scala/scala-dist.git v2.12.7
  • Trigger two scala-dist jobs on travis (https://travis-ci.org/scala/scala-dist) with custom config. must use full-length SHAs!
  • Promote staging repos: for r in orgscala-lang-1616 orgscala-lang-1617 orgscala-lang-1618 orgscala-lang-1619 orgscala-lang-1620 orgscala-lang-1621 orgscala-lang-1622 orgscala-lang-1623; do st_stagingRepoPromote $r; done (or use oss.sonatype.org web UI)

Check availability

When everything is on maven central

Modules

  • publish macro-paradise

Announcements

Afterwards

@adriaanm adriaanm self-assigned this Sep 18, 2018
@adriaanm
Copy link
Contributor Author

adriaanm commented Sep 18, 2018

Current "nightly" that corresponds to proposed sha for release: "2.12.7-bin-f2129b9". You can download that distro here: http://downloads.lightbend.com/scala/2.12.7-bin-f2129b9/scala-2.12.7-bin-f2129b9.zip

@plokhotnyuk
Copy link

Was it tested with JDK 11 RC that will be released in a week? http://www.java-countdown.xyz/

@adriaanm
Copy link
Contributor Author

We have limited automated testing on Java 10 (will bump this to 11 once it's out), and some manual validation on Java 11. Note that we only officially support Java 8.

@adriaanm
Copy link
Contributor Author

I've created a kind of umbrella Java 11 ticket that you can vote on / provide more feedback: #559

@adriaanm
Copy link
Contributor Author

We've decided to merge two more small PRs beyond f2129b9. scala/scala#7227 and scala/scala#7240

@adriaanm
Copy link
Contributor Author

These are now merged, and we're committed to 727964b97adda4da14cfa87e3ab770f93809e727 as the final sha for 2.12.7. Available as nightly "2.12.7-bin-727964b"

@adriaanm
Copy link
Contributor Author

@adriaanm
Copy link
Contributor Author

Also staged macro paradise 2.1.0 and 2.1.1 (identical)

@sjrd
Copy link
Member

sjrd commented Sep 21, 2018

Scala.js 0.6.25 staged as well.

Unfortunately I cannot compile Scala.js 1.0.0-M5 for 2.12.7 due to a subtle change in the compiler API for which the fix on our side wasn't yet available in 1.0.0-M5. It will be available in Scala.js 1.0.0-M6, which we hope to release in a few weeks. (1.0.0-M6 will also support Scala 2.13.0-M5.)

@plokhotnyuk
Copy link

Great work!

Compilation time decreased on ~10% for jsoniter-scala after switching to 2.12.7:
plokhotnyuk/jsoniter-scala@2b3b39c

Also, now it can be successfully compiled using JDK 11!

@adriaanm
Copy link
Contributor Author

Thanks, good to hear! @retronym is behind most of the compile time reduction :-)

@adriaanm
Copy link
Contributor Author

We're investigating a regression in three community build projects (eff,scala-debugger,scribe) since 2.12.6 (https://scala-ci.typesafe.com/view/scala-2.12.x/job/scala-2.12.x-integrate-community-build/3550/console) -- 2.12.7 build: https://scala-ci.typesafe.com/view/scala-2.12.x/job/scala-2.12.x-integrate-community-build/3547/ (note that pcplod fails on both, so must be upstream issue)

@adriaanm
Copy link
Contributor Author

scala/scala#7147 (comment) could explain some of them. Transcript:

[eff] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/eff-75b7286f9b1298d2e68cdf27ff1ce0b8e8a5f0c7/scalaz/src/test/scala/org/atnos/eff/addon/scalaz/concurrent/TaskEffectSpec.scala:57:65: type mismatch;
[eff] [error]  found   : => Int(30)
[eff] [error]  required: org.specs2.matcher.Expectable[?]
[eff] [error] Note that implicit conversions are not applicable because they are ambiguous:
[eff] [error]  both method thisValue in trait ShouldExpectations of type [T](t: => T)org.specs2.matcher.ShouldExpectable[T]
[eff] [error]  and method theValue in trait MustExpectations1 of type [T](t: => T)org.specs2.matcher.MustExpectable[T]
[eff] [error]  are possible conversion functions from => Int(30) to org.specs2.matcher.Expectable[?]
[eff] [error]       action[S].runOption.runSequential must returnValue(beSome(30))
[eff] [error]                                                                 ^
[eff] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/eff-75b7286f9b1298d2e68cdf27ff1ce0b8e8a5f0c7/scalaz/src/test/scala/org/atnos/eff/addon/scalaz/concurrent/TaskEffectSpec.scala:68:84: type mismatch;
[eff] [error]  found   : => Throwable
[eff] [error]  required: org.specs2.matcher.Expectable[?]
[eff] [error] Note that implicit conversions are not applicable because they are ambiguous:
[eff] [error]  both method thisValue in trait ShouldExpectations of type [T](t: => T)org.specs2.matcher.ShouldExpectable[T]
[eff] [error]  and method theValue in trait MustExpectations1 of type [T](t: => T)org.specs2.matcher.MustExpectable[T]
[eff] [error]  are possible conversion functions from => Throwable to org.specs2.matcher.Expectable[?]
[eff] [error]       action[S].taskAttempt.runOption.runSequential must returnValue(beSome(beLeft(boomException)))
[eff] [error]                                                                                    ^
[eff] [error] two errors found
[eff] [error] (scalaz / Test / compileIncremental) Compilation failed

[scala-debugger] ** COMMUNITY BUILD LINE COUNT: 52818
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/debuggers/ListeningDebuggerSpec.scala:113: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*)
[scala-debugger] [error]                                           ^
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/debuggers/ListeningDebuggerSpec.scala:151: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*)
[scala-debugger] [error]                                           ^
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/debuggers/ListeningDebuggerSpec.scala:180: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*)
[scala-debugger] [error]                                           ^
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/debuggers/ListeningDebuggerSpec.scala:205: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*)
[scala-debugger] [error]                                           ^
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/debuggers/ListeningDebuggerSpec.scala:245: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,ListeningDebuggerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*)
[scala-debugger] [error]                                           ^
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/lowlevel/events/StandardEventManagerSpec.scala:51: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*).once()
[scala-debugger] [error]                                           ^
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/lowlevel/events/StandardEventManagerSpec.scala:63: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*).once()
[scala-debugger] [error]                                           ^
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/lowlevel/events/StandardEventManagerSpec.scala:73: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*).once()
[scala-debugger] [error]                                           ^
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/lowlevel/events/StandardEventManagerSpec.scala:81: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*).once()
[scala-debugger] [error]                                           ^
[scala-debugger] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.14/project-builds/scala-debugger-9120eac35a6a4c1b1fead3915b9a4aa36b314492/scala-debugger-api/src/test/scala/org/scaladebugger/api/lowlevel/events/StandardEventManagerSpec.scala:102: overloaded method value expects with alternatives:
[scala-debugger] [error]   (matcher: org.scalamock.function.FunctionAdapter1[=> Any,Boolean])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId] <and>
[scala-debugger] [error]   (v1: org.scalamock.matchers.MockParameter[=> Any])org.scalamock.handlers.CallHandler1[=> Any,StandardEventManagerSpec.this.mockLoopingTaskRunner.TaskId]
[scala-debugger] [error]  cannot be applied to (org.scalamock.matchers.MatchAny)
[scala-debugger] [error]         (mockLoopingTaskRunner.addTask _).expects(*).returning(taskId).once()
[scala-debugger] [error]                                           ^
[scala-debugger] [error] 10 errors found
[scala-debugger] [error] (scalaDebuggerApi/test:compileIncremental) Compilation failed

[scribe] [info] - should verify only three log files exist *** FAILED ***
[scribe] [info]   false was not true (FileLoggingSpec.scala:191)
[scribe] [info] - should tear down
[scribe] [info] ScalaTest
[scribe] [info] Run completed in 12 seconds, 767 milliseconds.
[scribe] [info] Total number of tests run: 58
[scribe] [info] Suites: completed 6, aborted 0
[scribe] [info] Tests: succeeded 57, failed 1, canceled 0, ignored 0, pending 0
[scribe] [info] *** 1 TEST FAILED ***
[scribe] [error] Failed: Total 58, Failed 1, Errors 0, Passed 57
[scribe] [error] Failed tests:
[scribe] [error]    spec.FileLoggingSpec
[scribe] [error] (coreJVM / Test / test) sbt.TestsFailedException: Tests unsuccessful

@adriaanm
Copy link
Contributor Author

Looks like scribe was transient -- cannot repro locally.

@adriaanm
Copy link
Contributor Author

I identified the regression. Will retract the staged release and rebuild after fixes are merged.

@adriaanm
Copy link
Contributor Author

I've confirmed (locally) that the regressions are resolved by scala/scala#7261

@adriaanm
Copy link
Contributor Author

Ok, the scope of the reversion has been reduced thanks to @milessabin, and we also added a fix for a hashcode regression (scala/bug#11171).

The new RC sha is d96b8eb.

@SethTisue
Copy link
Member

SethTisue commented Sep 27, 2018

results from https://scala-ci.typesafe.com/view/scala-2.12.x/job/scala-2.12.x-integrate-community-build/3563/ are:

  • 176 green projects out of 189 total
  • eff, scala-debugger, and scribe are green again now
  • failed: pcplod, scalatest-tests, akka-more
    • the pcplod failure occurs on 2.12.6 as well, not worried about that one, but it does take out a few downstream projects
    • scalatest-tests is a leaf project known to be prone to intermittent failure
    • akka-more is known to be prone to intermittent failure as well; some downstream projects are taken out

the followup run is https://scala-ci.typesafe.com/view/scala-2.12.x/job/scala-2.12.x-integrate-community-build/3566/ but it was torpedoed by scala/community-build#797

I've triggered another full run at https://scala-ci.typesafe.com/view/scala-2.12.x/job/scala-2.12.x-integrate-community-build/3567/ , but it'll take 15 hours and might not even do as well as 3563 did, who knows

but I actually think the results from 3563 are good enough that we should go ahead and release.

@adriaanm
Copy link
Contributor Author

Ok, the 🚊 is back on the 🛤

@adriaanm
Copy link
Contributor Author

And we're up on maven and scala-lang.org

@sjrd
Copy link
Member

sjrd commented Sep 27, 2018

Scala.js 0.6.25 for Scala 2.12.7 on its way to Maven Central.

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