Scala 2.11.0-M7 is now available!

The seventh development milestone of Scala 2.11 is now available for download!

It brings the following goodness:

  • delambdafication (compiling closures Java 8-style, as close as you can get on Java 6) by @jamesiry
  • blackbox/whitebox macro distinction by @xeno-by,
  • collection deprecation and mutable LongMap/AnyRefMap by @ichoran,
  • several IDE improvements by @dotta (positions for default args, docs on how to hack the compiler in the IDE) and @skyluc (completion for imports)
  • for loop support in quasiquotes by @densh
  • Experimental Single Abstract Method support

Full details can be found on GitHub.

We’re working on an overview of the Scala 2.11 releasePRs welcome!

Known issues

Scala compiler artifact (due to scaladoc) depends on the previous version (2.11.0-M6) of scala-xml and scala-parser-combinators modules. If you depend on scala-compiler (e.g., because you’re developing a macro), you should take care to exclude these _2.11.0-M6 dependencies, and provide the _2.11.0-M7 ones instead. This will be fixed in M8, which will be released before the end of the year.

def excludeM6Modules(m: ModuleID) = (m
  exclude("org.scala-lang.modules", "scala-parser-combinators_2.11.0-M6")
  exclude("org.scala-lang.modules", "scala-xml_2.11.0-M6")
)

// include these settings in your project:
libraryDependencies += excludeM6Modules("org.scala-lang" % "scala-compiler" % scalaVersion.value),
libraryDependencies += "org.scala-lang.modules" %% "scala-xml" % "1.0.0-RC7",
libraryDependencies += "org.scala-lang.modules" %% "scala-parser-combinators" % "1.0.0-RC5",

Regressions

We’d love to hear about any regressions since 2.10.3 or 2.11.0-M6. Before doing so, please search for existing bugs and/or consult with the scala-user mailing list to be sure it is a genuine problem.

When reporting a bug, please set the ‘Affects Version’ field to 2.11.0-M7 and add the regression label where appropriate.

Scala IDE Lithium (4.0) for Eclipse

Please point your Eclipse 4.2/4.3 at http://download.scala-ide.org/sdk/e38/scala211/dev/site/ to update to the latest version that includes this milestone! For more info, please see the getting started guide.

Binary compatibility

Note that this release is not binary compatible with the 2.10.x series, so you will need to obtain a fresh build of your dependencies against this version.