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.
Scala compiler artifact (due to scaladoc) depends on the previous version (2.11.0-M6) of
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",
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.
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.