Scala 2.10.2-RC1 is now available!

Thursday 23 May 2013

ANNOUNCEMENT

We are very happy to announce the RC1 release of Scala 2.10.2! If no serious blocking issues are found this will become the final 2.10.2 version.

The Scala team and contributors fixed 89 issues since 2.10.1!

In total, 164 RC1 pull requests were opened on GitHub, of which 134 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 Scala 2.10.2-RC1 built right in is available through one of the following update-sites:

  • for Eclipse 3.7 (Indigo)
  • for Eclipse 3.8/4.2 (Juno) (Support for this version is experimental.)

Have a look at the getting started guide for more info.

New features in the 2.10 series

Since 2.10.2 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

  • Implicit Classes

  • String Interpolation

  • Futures and Promises

  • Dynamic and applyDynamic

  • 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

  • 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#sum is now O(1)

    • Update of ForkJoin library

    • Fixes in immutable TreeSet/TreeMap

    • Improvements to PartialFunctions

  • Addition of ??? and NotImplementedError
  • Addition of IsTraversableOnce + IsTraversableLike type classes for extension methods
  • Deprecations and cleanup

    • Floating point and octal literal syntax deprecation

    • Removed scala.dbc

Experimental features

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
46 Jason Zaugg
45 Adriaan Moors
45 Eugene Burmako
15 Paul Phillips
12 Eugene Vigdorchik
6 Kato Kazuyoshi
4 Heather Miller
3 Paolo Giarrusso
2 James Iry
2 Uladzimir Abramchuk
2 Grzegorz Kossakowski
2 Vinicius Miana
2 Simon Ochsenreither
1 Som Snytt
1 Szabolcs Berecz
1 Eugene Platonov
1 Lukas Rytz
1 Bjorn Regnell
1 Iulian Dragos
1 François Garillot
1 Martin McNulty
1 Gyuhang Shim
1 Igor Moreno
1 Viktor Klang
1 Hubert Plociniczak
1 Philipp Haller
1 Nada Amin
1 Dan Rosen