Scala 2.9.3 is now available!

We are happy to announce the final release of 2.9.3 in the Scala 2.9.x maintenance series!

This release includes the following improvements:

  • a backport of the implementation of SIP-14 to Scala 2.9,
  • numerous fixes that are leveraged by the Scala IDE to improve stability and responsiveness,
  • compiler fixes to allow faster incremental compilation.

Scala IDE for Eclipse

You may install the Scala IDE 3.0-RC1 for Scala 2.9.3 through one of the following update-sites:

A big thank you to all the contributors!

# | Author ---: | --- 15 | Philipp Haller 7 | Adriaan Moors 7 | Martin Odersky 6 | Iulian Dragos 5 | Paolo Giarrusso 4 | James Iry 3 | Paul Phillips 3 | Josh Suereth 1 | David Hall 1 | Lukas Rytz 1 | Mirco Dotta 1 | Viktor Klang 1 | Miguel Garcia 1 | Nada Amin 1 | smessmer

Commits and the issues they fixed since v2.9.2

Issue(s) | Commit | Message --- | --- | --- https://issues.scala-lang.org/browse/SI-6932 | https://github.com/scala/scala/commit/4897063 | SI-6932 Remove Batchable trait, minor clean-ups, update build https://issues.scala-lang.org/browse/SI-6932 | https://github.com/scala/scala/commit/5713c1b | Fix SI-6932 by enabling linearization of callback execution for the internal execution context of Future https://issues.scala-lang.org/browse/SI-6766 | https://github.com/scala/scala/commit/0bde246 | SI-6766 Create a continuations project in eclipse https://issues.scala-lang.org/browse/SI-6766 | https://github.com/scala/scala/commit/a802ba9 | SI-6766 Makes the -Pcontinuations:enable flag a project specific preference https://issues.scala-lang.org/browse/SI-6536 | https://github.com/scala/scala/commit/af03afb | SI-6536 Cleanup code around determining accessor requirement https://issues.scala-lang.org/browse/SI-6536 | https://github.com/scala/scala/commit/2124b9d | SI-6536 Generates super accessors X.super[Y].blah when Y is a class https://issues.scala-lang.org/browse/SI-5958, https://issues.scala-lang.org/browse/SI-5958 | https://github.com/scala/scala/commit/61862d2 | SIP-14 backport to 2.9.x https://issues.scala-lang.org/browse/SI-6188, https://issues.scala-lang.org/browse/SI-6188 | https://github.com/scala/scala/commit/32782cd | SI-6188 backport (ICodeReader wrongly ignored exception handlers) https://issues.scala-lang.org/browse/SI-5958 | https://github.com/scala/scala/commit/98b16a6 | SI-5958 This deserves a stable type - backport to 2.9.x https://issues.scala-lang.org/browse/SI-6692, https://issues.scala-lang.org/browse/SI-6692 | https://github.com/scala/scala/commit/c17b9b4 | SI-6692 pickle one more flag bit: EXISTENTIAL https://issues.scala-lang.org/browse/SI-5314 | https://github.com/scala/scala/commit/2c00346 | SI-5314 - CPS transform of return statement fails https://issues.scala-lang.org/browse/SI-6384 | https://github.com/scala/scala/commit/1b4af44 | SI-6384 - avoid setting owner of function argument explicitly https://issues.scala-lang.org/browse/SI-6384 | https://github.com/scala/scala/commit/3281830 | SI-6384 - correct owner of function argument https://issues.scala-lang.org/browse/SI-6384 | https://github.com/scala/scala/commit/b3d0a64 | SI-6384 - avoid crash due to optimization in 2.10 CPS plugin https://issues.scala-lang.org/browse/SI-6458 | https://github.com/scala/scala/commit/340e28a | Deprecated instrumentation API https://issues.scala-lang.org/browse/SI-6505 | https://github.com/scala/scala/commit/e90fd5d | Fixed SI-6505. Respond to ask calls by immediate failure even after compiler shutdown. https://issues.scala-lang.org/browse/SI-2296, https://issues.scala-lang.org/browse/SI-6245, https://issues.scala-lang.org/browse/SI-2296 | https://github.com/scala/scala/commit/f6a2714 | Fix for SI-6245 with workaround for SI-2296. https://issues.scala-lang.org/browse/SI-2296, https://issues.scala-lang.org/browse/SI-2296 | https://github.com/scala/scala/commit/de82f9a | Overcame trait/protected/java limitation. https://issues.scala-lang.org/browse/SI-5708 | https://github.com/scala/scala/commit/39d8e5a | Fix SI-5708. (manually) Cherry-picked from 9d1bc68b78a76a18777a859816bcb1c7f81bf2dd https://issues.scala-lang.org/browse/SI-4807 | https://github.com/scala/scala/commit/8e7f44c | Helping Proxy equal itself. https://issues.scala-lang.org/browse/SI-5632 | https://github.com/scala/scala/commit/95f0de0 | Fixes SI-5632 (serialization of large HashTables)

Complete commit list!

sha | Title ---: | --- https://github.com/scala/scala/commit/4897063 | SI-6932 Remove Batchable trait, minor clean-ups, update build https://github.com/scala/scala/commit/5713c1b | Fix SI-6932 by enabling linearization of callback execution for the internal execution context of Future https://github.com/scala/scala/commit/0bde246 | SI-6766 Create a continuations project in eclipse https://github.com/scala/scala/commit/a802ba9 | SI-6766 Makes the -Pcontinuations:enable flag a project specific preference https://github.com/scala/scala/commit/7cd9ce3 | update mailmap https://github.com/scala/scala/commit/a224bb7 | binary compatibility compensation https://github.com/scala/scala/commit/af03afb | SI-6536 Cleanup code around determining accessor requirement https://github.com/scala/scala/commit/2124b9d | SI-6536 Generates super accessors X.super[Y].blah when Y is a class https://github.com/scala/scala/commit/f0bc3f7 | use consistent scalac args in quick&strap https://github.com/scala/scala/commit/61862d2 | SIP-14 backport to 2.9.x https://github.com/scala/scala/commit/32782cd | SI-6188 backport (ICodeReader wrongly ignored exception handlers) https://github.com/scala/scala/commit/98b16a6 | SI-5958 This deserves a stable type - backport to 2.9.x https://github.com/scala/scala/commit/c17b9b4 | SI-6692 pickle one more flag bit: EXISTENTIAL https://github.com/scala/scala/commit/b1ed32b | eclipse project files are now in src/eclipse https://github.com/scala/scala/commit/f028335 | show developer guidelines on opening pull request https://github.com/scala/scala/commit/b79e6f2 | Improve doc comment on adaptTypeOfReturn in CPSAnnotationChecker https://github.com/scala/scala/commit/e25e7ab | Simplify the adaptation of types of return expressions https://github.com/scala/scala/commit/007eedf | Revert "Add missing cases in tail return transform" https://github.com/scala/scala/commit/e566ab3 | Add missing cases in tail return transform https://github.com/scala/scala/commit/4c5aa9b | Replace CheckCPSMethodTraverser with additional parameter on transformer methods https://github.com/scala/scala/commit/2c00346 | SI-5314 - CPS transform of return statement fails https://github.com/scala/scala/commit/1b4af44 | SI-6384 - avoid setting owner of function argument explicitly https://github.com/scala/scala/commit/3281830 | SI-6384 - correct owner of function argument https://github.com/scala/scala/commit/b3d0a64 | SI-6384 - avoid crash due to optimization in 2.10 CPS plugin https://github.com/scala/scala/commit/340e28a | Deprecated instrumentation API https://github.com/scala/scala/commit/e90fd5d | Fixed SI-6505. Respond to ask calls by immediate failure even after compiler shutdown. https://github.com/scala/scala/commit/f98198e | Fixed instrumentation code so that it can deal with: https://github.com/scala/scala/commit/ed9e44b | Changed implementation comments from /** / to / */, so ScalaDoc remains reasonable https://github.com/scala/scala/commit/f6a2714 | Fix for SI-6245 with workaround for SI-2296. https://github.com/scala/scala/commit/be9bab1 | Fixes binary repo push for new typesafe repo layouts. https://github.com/scala/scala/commit/f2caa77 | Allow nested calls to askForResponse in the presentation compiler. https://github.com/scala/scala/commit/e8e07aa | Removed previosuly uncommented code, added more diagnosis output to REPL. (cherry picked from commit bcf1d9a5f5c1d0319b51cd3dcce9ecebdeb12feb) https://github.com/scala/scala/commit/321d3f5 | Made instrumenter more robust by looking at tokens https://github.com/scala/scala/commit/a082aa2 | Removed dead code. (cherry picked from commit c03777b3acb3a4e921a27b58322d198e6d6c58f5) https://github.com/scala/scala/commit/694037d | Manual Backport of 3415436b67ae7889a11ce2537576ca49b328aecc. https://github.com/scala/scala/commit/dc1e21e | Added more variants to achieve getLinkPos https://github.com/scala/scala/commit/10c4d82 | Two fixes for the worksheet instrumenter https://github.com/scala/scala/commit/6c54783 | Backport. https://github.com/scala/scala/commit/6a8b913 | Initial cut at running binary compatibility tests on the 2.9.x series https://github.com/scala/scala/commit/e3bb6ba | Also check that Stream.toSeq gives the right result. https://github.com/scala/scala/commit/33cdba5 | Improve test for Stream.withFilter.{map,flatMap} https://github.com/scala/scala/commit/15ed4f0 | Cleanup testcase https://github.com/scala/scala/commit/096a08e | Remove commented out code https://github.com/scala/scala/commit/53130d2 | Make Stream.withFilter.{map,flatMap} run in constant stack space https://github.com/scala/scala/commit/4c80b61 | worksheet support on 2.9 https://github.com/scala/scala/commit/af26e24 | Fix for exponential compile time in specialization. https://github.com/scala/scala/commit/8b8ebaa | Revert "Merge pull request #749 from phaller/backport/cps-ticket-1681" https://github.com/scala/scala/commit/a0ed8c8 | Backport of fix for CPS ticket 1681 https://github.com/scala/scala/commit/de82f9a | Overcame trait/protected/java limitation. https://github.com/scala/scala/commit/f0b3613 | Removed dead local variable, per @hubertp's comment. https://github.com/scala/scala/commit/38f114f | Don't forget to execute pending interrupt requests when shutting down the presentation compiler.(cherry picked from commit 0d70c22279daa78b3fe58b5ea1be7f87b7079834) https://github.com/scala/scala/commit/39d8e5a | Fix SI-5708. (manually) Cherry-picked from 9d1bc68b78a76a18777a859816bcb1c7f81bf2dd https://github.com/scala/scala/commit/0c99e79 | CPS: test case for ticket 1684 https://github.com/scala/scala/commit/ded6e2d | Backport of the 2.10 continuations plugin to 2.9 https://github.com/scala/scala/commit/8e7f44c | Helping Proxy equal itself. https://github.com/scala/scala/commit/4531693 | Bumped build number for future 2.9.x work. https://github.com/scala/scala/commit/95f0de0 | Fixes SI-5632 (serialization of large HashTables)