Commit Graph

17565 Commits

Author SHA1 Message Date
Mark Harrah 3e1142843e Translate errors from logic system to Natures system. 2014-01-24 14:36:46 -05:00
Mark Harrah 1afd1931c4 Translate errors from logic system to Natures system. 2014-01-24 14:36:46 -05:00
Mark Harrah 6a2e8947bb Acyclic negation checking in logic system that backs auto-plugins. 2014-01-24 14:36:36 -05:00
Mark Harrah 5add7306c2 Acyclic negation checking in logic system that backs auto-plugins. 2014-01-24 14:36:36 -05:00
Mark Harrah 359170b0f4 Test for automatic handling of AutoImport, AutoPlugin, and Build from binary plugins. 2014-01-24 14:36:36 -05:00
Mark Harrah 09c76f29a3 Discover all sbt-related modules (not just Plugin) and write names to resources for use from binaries. 2014-01-24 14:36:20 -05:00
Mark Harrah 7a38338509 logic system/auto-plugins: Provide deprecated methods for binary compatibility 2014-01-24 14:35:59 -05:00
Mark Harrah 30658f98bb API documentation and comments related to natures 2014-01-24 14:34:15 -05:00
Mark Harrah b8619f4aae Main part of integrating natures into project loading. 2014-01-24 14:34:15 -05:00
Mark Harrah ca3877e138 Logic system supporting auto plugins and initial outline of AutoPlugin and Natures types.
* Not integrated into project loading
 * Doesn't yet check that negation is acyclic before execution
2014-01-24 14:30:12 -05:00
Mark Harrah 322f6de655 Logic system supporting auto plugins and initial outline of AutoPlugin and Natures types.
* Not integrated into project loading
 * Doesn't yet check that negation is acyclic before execution
2014-01-24 14:30:12 -05:00
Dan Sanduleac 1e549eb3dc Fix binary compatibility with 0.13 2014-01-23 12:07:37 +00:00
Dan Sanduleac ba4d57b120 Fix binary compatibility with 0.13 2014-01-23 12:07:37 +00:00
Josh Suereth 1d627797d7 Merge pull request #1093 from xerial/add-sbt-sonatype
Add link to sbt-sonatype plugin
2014-01-21 05:31:37 -08:00
Josh Suereth 899635bf41 Merge pull request #64 from sbt/wip/travis-ci
Adding travis configuration to the build.
2014-01-21 05:20:35 -08:00
Josh Suereth 67648b7626 Add rpmbuld to travis-ci config. 2014-01-21 08:17:24 -05:00
Taro L. Saito 45cc2fd111 Add link to sbt-sonatype plugin 2014-01-21 22:15:11 +09:00
Josh Suereth c2fcf34896 Adding travis configuration to the build. 2014-01-21 08:09:21 -05:00
Josh Suereth a16832acd3 Merge pull request #62 from braoru/rpm-deps
Added rpm dependencies to the rpm package
2014-01-21 05:01:40 -08:00
Josh Suereth 09d3487167 Merge pull request #1092 from gkossakowski/scala-2.11-compat
Build for Scala 2.11
2014-01-20 08:19:56 -08:00
Grzegorz Kossakowski ff0fd6eec6 Update dependencies to Scala 2.11.0-M7.
I had to sprinkle some excludes due to dependency of scala-compiler M7 on
M6 modules. Those excludes won't be needed by the time M8 is out.
2014-01-18 01:09:24 +01:00
Adriaan Moors 034eb26af9 Scala 2.11 modules now under org.scala-lang.modules
Using 1.0-RC2 for scala-xml, 1.0-RC1 for scala-parser-combinators.
2014-01-18 00:04:32 +01:00
Dan Sanduleac fda1d25350 Expose overwrite flag in IvyActions.publish, and by default only overwrite if it's a snapshot 2014-01-17 10:45:57 +00:00
Dan Sanduleac 0199a93ffb Expose overwrite flag in IvyActions.publish, and by default only overwrite if it's a snapshot 2014-01-17 10:45:57 +00:00
Johannes Rudolph b4667b7564 Merge pull request #44 from 2beaucoup/master
match scala-library just by org/name
2014-01-16 01:35:21 -08:00
2beaucoup 1f65c0c86b only match scala lib by org/name 2014-01-15 17:07:50 +01:00
Josh Suereth c699e66342 Merge pull request #1082 from jsuereth/wip/sbt-server-api-fixes
Fixes to the internal API hooks for the sbt server.
2014-01-14 09:47:38 -08:00
Josh Suereth 2abe7574df Fixes to the internal API hooks for the sbt server.
* Alter the TaskProgress listener key to be `State => TaskProgress` so it
  can be instantiated from the current server/sbt state.
* Expose the xsbti.Reporter interface for compilation through to sbt builds.
2014-01-14 12:42:40 -05:00
Sébastien Pasche b360b59f5a Cleaning version number 2014-01-13 16:46:32 +01:00
Sébastien Pasche cdf2f4d89d Removing useless depsm thx to mighty sbt resolver 2014-01-13 16:46:17 +01:00
Grzegorz Kossakowski cef1d28f22 Merge pull request #1076 from gkossakowski/bring-brack-incDebugProp
Bring back and deprecate `Incremental.incDebugProp`.
2014-01-13 07:40:05 -08:00
Grzegorz Kossakowski 9e7e93c632 Bring back and deprecate `Incremental.incDebugProp`.
The ae15eccd9c accidentally removed
`Incremental.incDebugProp` which broke Scala IDE build that relies on it.

We bring back that val but at the same time we deprecate it because we
have better mechanism for configuring incremental compiler now.

I also added a little comment with the history of `incDebugProp` which
explains proper migration path.
2014-01-13 16:29:16 +01:00
Sébastien Pasche 4d1d5c0a3d Updating minor version 2014-01-13 15:35:41 +01:00
Sébastien Pasche d880e93192 Adding rpm dependencies Requirements and Provides 2014-01-13 15:35:24 +01:00
Jens Halm 0099b4ab55 add Laika documentation plugin to the list of community plugins 2014-01-09 08:16:32 -05:00
sam e308cc31c7 Added sbt-scoverage to list of plugins. 2014-01-08 18:01:19 -05:00
Grzegorz Kossakowski dcb327e6f4 Do not compute name hashes when name hashing is disabled
We should compute name hashes only when name hashing is enabled.
Otherwise, we just store an empty value for name hashes.
2014-01-08 17:37:43 -05:00
Josh Suereth b9489c6035 Fix compilation failure due to missing type annotation. 2014-01-07 21:42:24 -05:00
Grzegorz Kossakowski fe7f946ae2 Merge pull request #1069 from benjyw/0.13-format-v4-A
Make analysis file portable.
2014-01-07 15:50:23 -08:00
Grzegorz Kossakowski 27de5da9d4 Merge pull request #1069 from benjyw/0.13-format-v4-A
Make analysis file portable.
2014-01-07 15:50:23 -08:00
Grzegorz Kossakowski b581b60aa4 Merge pull request #1069 from benjyw/0.13-format-v4-A
Make analysis file portable.
2014-01-07 15:50:23 -08:00
Benjy 2e1809e17e Make analysis file portable.
Serializes CompileSetup as text instead of base64-encoded
binary-serialized object.

This is necessary so that file paths in the CompileSetup can be
rebased when porting analysis files between systems.
2014-01-07 22:39:47 +00:00
Grzegorz Kossakowski 0d3b94a93c Merge pull request #1042 from gkossakowski/name-hashing
Implement name hashing algorithm in incremental compiler
2014-01-06 15:40:18 -08:00
Grzegorz Kossakowski e858a82152 Merge pull request #1042 from gkossakowski/name-hashing
Implement name hashing algorithm in incremental compiler
2014-01-06 15:40:18 -08:00
Grzegorz Kossakowski af39679549 Merge pull request #1042 from gkossakowski/name-hashing
Implement name hashing algorithm in incremental compiler
2014-01-06 15:40:18 -08:00
Grzegorz Kossakowski f4940df48d Make all APIChange subclasses final.
They should have been final from the beginning. We are fixing that
omission now.
2014-01-07 00:20:17 +01:00
Grzegorz Kossakowski 6cf79aba08 Mark test that passes when name hashing is enabled.
There's one test that starts to pass when we enable name hashing. It's
`import-class` which tests whether tracking of dependencies that arise
from imports is properly tracked. The name hashing algorithm uses different
dependency tracking compared to the old algorithm and the new dependency
extraction logic does handle import tree nodes properly so the test passes.

We "mark" the test passing by copying it and enabling the name hashing
flag in it. This is done similarly as in 940f7ff46d.
2014-01-07 00:20:17 +01:00
Grzegorz Kossakowski cd6b2a2a8c Mark tests that regress when name hashing is enabled.
There are number of scripted tests that fail if we switch to name hashing
being enabled by default. There's no easy way to mark those tests as
pending only when name hashing flag is enabled so I decided to "mark" them
by copying those tests, enabling name hashing in each of them and mark
those copies as pending.

Here's explanation of each failing test:

  * `constants` and `java-static` fail due to typer inlining constants
    so we can't track dependencies properly (see SI-7173)
  * `macro` fails for similar reasons as above: typer expands macros
    and we can't track dependencies properly
  * `struct` fails because it turns out that we need to handle structural
    types in a special way both at declaration and use sites. At the moment
    we handle them explicitly at declaration site so `struct-usage` passes
    but `struct` fails
2014-01-07 00:20:17 +01:00
Grzegorz Kossakowski a48ab0d38b Implement name hashing algorithm in incremental compiler.
Provide implementation of invalidation logic that takes computed
name hashes into account. The implementation is spread amongst two
classes:

  1. `IncrementalNameHashing` which implements a variant of
     incremental compilation algorithm that computes modified
     names and delegates to `MemberReferenceInvalidationStrategy`
     when invalidating member reference dependencies
  2. `MemberReferenceInvalidationStrategy` which implements the
     core logic of dealing with dependencies introduced by member
     reference. See documentation of that class for details.

The name hashing optimization is applied when invalidating source files
having both internal and external dependencies (in initial iteration),
check `invalidateByExternal` and `invalidateSource` methods for details.

As seen in implementation of `MemberReferenceInvalidationStrategy`
the name hashing optimization is not applied when implicit members
change.

NOTE: All functionality introduced in this commit is enabled only
when `IncOptions.nameHashing` flag is set to true.

The `source-dependencies/transitive-memberRef` test has been changed
to test name hashing variant of incremental compilation. The change
to invalidated files reflects the difference between the old and the
new algorithm.

Also, there a few new tests added that cover issues previously found
while testing name hashing algorithm and are fixed in this commit.
Each paragraph describes a single test.

Add a test case which shows that detect properly changes to type aliases
in the name hashing algorithm. See gkossakowski/sbt#6 for details.

Add test covering bug with use of symbolic names (issue
gkossakowski/sbt#5).

Add a test which covers the case where we refer to a name that is
declared in the same file. See issue gkossakowski/sbt#3 for details.
2014-01-07 00:20:17 +01:00
Josh Suereth 4207978f89 Merge pull request #1066 from jsuereth/wip/launcher-improvements
Launcher can now load servers in addition to regular applications.
2014-01-06 13:57:28 -08:00