Update dependency scala to v2.13.7 #706
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2.13.3
->2.13.7
Release Notes
scala/scala
v2.13.7
Compare Source
The Scala team at Lightbend is pleased to announce the availability of Scala 2.13.7.
Align with Scala 3
import x.{*, given}
under-Xsource:3
(#9724 by @smarter)case
in pattern bindings even without-Xsource:3
(#9721 by @smarter)JDK and Java compatibility
StringConcatFactory
for string concatenation on JDK 9+ (#9556 by @harpocrates)Android compatibility
ClassValueCompat
to support systems withoutjava.lang.ClassValue
(such as Android) (#9752 by @nwk37011)Statics.releaseFence()
also catchNoSuchMethodException
forjava.lang.invoke.VarHandle.releaseFence()
call (#9739 by @nwk37011)Concurrency
Future#{zip,zipWith,traverse,sequence}
by making them fail fast regardless of ordering (#9655 by @lihaoyi)Collections
ArrayBuffer
's iterator fail fast when buffer is mutated (#9258 by @NthPortal)ArrayOps
bugs (by avoidingArraySeq#array
, which does not guarantee element type) (#9641 by @som-snytt)IterableOps.toIterable
(#9774 by @lrytz)Other changes
Some small changes that will ship in 2.12.16 are also included in this release.
For the complete 2.13.7 change lists, see all merged PRs and all closed bugs.
Compatibility
As usual for our minor releases, Scala 2.13.7 is binary-compatible with the whole Scala 2.13 series.
Upgrading from 2.12? Enable
-Xmigration
while upgrading to request migration advice from the compiler.Contributors
A big thank you to everyone who's helped improve Scala by reporting bugs, improving our documentation, spreading kindness in discussions around Scala, and submitting and reviewing pull requests! You are all magnificent.
This release was brought to you by 25 contributors, according to
git shortlog -sn --no-merges @​ ^v2.13.6 ^2.12.x
. Thank you A. P. Marki, Lukas Rytz, Seth Tisue, Jason Zaugg, Jamie Thompson, NthPortal, Georgi Krastev, Guillaume Martres, Dale Wijnand, Martijn Hoekstra, Alec Theriault, Rafał Sumisławski, Matt Dziuban, Li Haoyi, Doug Roper, Sébastien Doeraene, VladKopanev, danicheg, dengziming, megri, nwk37011, Magnolia.K, 梦境迷离, Mathias, James Judd.Thanks to Lightbend for their continued sponsorship of the Scala core team’s efforts. Lightbend offers commercial support for Scala.
Scala 2.13 notes
The release notes for Scala 2.13.0 have important information applicable to the whole 2.13 series.
Obtaining Scala
Scala releases are available through a variety of channels, including (but not limited to):
scalaVersion
setting in your sbt-based projectv2.13.6
Compare Source
The Scala 2 team at Lightbend is pleased to announce the availability of Scala 2.13.6.
Highlights
-Vimplicits
and-Vtype-diffs
flags (#7785)s"\""
ands"$""
(#8830 by @eed3si9n and #9536 by @martijnhoekstra)Other Changes
BigInt
implementation (#9628) by @denisrossetprivate[this]
members in override checking (#9542)_root_
(#9482) by @som-snyttConstantAnnotation
(9336) by @BalmungSan-Xsource:3
(#9602)&
instead ofwith
in types under-Xsource:3
(#9594)-Xsource:3
(#9584)-Xsource:3
(#9582)-Xsource:3
(#9580)?
as wildcard marker under-Xsource:3
(#9560)-Xsource:3
(#9558)+_
and-_
in types as identifiers under-Xsource:3
to support Scala 3.2 placeholder syntax (#9605)Some small changes that will ship in 2.12.14 are also included in this release.
For the complete 2.13.6 change lists, see all merged PRs and all closed bugs.
Compatibility
As usual for our minor releases, Scala 2.13.6 is binary-compatible with the whole Scala 2.13 series.
Upgrading from 2.12? Enable
-Xmigration
while upgrading to request migration advice from the compiler.Contributors
A big thank you to everyone who's helped improve Scala by reporting bugs, improving our documentation, spreading kindness in discussions around Scala, and submitting and reviewing pull requests! You are all magnificent.
This release was brought to you by 25 contributors, according to
git shortlog -sn --no-merges HEAD ^v2.13.5 ^2.12.x
. Thank you A. P. Marki, Lukas Rytz, Dale Wijnand, Jamie Thompson, Seth Tisue, 梦境迷离, Guillaume Martres, Martijn Hoekstra, Denis Rosset, Aaron S. Hawley, Kai, Eugene Yokota, Jason Zaugg, Anatolii Kmetiuk, Ikko Ashimine, superseeker13, Eugene Platonov, Diego E. Alonso Blas, Filipe Regadas, Hatano Yuusuke, Luis Miguel Mejía Suárez, Rafał Sumisławski, Alec Theriault, Tom Grigg, Torsten Schmits.Thanks to Lightbend for their continued sponsorship of the Scala core team’s efforts. Lightbend offers commercial support for Scala.
Scala 2.13 notes
The release notes for Scala 2.13.0 have important information applicable to the whole 2.13 series.
Obtaining Scala
Scala releases are available through a variety of channels, including (but not limited to):
scalaVersion
setting in your sbt-based projectv2.13.5
Compare Source
Scala 2.13.5
The Scala 2 team at Lightbend is pleased to announce the availability of Scala 2.13.5.
Highlights
Other changes
-target
support JVM 13, 14, 15, 16, and 17 (#9489, #9481)@nowarn
annotations from generated code, for forwards compatibility at compile-time (#9491)-Wunused:synthetics
or-Wunused:params
) (#9346) — thank you @som-snytt!ConstantAnnotation
s (#9379)Map
wrappers handle nulls according toput
/remove
contract (#9344) — thank you @som-snytt!Some small changes that will ship in 2.12.14 are also included in this release.
For complete 2.13.5 change lists, see all merged PRs and all closed bugs.
Compatibility
As usual for our minor releases, Scala 2.13.5 is binary-compatible with the whole Scala 2.13 series.
Upgrading from 2.12? Enable
-Xmigration
while upgrading to request migration advice from the compiler.Contributors
A big thank you to everyone who's helped improve Scala by reporting bugs, improving our documentation, spreading kindness in discussions around Scala, and submitting and reviewing pull requests! You are all magnificent.
This release was brought to you by 23 contributors, according to
git shortlog -sn --no-merges HEAD ^v2.13.4 ^2.12.x
. Thank you Seth Tisue, A. P. Marki, Dale Wijnand, NthPortal, Jamie Thompson, Lukas Rytz, Martijn Hoekstra, Georgi Krastev, Jason Zaugg, Jasper Moeys, Sakib Hadziavdic, Anatolii Kmetiuk, Arnaud Gourlay, Marcono1234, Chia-Ping Tsai, Mike Skells, Stefan Zeiger, Waleed Khan, Yann Bolliger, Guillaume Martres, 梦境迷离, Ethan Atkins, Darcy Shen.Thanks to Lightbend for their continued sponsorship of the Scala core team’s efforts. Lightbend offers commercial support for Scala.
Scala 2.13 notes
The release notes for Scala 2.13.0 have important information applicable to the whole 2.13 series.
Obtaining Scala
Scala releases are available through a variety of channels, including (but not limited to):
scalaVersion
setting in your sbt-based projectv2.13.4
Compare Source
Scala 2.13.4:
ExecutionContext
to 2.12 behaviorand more! Details below.
Concurrency
NOTE The following change affects parallelism and performance. If you use
scala.concurrent.ExecutionContext.global
you maywant to adapt your code. (But note that Akka is unaffected, because it uses its own execution contexts.)
In 2.13.0 we made
ExecutionContext.global
"opportunistic". This enabled "batching" of nested tasksto execute on the same thread, avoiding an expensive context switch. That strategy requires
user code to wrap long-running and/or blocking tasks with
blocking { ... }
to maintain parallelexecution.
For 2.13.4, we restore 2.12's default non-batching behavior, which is safer for arbitrary user code. Users wanting
increased performance may override the default, if they believe their code uses
blocking
correctly.We make that choice available via
ExecutionContext.opportunistic
.Using
ExecutionContext.opportunistic
requires a bit of extra boilerplate, made necessary by binarycompatibility constraints on the standard library. Detailed instructions are in
ExecutionContext.global's Scaladoc.
Further detail: #9270/#9296/scala/bug#12089,
Pattern matching
The pattern matcher is now much better at warning you if a match isn't exhaustive.
The following types of matches no longer disable exhaustivity checking:
case <pattern> if <condition> => ...
) #9140unapply
orunapplySeq
) #9140/#9162-Xlint
or-Xlint:strict-unsealed-patmat
#9140/#9299Additionally,
New warnings reported can be resolved by:
if n > 0
andif n <= 0
) by dropping the last guardSome
case x => throw new MatchError(x)
Otherwise, your options for suppressing warnings include:
@unchecked
, such as(foo: @​unchecked) match { ... }
-Xnon-strict-patmat-analysis
-Xlint:-strict-unsealed-patmat
-Wconf
to suppress the warnings globally, with e.g.-Wconf:msg=match may not be exhaustive:i
Scala 3 interop
This release enables the Scala 2 compiler to consume some libraries built in Scala 3. #9109/#9293
The new capability is experimental. To enable it, add
-Ytasty-reader
to your compiler options.Not all Scala 3 built libraries are supported, because not all Scala 3 features can be supported.
The library author must stay within the supported subset.
For more details and caveats see the blog post Forward Compatibility for the Scala 3 Transition.
Standard library changes
CharSequence#isEmpty
method #9292CharSequence
wrappers inPredef
non-implicit.LazyList.cons.apply
lazier #9095MapView#values
preserve laziness #9090ListBuffer
's iterator fail when the buffer is mutated #9174StringOps
methods, despite Unicode concerns #9246Compiler changes
classOf
with object type (e.g.classOf[Foo.type]
) #9279-Yrangepos
) by default #9146Other changes
Some changes that will also ship in 2.12.13 are also included in this release, most notably:
CharSequence#isEmpty
method #9292implicit
was removed fromPredef
's implicit conversions toSeqCharSequence
andArrayCharSequence
.For complete 2.13.4 change lists, see all merged PRs and all closed bugs.
Compatibility
As usual for our minor releases, Scala 2.13.4 is binary-compatible with the whole Scala 2.13 series.
Upgrading from 2.12? Enable
-Xmigration
while upgrading to request migration advice from the compiler.Contributors
A big thank you to everyone who's helped improve Scala by reporting bugs, improving our documentation, spreading kindness in discussions around Scala, and submitting and reviewing pull requests! You are all magnificent.
This release was brought to you by 40 contributors, according to
git shortlog -sn --no-merges HEAD ^v2.13.3 ^2.12.x
. Thank you Jamie Thompson, Dale Wijnand, A. P. Marki, NthPortal, Lukas Rytz, Seth Tisue, Jason Zaugg, Georgi Krastev, Eugene Yokota, Martijn Hoekstra, Trey Cahill, Rado Buransky, Ergys Dona, Mike Skells, Greg Pfeil, Kazuhiro Sera, Mitsuhiro Shibuya, NagaChaitanya Vellanki, Sergei Petunin, Sébastien Doeraene, Takahashi Osamu, Viktor Klang, mwielocha, Nicolas Stucki, Jan Arne Sparka, Philippus Baalman, Glenn Liwanag, Rafał Sumisławski, Renato Cavalcanti, Sergei, nooberfsh, Dmitrii Naumenko, Simão Martins, counter2015, Jian Lan, Liu Fengyun, Kanishka, Julien Richard-Foy, Janek Bogucki, Björn Regnell.Thanks to Lightbend for their continued sponsorship of the Scala core team’s efforts. Lightbend offers commercial support for Scala.
Scala 2.13 notes
The release notes for Scala 2.13.0 have important information applicable to the whole 2.13 series.
Obtaining Scala
Scala releases are available through a variety of channels, including (but not limited to):
scalaVersion
setting in your sbt-based projectConfiguration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled due to failing status checks.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.