We are very happy to announce the final release of Scala 2.10.3!
The release is available for download from scala-lang.org or from Maven Central.
The Scala team and contributors fixed 50 issues since 2.10.2!
In total, 63 RC1 pull requests, 19 RC2 pull requests and 2 RC3 pull requests were opened on GitHub of which 72 were merged after having been tested and reviewed.
Known Issues
Before reporting a bug, please have a look at these known issues.
Scala IDE for Eclipse
The Scala IDE with this release built right in is available through the following update-site:
- for Eclipse 4.2/4.3 (Juno/Kepler)
Have a look at the getting started guide for more info.
New features in the 2.10 series
Since 2.10.3 is strictly a bug-fix release, here’s an overview of the most prominent new features and improvements as introduced in 2.10.0:
-
Value Classes
-
A class may now extend
AnyValto make it behave like a struct type (restrictions apply). -
https://docs.scala-lang.org/overviews/core/value-classes.html
-
-
Implicit Classes
-
The implicit modifier now also applies to class definitions to reduce the boilerplate of implicit wrappers.
-
-
String Interpolation
-
val what = "awesome"; println(s"string interpolation is ${what.toUpperCase}!") -
https://docs.scala-lang.org/overviews/core/string-interpolation.html
-
-
Futures and Promises
-
Asynchronously get some JSON:
for (req <- WS.url(restApiUrl).get()) yield (req.json \ "users").as[List[User]](uses play!)
-
-
Dynamic and applyDynamic
-
x.foobecomesx.applyDynamic("foo")ifx’s type does not define afoo, but is a subtype ofDynamic
-
-
Dependent method types:
def identity(x: AnyRef): x.type = x// the return type says we return exactly what we got
-
New ByteCode emitter based on ASM
-
Can target JDK 1.5, 1.6 and 1.7
-
Emits 1.6 bytecode by default
-
Old 1.5 backend is deprecated
-
-
A new Pattern Matcher
-
rewritten from scratch to generate more robust code (no more exponential blow-up!)
-
code generation and analyses are now independent (the latter can be turned off with
-Xno-patmat-analysis)
-
-
Scaladoc Improvements
-
Implicits (-implicits flag)
-
Diagrams (-diagrams flag, requires graphviz)
-
Groups (-groups)
-
-
Modularized Language features
-
Get on top of the advanced Scala features used in your codebase by explicitly importing them.
-
https://docs.scala-lang.org/sips/modularizing-language-features.html
-
-
Parallel Collections are now configurable with custom thread pools
-
Akka Actors now part of the distribution
- scala.actors have been deprecated and the akka implementation is now included in the distribution.
-
Performance Improvements
-
Faster inliner
-
Range#sumis now O(1) -
Update of ForkJoin library
-
Fixes in immutable
TreeSet/TreeMap -
Improvements to PartialFunctions
-
- Addition of
???andNotImplementedError - Addition of
IsTraversableOnce+IsTraversableLiketype classes for extension methods -
Deprecations and cleanup
-
Floating point and octal literal syntax deprecation
-
Removed scala.dbc
-
Experimental features
-
Scala Reflection
-
Macros
The API is subject to (possibly major) changes in the 2.11.x series, but don’t let that stop you from experimenting with them! A lot of developers have already come up with very cool applications for them. Some examples can be seen at http://scalamacros.org/news/2012/11/05/status-update.html.
A big thank you to all the contributors!
| # | Author |
|---|---|
| 33 | |
| 12 | |
| 6 | |
| 4 | |
| 4 | |
| 4 | |
| 4 | |
| 3 | |
| 3 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |
Commits and the issues they fixed since v2.10.2
| Issue(s) | Commit | Message |
|---|---|---|
| SI-7862 | 8e11dcb | |
| SI-7861 | 7f4b44b | |
| SI-7398 | a1796aa | |
| SI-7825 | bf0f9da | |
| SI-7818 | cb028ba | |
| SI-7767 | 2391887 | |
| SI-7767 | 48283ca | |
| SI-7269 | fe9a3e9 | |
| SI-7814 | a19babc | |
| SI-7814 | fb43ec8 | |
| SI-7652 | 7804cec | |
| SI-7652 | 8b10daf | |
| SI-7149 | 989c3f8 | |
| SI-7150 | 3ada703 | |
| SI-7782 | bce786f | |
| SI-4760 | 27d61a2 | |
| SI-7790 | cb9f2b9 | |
| SI-7775 | 9d5ed33 | |
| SI-7779 | 5dbc37d | |
| SI-7486 | bc6d4b5 | |
| SI-7778, SI-942 | ed34bcb | |
| SI-7756, SI-7694, SI-7716 | 42e0f73 | |
| SI-7603 | 076a92b | |
| SI-7603 | ab8a223 | |
| SI-7752 | 3222add | |
| SI-7014 | f91242c | |
| SI-7694 | e65321c | |
| SI-7694 | 5724cae | |
| SI-7020 | ebb01e0 | |
| SI-7733 | 1d28fe6 | |
| SI-7331 | 36524c2 | |
| SI-4907, SI-4615 | cd41987 | |
| SI-7455 | 050b4c9 | |
| SI-7636 | c4bf1d5 | |
| SI-7687 | 2473e66 | |
| SI-7569 | c34b048 | |
| SI-7657 | ef979c0 | |
| SI-7336 | 48c677c | |
| SI-7265 | 06606e8 | |
| SI-7649 | 6368ae7 | |
| SI-7617 | e72ae70 | |
| SI-7638 | 504b5f3 | |
| SI-7603, SI-7603 | eebaae5 | |
| SI-7579, SI-7344 | 2285493 | |
| SI-7571 | e7ac254 | |
| SI-7343 | c43b504 | |
| SI-7498 | c71fa58 | |
| SI-7214, SI-7505 | d5288f8 | |
| SI-6841 | 608f577 | |
| SI-7558 | dd5fa60 | |
| SI-7556 | 28c5f73 | |
| SI-7507 | d2faeb9 | |
| SI-7375 | 4dc3a33 | |
| SI-6138 | b941551 | |
| SI-7236, SI-7237, SI-7391 | f92ef91 | |
| SI-7473 | 5b54681 | |
| SI-7421 | e18e48d | |
| SI-7497 | d38e8ae |
Complete commit list!
| sha | Title |
|---|---|
| 8e11dcb | |
| 7f4b44b | |
| cb4b8eb | |
| bf93057 | |
| a1796aa | |
| bf0f9da | |
| cb028ba | |
| 2391887 | |
| 48283ca | |
| fe9a3e9 | |
| a19babc | |
| fb43ec8 | |
| 7804cec | |
| 8b10daf | |
| 9772ec8 | |
| a78dddd | |
| 989c3f8 | |
| 3ada703 | |
| bce786f | |
| 27d61a2 | |
| cb9f2b9 | |
| 133b5c0 | |
| 9d5ed33 | |
| 5dbc37d | |
| bc6d4b5 | |
| ed34bcb | |
| 42e0f73 | |
| 076a92b | |
| ab8a223 | |
| 75b44a6 | |
| 3222add | |
| f91242c | |
| e65321c | |
| 5724cae | |
| ebb01e0 | |
| 1d28fe6 | |
| 1dac5ef | |
| 26a8679 | |
| 5626c74 | |
| 36524c2 | |
| cd41987 | |
| 2864c7f | |
| 79009e3 | |
| 050b4c9 | |
| c4bf1d5 | |
| 2473e66 | |
| c34b048 | |
| ef979c0 | |
| 48c677c | |
| 06606e8 | |
| 6368ae7 | |
| d09a46b | |
| e72ae70 | |
| 55decf7 | |
| 504b5f3 | |
| eebaae5 | |
| 0c752d7 | |
| 2285493 | |
| e7ac254 | |
| d2c5324 | |
| da54f34 | |
| c43b504 | |
| c0ba5eb | |
| da1ae7a | |
| 3494397 | |
| 25a8e70 | |
| c71fa58 | |
| d5288f8 | |
| ac4e3ca | |
| fc6da8d | |
| 608f577 | |
| dd5fa60 | |
| 28c5f73 | |
| d2faeb9 | |
| 4dc3a33 | |
| b941551 | |
| f92ef91 | |
| 5b54681 | |
| bae4196 | |
| e18e48d | |
| d38e8ae | |
| b89dc03 | |
| 658d90a | |
| 73d494d |