Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Mar 5, 2012
  1. @dragos
  2. @dragos

    Fixed transitive and direct dependencies for project builders.

    dragos authored
    (cherry picked from commit 493aa4f)
Commits on Feb 20, 2012
  1. @dotta

    Override default when an explicit value is provided for `-XpluginsDir`.

    dotta authored
    In the IDE, for convenience we use to se the value of `-XpluginDir` to the
    default location in the distribution that contains the continuations.jar
    plugin.  This is convenient because users need only to pass
    `-P:continuations:enable` to use the continuations plugin.
    
    If in the IDE an explicit value is provided for `-XpluginsDir`, then we simply
    concatenate the user's provided plugins' directory to the default one.  This
    generally works fine and allows users to keep using the continuations plugin
    without having to copy the continuations.jar in the provided user's plugin
    directory.
    
    However, by passing the additional parameter -Xplugin
    ${path-to-continuations-plugin}, the compiler is unable to load the
    continuations.jar. The reason is that there is ambiguity. `-XpluginsDir`
    instructs the compiler to load all plugins available in the passed
    directory(ies) and, as we said in the first paragraph, that means that the
    continuations' plugin gets always loaded. Now, when also `-Xplugin
    ${path-to-continuations-plugin}` the Scala compiler seems to get lost because
    it sees the continuations.jar twice, and it looks like it decided to simply not
    load it. Hence, the compiler will complain that the continuations plugin isn't
    enabled. That looks like a bug, and a ticket in the Scala compiler JIRA has
    been created for this: https://issues.scala-lang.org/browse/SI-5491.
    
    But in consideration of what has been said, I believe that we should not try to
    always set `-XpluginsDir` to point to the default location in the distribution.
    If the user decides that it should point to some other place, then provided
    location should be used. That actually matches the Scala compiler's behavior.
    
    Fix #1000908.
    
    Conflicts:
    
    	org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaPlugin.scala
    	org.scala-ide.sdt.core/src/scala/tools/eclipse/ScalaProject.scala
    	org.scala-ide.sdt.core/src/scala/tools/eclipse/interpreter/ReplConsoleView.scala
    	org.scala-ide.sdt.core/src/scala/tools/eclipse/properties/ScalaCompilerPreferenceInitializer.scala
Commits on Feb 9, 2012
  1. @dragos

    Use File.pathSeparator when building the pluginsDir setting, to be pl…

    dragos authored
    …atform independent. Fixes #1000901.
    
    (cherry picked from commit 4ffdd09)
Commits on Nov 23, 2011
  1. @skyluc

    Re #1000764. Refreshing presentation compiler data

    skyluc authored
    Play 2.0 works fine in Scala IDE, except for the fact that information in the presentation compiler
    about file changed in the filesystem is not correctly updated.
    This change detect those changes, and trigger the presentation compiler.
Commits on Nov 21, 2011
  1. @skyluc

    Tweaks for Re #1000757

    skyluc authored
    - configured the new marker ids as extensions, so they are visible in the UI.
    - recursively removed all marker in the projects with invalid classpath, and fixed the test.
  2. @dragos

    Better build error management, and cleaned up interactions between bu…

    dragos authored
    …ild, compiler settings,
    
    and class path validation errors.
    
    1. The class path validator deletes all Java and Scala error markers *only* when there is an
       class path error.
    2. Build errors, settings errors and class path errors have different marker IDs.
    3. Invalid setting errors are now reported. Until now they went unreported.
    4. Fixed #1000757.(cherry picked from commit 55ae84c)
Commits on Nov 16, 2011
  1. @dotta

    Replaced all calls to ScalaPlugin.check and ScalaPlugin.checkOrElse w…

    dotta authored
    …ith Utils.tryExecute.
    
    I believe the latter better describes the method's intention.
    
    (cherry picked from commit 4a1c311)
Commits on Nov 7, 2011
  1. @skyluc

    Merge branch 'issue/classpath-validator-vs-sbt-vs-m2eclipse-1000728' …

    skyluc authored
    …into release/scala-ide-2.0.x
  2. @skyluc

    Fixed #1000728. Modified classpath validator to accept multiple scala…

    skyluc authored
    … library jars of compatible version.
    
    Extended tests for the new cases.
  3. @dragos

    Copy resources to the output directory. This runs the JDT Java builde…

    dragos authored
    …r for this purpose, even when there are no modified Java files.
    
    Fixed #1000636.
Commits on Nov 4, 2011
  1. @dragos

    Integrated reviews.

    dragos authored Iulian Dragos committed
  2. @dragos

    Reworked the way the presentation compiler is restarted when projects…

    dragos authored Iulian Dragos committed
    … change.
    
    - A project resets the presentation compiler of all projects that depend on it after a successful build.
    - A project resets its own presentation compiler when one of the projects it depends on has changes (such as a class path change)
    - A class path change, or an added source file, restarts the PC
    
    Fixed #1000699. Test #1000645.
Commits on Nov 1, 2011
  1. @skyluc

    Fixed #1000631. It is somehow link to inter-project dependency.

    skyluc authored
    Added check so markers are modified in the project is closed.
  2. @dragos
Commits on Oct 28, 2011
  1. @skyluc

    Re #1000631. Modified so the compilers are not reset when the classpa…

    skyluc authored
    …th is invalid.
    
    The reset in this case is useless, generates log and was making the tests fail on trully
    headless systems.
  2. @dragos

    Make 'resetPresentationCompiler' do nothing on reset, if the presenta…

    dragos authored
    …tion compiler
    
    was not yet initialized. This avoids waking up the compiler just to tell it to shutdown,
    and also eliminates a source of deadlocks or recursive initializations (for instance, if
    reset is called while initializing the presentation compiler). Fixed #1000704.
Commits on Oct 24, 2011
  1. @skyluc

    Re #1000631. Improvements from the review comments.

    skyluc authored
    - Added a asScalaProject() method to ScalaPlugin, to return only 'valid' scala projects
    - Fix case when more than one project classpath is changed at once (+ test)
  2. @skyluc

    Re #1000631. Changed from thread to job for the error marker creations

    skyluc authored
    A Job is more Eclipse-like, avoids creation of a new
    thread and manages lock on resources.
    Added comment as recommanded
  3. @skyluc
  4. @skyluc

    re #1000631. Adding a classpath validator. Initial commit. Breaks Sbt…

    skyluc authored
    …BuilderTest@dependencyTest.
    
    Added validator methods to ScalaProject.
    Added link for Java Model listener to validator when classpath is modified in ScalaPlugin.
    Added check if project classpath is valid in ScalaBuilder.
    Added set of tests for different configuration of the classpath.
Commits on Oct 21, 2011
  1. @dragos

    Integrated reviewers comments.

    dragos authored
  2. @dragos

    Completely evicted NameEnvironment use from ScalaProject.

    dragos authored
    Reworked allSourceFiles() and sourceOutputFolders() to use the new method. This does not lock the workspace, nor
    creates output folders as a side-effect, leading to one less deadlock. Fixed #1000662.
  3. @dragos

    Don't rely on NameEnvironment for retrieving source folders and their…

    dragos authored
    … output directories.
    
    Additionally, cleaned up some duplicated code between 'outputFolders' and 'sourceOutputFolders'.
    This changeset introduces a slight behavioral change, in that output directories are not created
    if they don't exist. This does not seem to pose any problems. Creating such folders locks the
    workspace, and if this happens during a build, it may lead to deadlocks.
    
    Fixed #1000662.
  4. @dragos

    General hardening of Scala compilation units.

    dragos authored Iulian Dragos committed
    Indexing, override indicators and the structure builder
    are going to report a crash in the compiler only once, then silently ignore it until the file is
    re-open. Certain exceptions, such as StackOverflowError, are reported by Eclipse in a dialog, and that
    can make editing impossible if the presentation compiler keeps crashing (because of a bug, of course).
    
    Disabled indexing and override indicators for Scala files in projects without the Scala nature (because
    that means there's no Scala library on the class path).
    
    Fixed #1000535 *again*.
Commits on Oct 12, 2011
  1. @skyluc

    Fixed #1000613. Modified code to handle this special case.

    skyluc authored
    To be able to handle files which are not part of the workspace (like a
    previous version from source control), Eclipse uses a non-existing
    project. This one has to be handle correctly.
Commits on Oct 10, 2011
  1. @dragos

    Integrated Mirco's review and rebased on the latest changes.

    Iulian Dragos authored dragos committed
Commits on Oct 7, 2011
  1. @dotta

    Unified logging under a single component Re #1000649. As part of this…

    dotta authored
    … commit I have replaced all calls to println with logger.debug or logger.info. This is much cleaner, IMO.
    
    There were mainly two reasons for refacting and unify the logger:
    
    1) Testing. It was previously impossible to mock the logger, which is a problem because I couldn't create a functional test for Re #1000531.
    
    2) Eventually we want to use Log4J (or similar) as a back-end logger (which ideally could be easily configured by customers). This is something we yet didn't explore and it will likely be tackled after releasing 2.0.
Commits on Oct 6, 2011
  1. @dragos

    Better presentation compiler initialization sequence:

    dragos authored Iulian Dragos committed
      - don't reset compilers during presentation compiler initialization (may lead to another 
    	attempt to initialize the same presentation compiler, leading to deadlocks in Cached)
      - reconcile calls are done after the presentation compiler is reset, passing again
    	the existing compilation units. Most importantly, this is not scheduled on the
    	UI thread. This allows calls to 'builder.clean' in non-UI environments (think 
    	tests and Jenkins).
Commits on Sep 28, 2011
  1. @dragos

    Switched to SBT builder by default. Moved IDESettings from package un…

    dragos authored
    …til to 'properties', to be together with
    
    the other Scala compiler settings.
  2. @dragos
Commits on Sep 12, 2011
  1. @dragos

    Additional compiler options (no warn, explain types). Added an edit b…

    dragos authored
    …ox (with completion) for additional command line arguments (since they vary across compiler versions).
    
    Fixed #1000547. Fixed #1000529.
Commits on Aug 31, 2011
  1. @dragos
Commits on Aug 24, 2011
  1. @hubertp

    Closes #1000566 and #1000565. Unlike SBT, which for compiling Java fi…

    hubertp authored
    …les uses straight java batch compiler, we will use eclipse's java builder (similarly to what we were doing in the past) and then run sbt's classfile analyzer to pick up dependencies correctly. sbt's sources were updated accordingly to allow for multiple output directories.
Commits on Aug 10, 2011
  1. @hubertp

    Merge sbt integration into our main branch. Sbt builder available by …

    hubertp authored
    …choosing it in the Scala -> Build Manager -> sbt. Have fun! Error reporting in mixed Scala/Java projects for Java files needs more work (eg getting location from stdout java compiler error messages) but other than that multi- and mixed-project integration works fine.
Something went wrong with that request. Please try again.