Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Catch up with Scala Library Modularization. #604

Merged
merged 2 commits into from 7 months ago

4 participants

Adriaan Moors François Garillot ghprb-bot Luc Bourlier
Adriaan Moors

Rework of #602

Split the dependencies along the scala-2.10.x and scala-2.11.x profiles.
The goal is to evolve the 2.11 module structure to get a leaner set of
dependencies on Scala Core, with a separate Scala Modules container.

Support the 2.11 swing/continuations modules:
Rename continuations.jar to scala-continuations-plugin.jar.
In 2.10 this was called continuations.jar,
in 2.11 it's scala-continuations-plugin_2.11.jar, and the library part
is distributed separately, so add that to the Scala container.

TODO: add scala-xml and scala-parser-combinators to the scala container and to the repl classpath

(These dependencies should move to the Scala Modules container eventually.)

Fix the outputDirectory-es of scala-(refactoring|swing)

Plugin goes to lib/. Long live XML copy-paste reuse.

adriaanm added some commits
Adriaan Moors adriaanm remove wildcard eol=lf from gitattributes 479f08e
Adriaan Moors adriaanm Catch up with Scala Library Modularization.
Split the dependencies along the scala-2.10.x and scala-2.11.x profiles.
The goal is to evolve the 2.11 module structure to get a leaner set of
dependencies on Scala Core, with a separate Scala Modules container.

Support the 2.11 swing/continuations modules:
Rename `continuations.jar` to `scala-continuations-plugin.jar`.
In 2.10 this was called `continuations.jar`,
in 2.11 it's `scala-continuations-plugin_2.11.jar`, and the library part
is distributed separately, so add that to the Scala container.

TODO: add scala-xml and scala-parser-combinators to the scala container and to the repl classpath

(These dependencies should move to the Scala Modules container eventually.)

Fix the outputDirectory-es of scala-(refactoring|swing)

Plugin goes to lib/. Long live XML copy-paste reuse.
2e57692
Adriaan Moors

Next steps:
1. wait for #604 to pass on 2.10.x and fail in the expected way for 2.11.
2. I merge scala/scala#3221
3. you tell the ide bot rebuild #604, and merge when it passes

ghprb-bot
Collaborator

Test PASSed.
Refer to this link for build results: https://jenkins.scala-ide.org:8496/jenkins/job/ghprb-scala-ide-validator/438/

Adriaan Moors

Looks like my wish came true (no coordination needed since the modules are not in conflict with current scala)

Adriaan Moors

Would you mind if we moved step 2. after step 3. then, since all systems are go on this side?

Adriaan Moors

@huitseeker it looks like we're all good to merge this -- cheers! :beers:

François Garillot
Owner

Yes, but I want to leave @skyluc a shot at glancing at this. If you don't mind, we'll merge bef. 10:30 CET

Adriaan Moors

ok, tomorrow is fine too -- the good thing is we don't need to coordinate anymore, so I'll just wait for you to merge this, and then rebuild the scala PR and merge it

Adriaan Moors

(I just wanted to make sure i wasn't blocking anyone by going out to lunch.)

François Garillot
Owner

I can confirm this works post- scala/scala:#3221. LGTM.

Any objections, @skyluc ?

Luc Bourlier skyluc commented on the diff
((9 lines not shown))
303 343 <artifactId>scala-reflect</artifactId>
304 344 <version>${scala.library.version}</version>
305 345 </dependency>
306   - <dependency>
307   - <groupId>org.scala-lang</groupId>
308   - <artifactId>scala-actors</artifactId>
309   - <version>${scala.library.version}</version>
310   - </dependency>
1
Luc Bourlier Owner
skyluc added a note

This part didn't really have to be moved, it is the same configuration for 2.10 and 2.11.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Luc Bourlier
Owner

LGTM. The location of the declarations for scala-actors doesn't matter much.

François Garillot huitseeker merged commit 3594a47 into from
Adriaan Moors

The reason I split up actors is that they are deprecated in 2.11 and I was suggesting we consider only including non-deprecated libraries by default in the Scala container.

Mirco Dotta dotta referenced this pull request from a commit in dotta/scala-ide
Mirco Dotta dotta 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.

This commit undoes all changes related to supporting continuations made by
@adriaanm in scala-ide#604

Fix #1002012
Fix #1002011
330b601
Mirco Dotta dotta referenced this pull request from a commit in dotta/scala-ide
Mirco Dotta dotta 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.

This commit undos all changes related to supporting continuations made by
@adriaanm in scala-ide#604

Fix #1002012
Fix #1002011
0762ff0
Mirco Dotta dotta referenced this pull request from a commit in dotta/scala-ide
Mirco Dotta dotta 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
scala/scala@858a5d5),
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 scala-ide#604

Fix #1002012
Fix #1002011
615d958
Mirco Dotta dotta referenced this pull request from a commit in dotta/scala-ide
Mirco Dotta dotta 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
scala/scala@858a5d5),
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 scala-ide#604

Fix #1002012
Fix #1002011
7bdafb8
Mirco Dotta dotta referenced this pull request from a commit in dotta/scala-ide
Mirco Dotta dotta 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
scala/scala@858a5d5),
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 scala-ide#604

Fix #1002012
Fix #1002011
9ef16c3
Mirco Dotta dotta referenced this pull request from a commit in dotta/scala-ide
Mirco Dotta dotta 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
scala/scala@858a5d5),
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 scala-ide#604

Fix #1002012
Fix #1002011
3cec6f5
François Garillot huitseeker referenced this pull request from a commit in huitseeker/scala-ide
François Garillot huitseeker 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
scala/scala@858a5d5),
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 scala-ide#604

Fix #1002012
Fix #1002011

(cherry picked from commit 3cec6f5)

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
1c3810e
Iulian Dragos dragos referenced this pull request from a commit in dragos/scala-ide
François Garillot huitseeker 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
scala/scala@858a5d5),
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 scala-ide#604

Fix #1002012
Fix #1002011

(cherry picked from commit 3cec6f5)

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
c557e93
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Showing 2 unique commits by 1 author.

Dec 11, 2013
Adriaan Moors adriaanm remove wildcard eol=lf from gitattributes 479f08e
Adriaan Moors adriaanm Catch up with Scala Library Modularization.
Split the dependencies along the scala-2.10.x and scala-2.11.x profiles.
The goal is to evolve the 2.11 module structure to get a leaner set of
dependencies on Scala Core, with a separate Scala Modules container.

Support the 2.11 swing/continuations modules:
Rename `continuations.jar` to `scala-continuations-plugin.jar`.
In 2.10 this was called `continuations.jar`,
in 2.11 it's `scala-continuations-plugin_2.11.jar`, and the library part
is distributed separately, so add that to the Scala container.

TODO: add scala-xml and scala-parser-combinators to the scala container and to the repl classpath

(These dependencies should move to the Scala Modules container eventually.)

Fix the outputDirectory-es of scala-(refactoring|swing)

Plugin goes to lib/. Long live XML copy-paste reuse.
2e57692
This page is out of date. Refresh to see the latest.
17 .gitattributes
... ... @@ -1,10 +1,7 @@
1   -*.aj text
2   -*.java text
3   -*.MF text
4   -*.properties text
5   -*.pom text
6   -*.scala text
7   -*.xml text
8   -
9   -# LF are needed by tests
10   -* text eol=lf
  1 +*.aj eol=lf
  2 +*.java eol=lf
  3 +*.MF eol=lf
  4 +*.properties eol=lf
  5 +*.pom eol=lf
  6 +*.scala eol=lf
  7 +*.xml eol=lf
90 org.scala-ide.sdt.build/pom.xml
@@ -79,16 +79,13 @@
79 79 </dependency>
80 80 <dependency>
81 81 <groupId>org.scala-lang</groupId>
82   - <artifactId>scala-actors</artifactId>
83   - </dependency>
84   - <dependency>
85   - <groupId>org.scala-lang</groupId>
86 82 <artifactId>scala-compiler</artifactId>
87 83 </dependency>
88 84 <dependency>
89 85 <groupId>org.scala-lang</groupId>
90 86 <artifactId>scala-reflect</artifactId>
91 87 </dependency>
  88 +
92 89 <dependency>
93 90 <groupId>org.scala-ide</groupId>
94 91 <artifactId>org.scala-ide.sbt.full.library</artifactId>
@@ -109,6 +106,7 @@
109 106 <artifactId>org.scala-ide.sbt.compiler.interface.source</artifactId>
110 107 <version>${project.version}</version>
111 108 </dependency>
  109 +
112 110 <!-- Source dependencies -->
113 111 <dependency>
114 112 <groupId>org.scala-lang</groupId>
@@ -118,19 +116,6 @@
118 116 </dependency>
119 117 <dependency>
120 118 <groupId>org.scala-lang</groupId>
121   - <artifactId>scala-swing</artifactId>
122   - <classifier>sources</classifier>
123   - <version>${scala.library.version}</version>
124   - </dependency>
125   - <dependency>
126   - <groupId>org.scala-lang</groupId>
127   - <artifactId>scala-actors</artifactId>
128   - <classifier>sources</classifier>
129   - <version>${scala.library.version}</version>
130   - </dependency>
131   - <!-- toolchain, Scala compiler -->
132   - <dependency>
133   - <groupId>org.scala-lang</groupId>
134 119 <artifactId>scala-compiler</artifactId>
135 120 <classifier>sources</classifier>
136 121 <version>${scala.version}</version>
@@ -141,23 +126,52 @@
141 126 <classifier>sources</classifier>
142 127 <version>${scala.version}</version>
143 128 </dependency>
144   - <dependency>
145   - <groupId>org.scala-lang.plugins</groupId>
146   - <artifactId>continuations</artifactId>
147   - <classifier>sources</classifier>
148   - <version>${scala.version}</version>
149   - </dependency>
150 129 </dependencies>
151 130
152 131 <profiles>
153 132 <profile>
154   - <!--- the profile using the default values. Scala 2.11.x -->
  133 + <id>scala-2.10.x</id>
  134 + <dependencies>
  135 + <dependency>
  136 + <groupId>org.scala-lang</groupId>
  137 + <artifactId>scala-actors</artifactId>
  138 + </dependency>
  139 +
  140 + <!-- Source dependencies -->
  141 + <dependency>
  142 + <groupId>org.scala-lang</groupId>
  143 + <artifactId>scala-swing</artifactId>
  144 + <classifier>sources</classifier>
  145 + <version>${scala.library.version}</version>
  146 + </dependency>
  147 + <dependency>
  148 + <groupId>org.scala-lang.plugins</groupId>
  149 + <artifactId>continuations</artifactId>
  150 + <classifier>sources</classifier>
  151 + <version>${scala.library.version}</version>
  152 + </dependency>
  153 + <dependency>
  154 + <groupId>org.scala-lang</groupId>
  155 + <artifactId>scala-actors</artifactId>
  156 + <classifier>sources</classifier>
  157 + <version>${scala.library.version}</version>
  158 + </dependency>
  159 + </dependencies>
  160 + </profile>
  161 +
  162 + <profile>
155 163 <id>scala-2.11.x</id>
156 164 <dependencies>
157 165 <dependency>
  166 + <groupId>org.scala-lang</groupId>
  167 + <artifactId>scala-actors</artifactId>
  168 + </dependency>
  169 +
  170 + <dependency>
158 171 <groupId>org.scala-lang.modules</groupId>
159 172 <artifactId>scala-xml_${scala.binary.version}</artifactId>
160 173 </dependency>
  174 +
161 175 <dependency>
162 176 <groupId>org.scala-lang.modules</groupId>
163 177 <artifactId>scala-parser-combinators_${scala.binary.version}</artifactId>
@@ -165,16 +179,40 @@
165 179
166 180 <!-- Source dependencies -->
167 181 <dependency>
  182 + <groupId>org.scala-lang.plugins</groupId>
  183 + <artifactId>scala-continuations-plugin_${scala.binary.version}</artifactId>
  184 + <classifier>sources</classifier>
  185 + <version>${scala-continuations-plugin.version}</version>
  186 + </dependency>
  187 + <dependency>
  188 + <groupId>org.scala-lang.plugins</groupId>
  189 + <artifactId>scala-continuations-library_${scala.binary.version}</artifactId>
  190 + <classifier>sources</classifier>
  191 + <version>${scala-continuations-library.version}</version>
  192 + </dependency>
  193 + <dependency>
  194 + <groupId>org.scala-lang</groupId>
  195 + <artifactId>scala-actors</artifactId>
  196 + <classifier>sources</classifier>
  197 + <version>${scala.library.version}</version>
  198 + </dependency>
  199 + <dependency>
168 200 <groupId>org.scala-lang.modules</groupId>
169 201 <artifactId>scala-xml_${scala.binary.version}</artifactId>
170 202 <classifier>sources</classifier>
171   - <version>${scala.xml.version}</version>
  203 + <version>${scala-xml.version}</version>
172 204 </dependency>
173 205 <dependency>
174 206 <groupId>org.scala-lang.modules</groupId>
175 207 <artifactId>scala-parser-combinators_${scala.binary.version}</artifactId>
176 208 <classifier>sources</classifier>
177   - <version>${scala.parser-combinators.version}</version>
  209 + <version>${scala-parser-combinators.version}</version>
  210 + </dependency>
  211 + <dependency>
  212 + <groupId>org.scala-lang.modules</groupId>
  213 + <artifactId>scala-swing_${scala.binary.version}</artifactId>
  214 + <classifier>sources</classifier>
  215 + <version>${scala-swing.version}</version>
178 216 </dependency>
179 217 </dependencies>
180 218 </profile>
2  org.scala-ide.sdt.core.tests/src/scala/tools/eclipse/compiler/settings/ContinuationPluginSettingsTest.scala
@@ -63,7 +63,7 @@ class ContinuationPluginSettingsTest {
63 63 @Test
64 64 def loadContinuationsPluginVia_XpluginCompilerSetting() {
65 65 setPrefValue("Xpluginsdir", "/doesnotexist")
66   - setPrefValue("Xplugin", ScalaPlugin.plugin.defaultPluginsDir + File.separator + "continuations.jar")
  66 + setPrefValue("Xplugin", ScalaPlugin.plugin.defaultPluginsDir + File.separator + "scala-continuations-plugin.jar")
67 67 forceEnableContinuationForNewerScalaVersion()
68 68 Assert.assertEquals("Loaded plugins: ", List("continuations"), loadedPlugins(project))
69 69 }
127 org.scala-ide.sdt.core/pom.xml
@@ -13,7 +13,60 @@
13 13
14 14 <profiles>
15 15 <profile>
16   - <!--- the profile using the default values. Scala 2.11.x -->
  16 + <id>scala-2.10.x</id>
  17 + <build>
  18 + <plugins>
  19 + <plugin>
  20 + <groupId>org.apache.maven.plugins</groupId>
  21 + <artifactId>maven-dependency-plugin</artifactId>
  22 + <executions>
  23 + <execution>
  24 + <!-- add the source jar, to be able to attach the source to the Scala container. And the continuation plug-in -->
  25 + <id>copy.modules</id>
  26 + <phase>initialize</phase>
  27 + <goals>
  28 + <goal>copy</goal>
  29 + </goals>
  30 + <configuration>
  31 + <artifactItems>
  32 + <artifactItem>
  33 + <groupId>org.scala-lang.plugins</groupId>
  34 + <artifactId>continuations</artifactId>
  35 + <type>jar</type>
  36 + <destFileName>scala-continuations-plugin.jar</destFileName>
  37 + <outputDirectory>${project.build.directory}/lib</outputDirectory>
  38 + </artifactItem>
  39 + <artifactItem>
  40 + <groupId>org.scala-lang</groupId>
  41 + <artifactId>scala-swing</artifactId>
  42 + <type>jar</type>
  43 + <destFileName>scala-swing.jar</destFileName>
  44 + <outputDirectory>${project.build.directory}/lib</outputDirectory>
  45 + </artifactItem>
  46 + <artifactItem>
  47 + <groupId>org.scala-lang</groupId>
  48 + <artifactId>scala-swing</artifactId>
  49 + <classifier>sources</classifier>
  50 + <type>jar</type>
  51 + <destFileName>scala-swing-src.jar</destFileName>
  52 + </artifactItem>
  53 + <artifactItem>
  54 + <groupId>org.scala-lang</groupId>
  55 + <artifactId>scala-actors</artifactId>
  56 + <classifier>sources</classifier>
  57 + <type>jar</type>
  58 + <destFileName>scala-actors-src.jar</destFileName>
  59 + </artifactItem>
  60 + </artifactItems>
  61 + <outputDirectory>${project.build.directory}/src</outputDirectory>
  62 + </configuration>
  63 + </execution>
  64 + </executions>
  65 + </plugin>
  66 + </plugins>
  67 + </build>
  68 + </profile>
  69 + <profile>
17 70 <id>scala-2.11.x</id>
18 71 <build>
19 72 <plugins>
@@ -44,6 +97,48 @@
44 97 <type>jar</type>
45 98 <destFileName>scala-parser-combinators-src.jar</destFileName>
46 99 </artifactItem>
  100 + <artifactItem>
  101 + <groupId>org.scala-lang.plugins</groupId>
  102 + <artifactId>scala-continuations-library_${scala.binary.version}</artifactId>
  103 + <classifier>sources</classifier>
  104 + <type>jar</type>
  105 + <destFileName>scala-continuations-library-src.jar</destFileName>
  106 + </artifactItem>
  107 + <artifactItem>
  108 + <groupId>org.scala-lang.modules</groupId>
  109 + <artifactId>scala-swing_${scala.binary.version}</artifactId>
  110 + <classifier>sources</classifier>
  111 + <type>jar</type>
  112 + <destFileName>scala-swing-src.jar</destFileName>
  113 + </artifactItem>
  114 + <artifactItem>
  115 + <groupId>org.scala-lang</groupId>
  116 + <artifactId>scala-actors</artifactId>
  117 + <classifier>sources</classifier>
  118 + <type>jar</type>
  119 + <destFileName>scala-actors-src.jar</destFileName>
  120 + </artifactItem>
  121 + <artifactItem>
  122 + <groupId>org.scala-lang.plugins</groupId>
  123 + <artifactId>scala-continuations-plugin_${scala.binary.version}</artifactId>
  124 + <type>jar</type>
  125 + <destFileName>scala-continuations-plugin.jar</destFileName>
  126 + <outputDirectory>${project.build.directory}/lib/</outputDirectory>
  127 + </artifactItem>
  128 + <artifactItem>
  129 + <groupId>org.scala-lang.plugins</groupId>
  130 + <artifactId>scala-continuations-library_${scala.binary.version}</artifactId>
  131 + <type>jar</type>
  132 + <destFileName>scala-continuations-library.jar</destFileName>
  133 + <outputDirectory>${project.build.directory}/lib/</outputDirectory>
  134 + </artifactItem>
  135 + <artifactItem>
  136 + <groupId>org.scala-lang.modules</groupId>
  137 + <artifactId>scala-swing_${scala.binary.version}</artifactId>
  138 + <type>jar</type>
  139 + <destFileName>scala-swing.jar</destFileName>
  140 + <outputDirectory>${project.build.directory}/lib/</outputDirectory>
  141 + </artifactItem>
47 142 </artifactItems>
48 143 <stripVersion>true</stripVersion>
49 144 <outputDirectory>${project.build.directory}/src</outputDirectory>
@@ -122,20 +217,8 @@
122 217 <groupId>com.miglayout</groupId>
123 218 <artifactId>miglayout</artifactId>
124 219 </artifactItem>
125   - <artifactItem>
126   - <groupId>org.scala-lang.plugins</groupId>
127   - <artifactId>continuations</artifactId>
128   - <type>jar</type>
129   - <destFileName>continuations.jar</destFileName>
130   - </artifactItem>
131   - <artifactItem>
132   - <groupId>org.scala-lang</groupId>
133   - <artifactId>scala-swing</artifactId>
134   - <type>jar</type>
135   - <destFileName>scala-swing.jar</destFileName>
136   - </artifactItem>
137 220
138   - <!-- sources for Scala library -->
  221 + <!-- sources for Scala library and compiler -->
139 222 <artifactItem>
140 223 <groupId>org.scala-lang</groupId>
141 224 <artifactId>scala-library</artifactId>
@@ -146,22 +229,6 @@
146 229 </artifactItem>
147 230 <artifactItem>
148 231 <groupId>org.scala-lang</groupId>
149   - <artifactId>scala-swing</artifactId>
150   - <classifier>sources</classifier>
151   - <type>jar</type>
152   - <destFileName>scala-swing-src.jar</destFileName>
153   - <outputDirectory>${project.build.directory}/src</outputDirectory>
154   - </artifactItem>
155   - <artifactItem>
156   - <groupId>org.scala-lang</groupId>
157   - <artifactId>scala-actors</artifactId>
158   - <classifier>sources</classifier>
159   - <type>jar</type>
160   - <destFileName>scala-actors-src.jar</destFileName>
161   - <outputDirectory>${project.build.directory}/src</outputDirectory>
162   - </artifactItem>
163   - <artifactItem>
164   - <groupId>org.scala-lang</groupId>
165 232 <artifactId>scala-reflect</artifactId>
166 233 <classifier>sources</classifier>
167 234 <type>jar</type>
17 org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaClasspathContainers.scala
@@ -39,13 +39,16 @@ abstract class ScalaClasspathContainerInitializer(desc : String) extends Classpa
39 39 class ScalaLibraryClasspathContainerInitializer extends ScalaClasspathContainerInitializer("Scala Library") {
40 40 val plugin = ScalaPlugin.plugin
41 41 import plugin._
42   -
43   - def entries = List(
44   - libClasses.map(classes => JavaCore.newLibraryEntry(classes, libSources.getOrElse(null), null)),
45   - swingClasses.map(classes => JavaCore.newLibraryEntry(classes, swingSources.getOrElse(null), null)),
46   - actorsClasses.map(classes => JavaCore.newLibraryEntry(classes, actorsSources.getOrElse(null), null)),
47   - reflectClasses.map(classes => JavaCore.newLibraryEntry(classes, reflectSources.getOrElse(null), null))
48   - ).flatten.toArray
  42 + def libraryEntries(classes: Option[IPath], sources: Option[IPath]) =
  43 + classes.map(classes => JavaCore.newLibraryEntry(classes, sources.getOrElse(null), null))
  44 + def entries = Array(
  45 + (libClasses, libSources),
  46 + (reflectClasses, reflectSources),
  47 + // modules:
  48 + (actorsClasses, actorsSources),
  49 + (continuationsLibraryClasses, continuationsLibrarySources),
  50 + (swingClasses, swingSources)
  51 + ).flatMap{case (c, s) => libraryEntries(c, s)}
49 52 }
50 53
51 54 class ScalaCompilerClasspathContainerInitializer extends ScalaClasspathContainerInitializer("Scala Compiler") {
24 org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaPlugin.scala
@@ -172,18 +172,17 @@ class ScalaPlugin extends AbstractUIPlugin with PluginLogConfigurator with IReso
172 172 lazy val scalaCompilerBundle = Platform.getBundle(compilerPluginId)
173 173 lazy val scalaCompilerBundleVersion = scalaCompilerBundle.getVersion()
174 174 lazy val compilerClasses = OSGiUtils.getBundlePath(scalaCompilerBundle)
175   - lazy val continuationsClasses = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/lib/continuations.jar")
176 175 lazy val compilerSources = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/src/scala-compiler-src.jar")
177 176
178   - /** The default location used to load compiler's plugins. The convention is that the continuations.jar
  177 + /** The default location used to load compiler's plugins. The convention is that the scala-continuations-plugin.jar
179 178 * plugin should be always loaded, so that a user can enable continuations by only passing
180 179 * -P:continuations:enable flag. This matches `scalac` behavior. */
181 180 def defaultPluginsDir: String = {
182   - Trim(continuationsClasses map { _.removeLastSegments(1).toOSString }) getOrElse {
  181 + Trim(continuationsPluginJar map { _.removeLastSegments(1).toOSString }) getOrElse {
183 182 eclipseLog.warn {
184 183 "Could not locate scalac's default plugins directory. " +
185 184 "If you plan on enabling the continuations plugin, please provide the full path to the directory " +
186   - "containing the \"continuations.jar\" plugin in the -XpluginDir compiler setting."
  185 + "containing the \"scala-continuations-plugin.jar\" plugin in the -XpluginDir compiler setting."
187 186 }
188 187 ""
189 188 }
@@ -206,21 +205,26 @@ class ScalaPlugin extends AbstractUIPlugin with PluginLogConfigurator with IReso
206 205 }
207 206 }
208 207
209   - lazy val scalaActorsBundle = Platform.getBundle(actorsPluginId)
210   - lazy val scalaReflectBundle = Platform.getBundle(reflectPluginId)
211   -
212 208 lazy val libClasses = OSGiUtils.getBundlePath(scalaLibBundle)
213 209 lazy val libSources = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/src/scala-library-src.jar")
214 210
215   - lazy val swingClasses = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/lib/scala-swing.jar")
216   - lazy val swingSources = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/src/scala-swing-src.jar")
217   -
218 211 // 2.10 specific libraries
  212 + lazy val scalaActorsBundle = Platform.getBundle(actorsPluginId)
219 213 lazy val actorsClasses = OSGiUtils.getBundlePath(Platform.getBundle(actorsPluginId))
220 214 lazy val actorsSources = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/src/scala-actors-src.jar")
  215 +
  216 + lazy val scalaReflectBundle = Platform.getBundle(reflectPluginId)
221 217 lazy val reflectClasses = OSGiUtils.getBundlePath(Platform.getBundle(reflectPluginId))
222 218 lazy val reflectSources = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/src/scala-reflect-src.jar")
223 219
  220 + lazy val swingClasses = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/lib/scala-swing.jar")
  221 + lazy val swingSources = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/src/scala-swing-src.jar")
  222 +
  223 + lazy val continuationsPluginJar = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/lib/scala-continuations-plugin.jar")
  224 + lazy val continuationsLibraryClasses = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/lib/scala-continuations-library.jar")
  225 + lazy val continuationsLibrarySources = OSGiUtils.pathInBundle(sdtCoreBundle, "/target/src/scala-continuations-library-src.jar")
  226 +
  227 +
224 228 lazy val templateManager = new ScalaTemplateManager()
225 229 lazy val headlessMode = System.getProperty(ScalaPlugin.HeadlessTest) ne null
226 230 lazy val noTimeoutMode = System.getProperty(ScalaPlugin.NoTimeouts) ne null
2  org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaProject.scala
@@ -405,7 +405,7 @@ class ScalaProject private (val underlying: IProject) extends ClasspathManagemen
405 405 // if the user provided an explicit path for -Xpluginsdir, then it's all good.
406 406 if (userSettings.exists(setting => setting.name == defaultSettings.pluginsDir)) None
407 407 // otherwise, inject the `pluginsDir` setting as defined in `ScalaPlugin.defaultScalaSettings`, i.e., it will
408   - // inject the default location where the continuations.jar can be found. Mind that this location can change
  408 + // inject the default location where the scala-continuations-plugin.jar can be found. Mind that this location can change
409 409 // every time the user updates the Scala IDE.
410 410 else Some(defaultSettings.pluginsDir)
411 411 }
2  org.scala-ide.sdt.core/src/scala/tools/eclipse/interpreter/InterpreterLaunchConfigurationDelegate.scala
@@ -130,7 +130,7 @@ class InterpreterLaunchConfigurationDelegate extends AbstractJavaLaunchConfigura
130 130 }
131 131 }
132 132
133   - /** Retreives the extra classpath needed for the interpreter*/
  133 + /** Retrieves the extra classpath needed for the interpreter*/
134 134 def toolClassPath = {
135 135 val plugin = ScalaPlugin.plugin
136 136 import plugin._
68 pom.xml
@@ -92,6 +92,27 @@
92 92 <repo.scalariform>${repo.scala-ide.root}/scalariform-210x</repo.scalariform>
93 93 <repo.typesafe>http://private-repo.typesafe.com/typesafe/ide-2.10</repo.typesafe>
94 94 </properties>
  95 +
  96 + <dependencyManagement>
  97 + <dependencies>
  98 + <dependency>
  99 + <groupId>org.scala-lang</groupId>
  100 + <artifactId>scala-actors</artifactId>
  101 + <version>${scala.library.version}</version>
  102 + </dependency>
  103 + <dependency>
  104 + <groupId>org.scala-lang</groupId>
  105 + <artifactId>scala-swing</artifactId>
  106 + <version>${scala.library.version}</version>
  107 + </dependency>
  108 + <dependency>
  109 + <groupId>org.scala-lang.plugins</groupId>
  110 + <artifactId>continuations</artifactId>
  111 + <version>${scala.version}</version>
  112 + </dependency>
  113 + </dependencies>
  114 + </dependencyManagement>
  115 +
95 116 </profile>
96 117
97 118 <profile>
@@ -99,8 +120,12 @@
99 120 <properties>
100 121 <scala.version>2.11.0-SNAPSHOT</scala.version>
101 122 <scala.binary.version>2.11.0-M7</scala.binary.version>
102   - <scala.xml.version>1.0.0-RC7</scala.xml.version>
103   - <scala.parser-combinators.version>1.0.0-RC5</scala.parser-combinators.version>
  123 + <scala-xml.version>1.0.0-RC7</scala-xml.version>
  124 + <scala-parser-combinators.version>1.0.0-RC5</scala-parser-combinators.version>
  125 + <scala-continuations-plugin.version>1.0.0-RC2</scala-continuations-plugin.version>
  126 + <scala-continuations-library.version>1.0.0-RC2</scala-continuations-library.version>
  127 + <scala-swing.version>1.0.0-RC2</scala-swing.version>
  128 +
104 129 <version.suffix>2_11</version.suffix>
105 130
106 131 <repo.scala-refactoring>${repo.scala-ide.root}/scala-refactoring-211x</repo.scala-refactoring>
@@ -111,14 +136,34 @@
111 136 <dependencyManagement>
112 137 <dependencies>
113 138 <dependency>
  139 + <groupId>org.scala-lang</groupId>
  140 + <artifactId>scala-actors</artifactId>
  141 + <version>${scala.library.version}</version>
  142 + </dependency>
  143 + <dependency>
  144 + <groupId>org.scala-lang.modules</groupId>
  145 + <artifactId>scala-swing_${scala.binary.version}</artifactId>
  146 + <version>${scala-swing.version}</version>
  147 + </dependency>
  148 + <dependency>
114 149 <groupId>org.scala-lang.modules</groupId>
115 150 <artifactId>scala-xml_${scala.binary.version}</artifactId>
116   - <version>${scala.xml.version}</version>
  151 + <version>${scala-xml.version}</version>
117 152 </dependency>
118 153 <dependency>
119 154 <groupId>org.scala-lang.modules</groupId>
120 155 <artifactId>scala-parser-combinators_${scala.binary.version}</artifactId>
121   - <version>${scala.parser-combinators.version}</version>
  156 + <version>${scala-parser-combinators.version}</version>
  157 + </dependency>
  158 + <dependency>
  159 + <groupId>org.scala-lang.plugins</groupId>
  160 + <artifactId>scala-continuations-plugin_${scala.binary.version}</artifactId>
  161 + <version>${scala-continuations-plugin.version}</version>
  162 + </dependency>
  163 + <dependency>
  164 + <groupId>org.scala-lang.plugins</groupId>
  165 + <artifactId>scala-continuations-library_${scala.binary.version}</artifactId>
  166 + <version>${scala-continuations-library.version}</version>
122 167 </dependency>
123 168 </dependencies>
124 169 </dependencyManagement>
@@ -295,19 +340,9 @@
295 340 </dependency>
296 341 <dependency>
297 342 <groupId>org.scala-lang</groupId>
298   - <artifactId>scala-swing</artifactId>
299   - <version>${scala.library.version}</version>
300   - </dependency>
301   - <dependency>
302   - <groupId>org.scala-lang</groupId>
303 343 <artifactId>scala-reflect</artifactId>
304 344 <version>${scala.library.version}</version>
305 345 </dependency>
306   - <dependency>
307   - <groupId>org.scala-lang</groupId>
308   - <artifactId>scala-actors</artifactId>
309   - <version>${scala.library.version}</version>
310   - </dependency>
311 346 <!-- toolchain, Scala compiler -->
312 347 <dependency>
313 348 <groupId>org.scala-lang</groupId>
@@ -319,11 +354,6 @@
319 354 <artifactId>scala-reflect</artifactId>
320 355 <version>${scala.version}</version>
321 356 </dependency>
322   - <dependency>
323   - <groupId>org.scala-lang.plugins</groupId>
324   - <artifactId>continuations</artifactId>
325   - <version>${scala.version}</version>
326   - </dependency>
327 357 <!-- toolchain, sbt -->
328 358 <dependency>
329 359 <groupId>com.typesafe.sbt</groupId>

Tip: You can add notes to lines in a file. Hover to the left of a line to make a note

Something went wrong with that request. Please try again.