Scala IDE sdt.core project doesn't compile with latest Scala 2.11 nightly
- Error in Scala compiler: object scala.util.continuations.cpsParam in compiler mirror not found.
- SBT builder crashed while compiling. The error message is 'object scala.util.continuations.cpsParam in compiler mirror not found.'. Check Error Log for details.
While compiling the project from command line succeed. Likely, something was missing the moment this PR https://github.com/scala-ide/scala-ide/pull/604/files got merged.
In scala-ide:3cec6f505fde84d93a283ac4f1754cfe6676257d Removed special support for Scala continuations
The Scala IDE used to package the continuations plug-in to match the Scala
distribution. While this conveniency was appreciated by the few using
continuations in their projects, it imposed a technical debt on the Scala IDE
codebase (have a look at how the compiler `Settings` used to be instantiated).
Recently, the continuations plug-in has been refactored and splitted into two
separate JARs (a compiler plug-in, and a library). After this modularization,
the Scala IDE codebase could no longer be compiled inside Eclipse because the
continuations library isn't included in the project's classpath. Of course, we
could implement a workaround to restore the functionality, but it just doesn't
seem worth the time, considering the Scala Team has deprecated the
continuations plug-in and will effectively drop supporting it the moment 2.12
is released. Hence, the decision of dropping the out-of-the-box support in the
Scala IDE.
From now on, if you want to use continutions in a project, you will have to
provide the location of the continuations JAR via the -Xplugins setting.
Finally, a couple of tests exercicing the behavior of both the presentation
compiler and the build compiler when compiling a sourcefile that requires the
continuations plug-in are now executed only for Scala 2.11 or later. This is
needed because the continuations.jar is no longer loaded when starting the
compiler inside Eclipse, and that turns out to affect semantic of programs
using continuations in Scala 2.10, because the compiler does no longer report
an error if a source file (requiring continuations) is compiled without passing
the flag to enable the plugin. Why? Because up until Scala 2.10 the compilation
error is reported by the continuations.jar (!!). Of course, that error cannot
be reported if the continuations.jar isn't available anymore (which is the
whole point of this commit). The behavior with Scala 2.11 is different because
the continuations library has been moved out of the scala library (see
https://github.com/scala/scala/commit/858a5d513779f4af6f12c0a530bdeceb7a7fd4d9),
and hence a compilation error is reported whenever a source is compiled without
the continuations library in the classpath. That explains why the tests are now
only executed on 2.11+.
This commit undos all changes related to supporting continuations made by
@adriaanm in https://github.com/scala-ide/scala-ide/pull/604
Fix #1002012
Fix #1002011
The Scala IDE used to package the continuations plug-in to match the Scala
distribution. While this conveniency was appreciated by the few using
continuations in their projects, it imposed a technical debt on the Scala IDE
codebase (have a look at how the compiler `Settings` used to be instantiated).
Recently, the continuations plug-in has been refactored and splitted into two
separate JARs (a compiler plug-in, and a library). After this modularization,
the Scala IDE codebase could no longer be compiled inside Eclipse because the
continuations library isn't included in the project's classpath. Of course, we
could implement a workaround to restore the functionality, but it just doesn't
seem worth the time, considering the Scala Team has deprecated the
continuations plug-in and will effectively drop supporting it the moment 2.12
is released. Hence, the decision of dropping the out-of-the-box support in the
Scala IDE.
From now on, if you want to use continutions in a project, you will have to
provide the location of the continuations JAR via the -Xplugins setting.
Finally, a couple of tests exercicing the behavior of both the presentation
compiler and the build compiler when compiling a sourcefile that requires the
continuations plug-in are now executed only for Scala 2.11 or later. This is
needed because the continuations.jar is no longer loaded when starting the
compiler inside Eclipse, and that turns out to affect semantic of programs
using continuations in Scala 2.10, because the compiler does no longer report
an error if a source file (requiring continuations) is compiled without passing
the flag to enable the plugin. Why? Because up until Scala 2.10 the compilation
error is reported by the continuations.jar (!!). Of course, that error cannot
be reported if the continuations.jar isn't available anymore (which is the
whole point of this commit). The behavior with Scala 2.11 is different because
the continuations library has been moved out of the scala library (see
https://github.com/scala/scala/commit/858a5d513779f4af6f12c0a530bdeceb7a7fd4d9),
and hence a compilation error is reported whenever a source is compiled without
the continuations library in the classpath. That explains why the tests are now
only executed on 2.11+.
This commit undos all changes related to supporting continuations made by
@adriaanm in https://github.com/scala-ide/scala-ide/pull/604
Fix #1002012
Fix #1002011
(cherry picked from commit 3cec6f505fde84d93a283ac4f1754cfe6676257d)
Conflicts:
org.scala-ide.sdt.core.tests/src/scala/tools/eclipse/compiler/settings/CompilerSettingsTest.scala
org.scala-ide.sdt.core.tests/src/scala/tools/eclipse/compiler/settings/ContinuationPluginSettingsTest.scala
org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaClasspathContainers.scala
org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaPlugin.scala
org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaProject.scala
Conflicts:
org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaClasspathContainers.scala
Conflicts:
org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaClasspathContainers.scala
Branch: release/scala-ide-3.0.x-juno-2.11
Commit: scala-ide:c557e9377a