Commit Graph

2281 Commits

Author SHA1 Message Date
Mark Harrah 3035cbf2d1 update version for backported Parser deprecations 2013-01-03 17:40:07 -05:00
Mark Harrah f0a72e53e8 use proper separator in command tab completion 2013-01-03 11:37:40 -05:00
Mark Harrah 4434d84f65 require a failure message for parser 2013-01-03 11:37:40 -05:00
Mark Harrah aba717c0c5 cleanup imports in BuildStructure 2013-01-03 11:37:40 -05:00
Mark Harrah bba310d162 Docs: fix reference to 0.7 docs 2013-01-03 11:37:40 -05:00
Mark Harrah b5587700fd use provisionally published sbinary 2012-12-31 14:06:28 -05:00
Mark Harrah b9a4526bce fix credentials for publishing 2012-12-31 12:42:36 -05:00
Mark Harrah 21fc872493 build: disable API/SXR generation until SI-6812 is resolved 2012-12-31 11:26:19 -05:00
Mark Harrah fad578dadc Docs: for 0.13 change summary, put in ignored toctree, link from Changes, fix subsection title 2012-12-31 09:36:19 -05:00
xuwei-k b5646946e4 ivy version 2.3.0-rc1 in documents 2012-12-31 09:23:23 -05:00
Mark Harrah c358512e0b use 2.10.0 final 2012-12-31 09:23:14 -05:00
Mark Harrah 14ecc119ed add fix for #620 to the 0.12.2 changes page 2012-12-20 12:41:02 -05:00
Mark Harrah 935267b96b minor cleanup of previous commit: var->val in sbt.JLine 2012-12-20 09:25:35 -05:00
Anthony f7031502e4 Multi-line prompt text offset issue (ticket #625) 2012-12-20 08:56:20 -05:00
Mark Harrah cf355f1822 Fix incremental compilation problem with package objects inheriting from invalidated sources in a subpackage.
Resolution of https://issues.scala-lang.org/browse/SI-4695 seems to be to deprecate
inheriting from a class in a subpackage.  This commit is an alternative solution,
possibly to be reverted or restricted if resolution of SI-4695 changes or if this
proves to be too conservative in practice.

Review by @gkossakowski.  With separate inheritance/function call dependency tracking,
this probably should only pull in package objects with inheritance dependencies on
invalidated files.
2012-12-19 10:17:56 -05:00
Mark Harrah ea3e5c3548 Allow cleanKeepFiles to contain directories
The directory contents will be kept as will empty directories.
2012-12-19 10:17:56 -05:00
Mark Harrah 6c748d97c5 Docs: note that plugins are loaded in a parent loader of build code 2012-12-19 10:17:56 -05:00
Mark Harrah 329b42453b move Eval test to correct location 2012-12-19 10:17:56 -05:00
Mark Harrah f6317a5c75 remove deprecated Extracted.evalTask 2012-12-19 10:17:56 -05:00
Mark Harrah dd66d8b17a API documentation in Extracted 2012-12-19 10:17:56 -05:00
Mark Harrah c86c24c560 Docs: fix typo 2012-12-19 10:17:56 -05:00
Mark Harrah c2968afa25 initial 0.13 change summary 2012-12-17 19:15:26 -05:00
Mark Harrah 8ada452fa7 Docs: fix typo 2012-12-17 08:32:20 -05:00
Mark Harrah d156ccfe4e Further refinements to Scala version handling
- override location of resolved Scala jars when scalaInstance is unmanaged
- document current behavior: scalaHome, update, scalaInstance, autoScalaLibrary, managedScalaInstance
2012-12-16 18:56:22 -05:00
Grzegorz Kossakowski ae211ee33e Cleanup parameter list of `ScriptedTests`.
All of `sbtVersion`, `defScalaVersion` and `buildScalaVersions` were
not used anymore. According to @harrah they are coming from really
old days of sbt and are not needed because of changes to how sbt
interacts with different Scala versions.
2012-12-14 12:57:47 -05:00
Mark Harrah 71f12fbcdb 2.9 compatibility for incremental compilation modules 2012-12-11 14:41:22 -05:00
Grzegorz Kossakowski 4c1c31e190 Fix for dependency on class file corresponding to a package. (#620)
While trying to determine binary dependencies sbt lookups class files
corresponding to symbols. It tried to do that for packages and most of the
time would fail because packages don't have corresponding class file
generated. However, in case of case insensitive file system, combined
with special nesting structure you could get spurious dependency.
See added test case for an example of such structure.

The remedy is to never even try to locate class files corresponding to
packages.

Fixes #620.
2012-12-10 13:53:52 -05:00
Grzegorz Kossakowski 482b59be5d Add test for pickled refinement types bug (#610). 2012-12-10 09:22:57 -05:00
Grzegorz Kossakowski bdfc16b5f4 Add test for pickled existential types bug (#616)
This test fails at the moment because there's one unnecessary
compile iteration performed. Thus the test is marked as pending.

Since the test is compiler version specific, I set it to 2.9.2
(latest stable version).
2012-12-10 09:22:38 -05:00
Grzegorz Kossakowski 78b0f485fa Add `compilations` field to `Analysis`.
We store `Seq[xsbt.api.Compilation]` in `Analysis`. Compilation are
being appended to sequence for every iteration of the incremental
compiler.

Note that `Compilation`s are never removed from the sequence unless
you start from scratch with empty `Analysis`. You can do that by using
sbt's `clean` command.

The main use-case for using `compilations` field is to determine how
many iterations it took to compilen give code. The `Compilation` object
are also stored in `Source` objects so there's an indirect way to recover
information about files being recompiled in every iteration.

Since `Analysis` is persisted you can use this mechanism to track entire
sessions spanning multiple `compile` commands.
2012-12-10 09:15:52 -05:00
Mark Harrah 532c72e60e initial list of 0.12.2 changes 2012-12-09 20:40:41 -05:00
Mark Harrah 230a13d010 use new input task syntax for project/settings 2012-12-09 20:40:41 -05:00
Mark Harrah f388b07632 fix inputTask construction method and put sbt package object in proper directory 2012-12-09 20:40:41 -05:00
Mark Harrah e3745540c9 More cleanup of Scala version handling, including managedScalaInstance to control automatic 'scala-tool' configuration and dependencies. 2012-12-09 20:40:41 -05:00
Mark Harrah 912948f5c8 update 'apply' help string to include -cp option 2012-12-09 20:40:41 -05:00
Mark Harrah 1d18532bf0 mark Typesafe repositories as bootOnly, remove Sonatype snapshots now that Scala is resolved by the project 2012-12-09 20:40:41 -05:00
Mark Harrah d4fd136192 support defining Projects in .sbt files
vals of type Project are added to the Build
2012-12-09 20:40:41 -05:00
Mark Harrah 9a79af69c9 Pending test for #466, which is not fixed by running after pickler instead of typer. Ref #609. 2012-12-09 20:40:41 -05:00
xuwei-k ce9b43e9bd add some plugins and update url 2012-12-09 09:01:27 -05:00
Grzegorz Kossakowski ef39aeb9c1 Follow source layout convention supported by Eclipse.
Moved source files so directory structure follow package
structure. That makes it possible to use Scala Eclipse plugin
with sbt's source code.
2012-12-07 10:27:08 -08:00
Grzegorz Kossakowski 56dff4855d Follow package structure for generated `ScalaKeywords.scala`.
`ScalaKeywords.scala` is now being generated at location that
follows package structure.
2012-12-07 10:18:34 -08:00
Adriaan Moors f7be122eb4 Run apiExtractor after pickler (configurable)
Extract the api after picklers, since that way we see the same symbol
information/structure irrespective of whether we were typechecking
from source / unpickling previously compiled classes.

Previously, the apiExtractor phase ran after typer.

Since this fix is hard to verify with a test (it's based on the
conceptual argument above, and anecdotal evidence of incremental
compilation of a big codebase), we're providing a way to restore the
old behaviour: run sbt with -Dsbt.api.phase=typer.

This fixes #609.
2012-12-06 19:35:51 -05:00
Adriaan Moors cb0e723923 Fix #610: represent refinement typerefs stably
goal:

a representation of a type reference to a refinement class that's stable
across compilation runs (and thus insensitive to typing from source or
unpickling from bytecode)

problem:

the current representation, which corresponds to the owner chain of the
refinement:

  1. is affected by pickling, so typing from source or using unpickled
  symbols give different results (because the unpickler "localizes"
  owners -- this could be fixed in the compiler in the long term)

  2. can't distinguish multiple refinements in the same owner (this is
  a limitation of SBT's internal representation and cannot be fixed in
  the compiler)

solution:

expand the reference to the corresponding refinement type: doing that
recursively may not terminate, but we can deal with that by
approximating recursive references (all we care about is being sound for
recompilation: recompile iff a dependency changes, and this will happen
as long as we have one unrolling of the reference to the refinement)
2012-12-06 19:11:12 -05:00
Mark Harrah f55c8ca15e Tab completion of right side of setting in 'set' command no longer necessary with the new task syntax. 2012-12-06 19:11:07 -05:00
Mark Harrah 518bbc4077 Docs: more cleanup for 0.13 2012-12-06 19:11:07 -05:00
Mark Harrah 154134adb0 fix scripted tests/* 2012-12-06 12:15:34 -05:00
Mark Harrah 24be2e5f25 Only make one call to test frameworks per test name. Fixes #520.
- Requires selecting one fingerprint if there are more than one
- The selected fingerprint is by reverse ordering of Framework.tests
- Reverse ordering chosen to work with junit-interface without changes
2012-12-06 12:15:34 -05:00
Mark Harrah a3047acc20 fix scripted tests 2012-12-06 07:25:41 -05:00
Mark Harrah 769ecbace5 add scala-tool configuration and dependencies when configuring via pom.xml/ivy.xml 2012-12-06 07:25:41 -05:00
Mark Harrah 214cd62a2a use latest, renamed proguard-base artifact 2012-12-06 07:25:40 -05:00