Commit Graph

1251 Commits

Author SHA1 Message Date
Mark Harrah ca9f32c7d1 Include projects without defined settings in KeyIndex. 2013-06-28 00:01:19 -04:00
Mark Harrah 0e009b1480 Exclude class directories from plugin classpath used for updateSbtClassifiers: classified jars not available
Fixes #798.
2013-06-27 14:12:47 -04:00
Eugene Yokota b880c5bc16 Supply default terminal width to fix #795 2013-06-25 10:37:56 -04:00
Mark Harrah aef6df3e20 handle undefined target directory in unique target check 2013-06-23 19:57:31 -04:00
Mark Harrah 602c1759a1 Make ExecuteProgress listener configurable via executeProgress setting.
Experimental, so everything is private[sbt].
2013-06-23 19:57:30 -04:00
Mark Harrah 1cc2f57e15 Experimental task progress interface. Fixes #592.
Set sbt.task.timings=true to print timings for tasks.
This sample progress handler shows how to get names for tasks and
deal with flatMapped tasks.  There are still some tasks that make
it through as anonymous, which needs to be investigated.

A setting to provide a custom handler should come in a subsequent commit.
2013-06-23 19:57:30 -04:00
Mark Harrah ce1c8b0ebc Better auto project ID handling. Ref #776.
* Consolidate project ID validation and normalization into Project methods
* Provide an earlier and more detailed error message when the directory
  name can't be used for the project ID
2013-06-23 19:57:30 -04:00
Mark Harrah 6f0028e50d Use last path component of a URI in the staged path. 2013-06-23 19:57:30 -04:00
Mark Harrah 6091e60611 Show project version in 'about' 2013-06-19 19:18:40 -04:00
Mark Harrah 7796715e88 Move deprecated scala-tools conveniences to private[sbt] accessibility 2013-06-19 17:15:22 -04:00
Mark Harrah 464f093017 Handle newer predefined launcher types in boot overrides 2013-06-19 17:15:22 -04:00
Mark Harrah b1cba90332 Promote new State methods to public 2013-06-19 12:01:45 -04:00
Mark Harrah 284cddff70 set position on parameter references in task/setting macros 2013-06-19 11:53:11 -04:00
Mark Harrah 2f9d68e869 Require projects to have unique target directories.
Configuring projects so that target directories overlap is usually
unintentional and the error message that results is usually unrelated
to the cause.
2013-06-18 18:43:50 -04:00
Mark Harrah 800bd3698a Add syntax summary to 'set' and 'inspect' help. Follow-up to #776. 2013-06-17 12:06:13 -04:00
Mark Harrah 53f75a85cc Basic named commands now print usage if the argument parser fails on empty input. Fixes #776.
The Help for these commands now needs to be cleaned up, since they were not written with
this feature in mind.  In particular,

* consider adding syntax summaries in the short help strings
* alternatively, add the syntax summary data elsewhere for use specifically by this feature
* display a better message when there is no short help string, such as
   "See 'help <command>' for usage." or just displaying the lower level error message, such as
   "Expected whitespace"
2013-06-17 12:06:13 -04:00
Mark Harrah 53e7960976 separate out help message functions 2013-06-17 12:06:13 -04:00
Mark Harrah 74438d0c72 handle empty help list in aligned printing 2013-06-17 12:06:13 -04:00
Mark Harrah 0780a6c08a Key parsing improvements. Ref #776.
* Explain context of expected ':' and '/' error messages
* Restore strict project ID parsing to get proper message about invalid project ID
2013-06-17 12:06:13 -04:00
Mark Harrah fb27f5558c Propagate taskDefinitionKey in Incompletes from flatMaps. Ref #784. 2013-06-15 23:55:05 -04:00
Mark Harrah 5a252fae3a ScopeFilter.debug to print accepted and rejected scopes 2013-06-10 17:05:11 -04:00
Mark Harrah 271b03550b Record artifact, module ID, and config for products 2013-06-01 10:56:30 -04:00
Mark Harrah cd2b1edf6c IncOptions class backup directory should be per-compilation, not shared.
Otherwise, one concurrent compilation will clean the directory out from under another.
2013-05-30 15:00:26 -04:00
Mark Harrah 431a0be42d Pull sbt dependency version from sbtVersion to facilitate cross-building plugins. 2013-05-30 15:00:26 -04:00
Mark Harrah 8d13043afa Only add automatically detected plugins to options once. Fixes #757. 2013-05-28 07:56:48 -04:00
Mark Harrah 598b6209e3 Put summary not available message at the debug level. Review by @cheeseng. 2013-05-14 09:09:20 -04:00
Mark Harrah 0bb460c03e Derive testGrouping,compilers,scalaBinaryVersion. Don't go through compileInputs for doc. Fixes #539, #708, #391. 2013-05-09 17:28:50 -04:00
Mark Harrah e1acc12290 In 'set' command, handle keys in new scopes in the affected settings part 2013-05-09 17:28:50 -04:00
Mark Harrah 7ed56d3fcd Show defining locations when there are cycles between derived settings 2013-05-09 17:28:50 -04:00
Mark Harrah 6c0f47ef48 Default settings, which give internal sbt settings something like Plugin.globalSettings. 2013-05-09 17:28:40 -04:00
Mark Harrah 60b714e8de require dynamic initialization to be explicitly enabled for derived settings 2013-05-09 17:28:39 -04:00
Mark Harrah 994886ee51 display derived settings information in 'inspect' 2013-05-09 17:28:39 -04:00
Mark Harrah dfe418b3c3 Derived settings, which allows injecting settings wherever their dependencies are defined.
This is an advanced feature initially intended for internal sbt use.
2013-05-09 17:27:43 -04:00
Mark Harrah 6b32aa661c use Option constructor instead of Some for potentially null file lock 2013-05-08 12:56:50 -04:00
Mark Harrah 51bd1e8ceb Include files with zip extension in unmanaged jars. Fixes #750. 2013-05-06 08:28:34 -04:00
Mark Harrah f7ce8334c3 Merge remote-tracking branch 'scalatest/new-framework-api-12' into 0.13 2013-05-01 08:34:01 -04:00
Mark Harrah 6a70b9f565 Proper support for stashing on-failure handlers. Fixes #732. 2013-04-30 18:55:02 -04:00
Mark Harrah 8813712c60 Versioned global sbt directory. Fixes #735. 2013-04-30 18:55:02 -04:00
Mark Harrah fb0a8c463b Scope packagedArtifacts for publish*Configuration to publish* to make it easier to filter artifacts for different publish targets. 2013-04-26 18:51:58 -04:00
cheeseng 48fb0c4ed6 Initial working version of makeParallel that support nested tasks. 2013-04-25 00:06:52 +08:00
cheeseng 3109912d00 Added support of nested test tasks when tests are executed InProcess and sequentially. 2013-04-25 00:06:52 +08:00
cheeseng ad18b4f3ae Added code to tag test task using Array[String] returned from Task.tags method. 2013-04-25 00:06:51 +08:00
cheeseng f862e64911 Added support of custom summary message returned from Runner.done method. 2013-04-25 00:06:51 +08:00
cheeseng 1ec2118219 -Moved code that count test results from TestLogger to SuiteResult.
-Print the results in Tests.showResult.
2013-04-25 00:06:41 +08:00
cheeseng a76523a5f6 Added >1 framework class per framework support, this enables sbt to support both old and new framework API at the same time. 2013-04-23 12:00:05 +08:00
cheeseng f38a244d0f Added code to call Runner's done() method in both InProcess and SubProcess cases. 2013-04-23 12:00:03 +08:00
cheeseng 244e65cd79 -Changed behavior so that only a single Runner instance is used to run tests in multiple test groups.
-Added code to support remoteArgs in test-interface 1.0.
2013-04-23 11:09:50 +08:00
cheeseng b83d378cd0 Changed ForkTests to call acceptorThread.join(), to make sure that acceptorThread is finished before Acceptor.result is called. 2013-04-23 11:09:48 +08:00
cheeseng 18bc8423b5 Initial version that uses new framework API in test-interface 1.0:
-Changed usages and implementations of interfaces in org.scalatools.testing._ to use/implement interfaces/classes in sbt.testing._ instead.
-Added sbt.testing to interfaceFilter in TestFramework.createTestLoader method to enable loading of classes in sbt.testing package.
-Added FrameworkWrapper.java to wrap old framework implementations.
-Added code in ForkMain.java to serialize Selectors.
2013-04-23 11:09:37 +08:00
Mark Harrah 8d0c1408c0 Allow -cp argument to 'apply' command to be quoted. Fixes #724. 2013-04-12 12:47:45 -04:00
Mark Harrah a4c059cb7e Better auto-generated IDs for default projects. Fixes #554.
For the global plugins project, the default ID is "global-plugins".
For a normal project, the default ID is the name of the build directory.
The ID of a build definition for one of the above appends -build.
2013-04-10 20:15:28 -04:00
Mark Harrah 96b2ca7ce4 Use a default root project aggregating all projects if no root is defined. Fixes #697.
Ref #554.
2013-04-10 20:15:27 -04:00
Mark Harrah 23be591c95 memoize .sbt file loading within a build and only add a Project once
This fixes an infinite loop when defining a Project in a .sbt file
with the build base directory as the project base directory.
This allows the standard behavior for interpreting settings from
.sbt files for both Projects defined in .sbt files as well as in
.scala files. That is, settings in .sbt files in "." go in all
projects with "." as their base directory.

Ref #554.
2013-04-10 20:15:27 -04:00
Mark Harrah b990a29c09 Undeprecate ScalaInstance.libraryJar, which will be reliable for modularized Scala. 2013-04-08 09:21:59 -04:00
Mark Harrah 382b55402b don't put Scala jars on forked boot classpath by default
Ideally, Scala jars on the normal classpath would be moved to the boot classpath,
but this is more involved.
2013-04-05 09:02:24 -04:00
Mark Harrah f18ddd2a88 make ScopeFilter accessible without a qualifier
Should be improved: ideally there would only be a single top-level alias.
2013-04-03 12:44:35 -04:00
Mark Harrah 322a49faba Make autoCompilerPlugins support compiler plugins defined in a internal dependency
requires the compiler plugin project to define exportJars := true
2013-04-03 12:44:35 -04:00
Mark Harrah 45155e2616 move to <key>.all inDefaults 2013-03-28 16:08:24 -04:00
Mark Harrah 7605818f04 workaround for ThisProject not being properly resolved by Scope.resolve* 2013-03-28 16:08:23 -04:00
Mark Harrah df5e79e3be API for evaluating a setting or task in multiple scopes 2013-03-27 09:17:53 -04:00
Mark Harrah 2f13b7a8c7 add publish-m2 task for publishing to ~/.m2/repository. Fixes #485. 2013-03-27 09:17:53 -04:00
Mark Harrah 6327e11a59 Object->AnyRef change in EvalTest 2013-03-18 09:52:57 -04:00
Mark Harrah 5f41b06026 fix stray val 2013-03-12 15:29:27 -04:00
Mark Harrah fd2823e827 clean up 'inspect' command and limit Related section to 10 keys 2013-03-12 14:51:19 -04:00
Mark Harrah 718fa91772 Publish test artifacts in Test configuration and corrects classifier to 'tests'. Fixes #683 2013-03-08 20:11:53 -05:00
Mark Harrah 5b80e8c941 use .evaluated instead of .value for InputTasks 2013-03-08 14:23:31 -05:00
Mark Harrah 387f06e73a partialInput/fullInput methods on InputTask to apply input programmatically. ref #407. 2013-03-08 14:23:31 -05:00
Mark Harrah d6f78db0c9 Construct input tasks in multiple steps to allow input task reuse. Fixes #407. 2013-03-08 14:23:30 -05:00
Mark Harrah ada663106d Further Scala handling refinements. fixes #690.
* No longer override the Scala version to force it to be scalaVersion.  Custom configurations might use an independent version.
* Only substitute the jars from scalaHome when the major.minor versions line up for the substituted artifact
* Allow the Scala version to use for dependency resolution to be specified when using ++ to change Scala home: ++ version=/path/to/scala/home
2013-03-05 17:22:21 -05:00
Mark Harrah 925ec98900 Restore class files after an unsuccessful compilation.
This is useful when an error occurs in a later incremental step that
requires a fix in the originally changed files.

CC @gkossakowski
2013-03-04 07:24:31 -05:00
Mark Harrah bf1831eb88 fix TagsTest test size generator and properly set Tags.All on tag maps 2013-03-03 19:43:37 -05:00
Mark Harrah 1fdf3fa38c support explicit types on lazy vals in definingValName
lazy val x: Project = project has a rather different enclosing tree
 than lazy val x = project.
2013-03-03 19:43:37 -05:00
Mark Harrah 54b103f4c7 Tag the actual test task and not a later task. Fixes #692. 2013-03-03 19:43:36 -05:00
Mark Harrah 9d82718897 disable printing of success for 'export' command 2013-02-28 17:59:39 -05:00
Mark Harrah a263b7e91f when exporting settings, send the output directly to the console 2013-02-28 17:59:38 -05:00
Mark Harrah dde24d5e5a make classpaths exported 2013-02-28 17:59:38 -05:00
Mark Harrah f2d29d8678 Export approximate command lines executed for 'doc', 'compile', and 'console' 2013-02-28 17:59:38 -05:00
Alex Dupre 92e99cfef0 Switch from JLine 1.0 to 2.10. 2013-02-26 07:39:33 -05:00
Mark Harrah 1870edfd27 more deprecations 2013-02-26 07:39:23 -05:00
Mark Harrah 29a26a13ab Custom implementation of Streams can be bound to Keys.stateStreams in State. 2013-02-25 09:24:05 -05:00
Mark Harrah 0cf702efd5 Move GlobalLogBacking.newLogger to GlobalLogging to make the role of GlobalLogBacking clearer. 2013-02-25 09:24:05 -05:00
Mark Harrah f6d73128fc deprecations 2013-02-25 09:24:04 -05:00
Mark Harrah a61421dcb8 Split ConsoleOut into its own file, track the global ConsoleOut and use it instead of StandardMain.console 2013-02-25 09:24:04 -05:00
Mark Harrah 68443fc047 minor improvement to use stripSuffix in DotGraph 2013-02-22 16:31:32 -05:00
Mark Harrah 76ebc3a01d force test definition sequences to fix tests/order 2013-02-21 20:45:07 -05:00
Mark Harrah 5b5577a187 Replace Scala jars in UpdateReport with ScalaProvider jars in more situations. Fixes #661.
Specifically, when the Scala version for sbt is the same as that for the project being built,
the jars in UpdateReport should be the same as those in ScalaProvider.  This is because the
loader will come from the ScalaProvider, which uses jars in the boot directory instead of the
cache.  The first part of the fix for #661 checks that loaded classes come from the classpath
and so they need to line up.
2013-02-21 20:44:26 -05:00
Mark Harrah bd0f208302 Class loader that restricts loading to a classpath. Ref #661.
It is now used for consoleProject, run, and test.  This loader verifies
that all classes loaded through it came from a particular classpath or
from the "root" loader.  Root loader here is the launcher loader so that
those classes with native bindings come from that shared loader.
2013-02-21 20:44:26 -05:00
Mark Harrah 98e2662bc4 Make full set of ForkOptions configurable for both run and test. Fixes #665.
Environment variables may be passed by configuring the envVars task.
2013-02-21 20:44:26 -05:00
Mark Harrah e06ada8fb7 Add help for ++ and + commands 2013-02-19 14:33:22 -05:00
Mark Harrah 2047849b50 remove deprecated command strings 2013-02-19 14:33:22 -05:00
Mark Harrah 824f10aa9a better error message when help search syntax isn't a valid java.util.regex 2013-02-19 14:33:22 -05:00
Grzegorz Kossakowski 70036812ab Introduce incremental compiler options.
Introduce a way to configure incremental compiler itself instead
of underlying Java/Scala compiler.

Specific list of changes in this commit:
  * Add a method to `xsbti.compile.Setup` that returns incremental
    compiler options as a `java.util.Map<String, String>`. We considered
    statis interface instead of a `Map` but based on mailing
    list feedback we decided that it's not the best way to go because
    static interface is hard to evolve it by adding new options.
  * Since passing `java.util.Map<String, String>` not very convenient
    we convert it immediately to `sbt.inc.IncOptions`
  * Add options argument to various methods/classes that implement
    incremental compilation so in the end options reach
    `sbt.inc.IncOptions` object
  * Add `incOptions` task that allows users to configure incremental
    compiler options in their build files. Default implementation of
    that tasks returns just `IncOptions.DEFAULT`
  * Both system property `xsbt.inc.debug` and `IncOptions.relationsDebug`
    trigger debugging of relations now. In the near future, we should
    deprecate use of `xsbt.inc.debug`.
2013-02-19 12:23:07 -05:00
Grzegorz Kossakowski 4fe0c02536 Break long argument list into multiple lines.
Some methods take a lot of arguments and I'm about to add one more
which will make them too long for easy reading.

This change is changes code formatting only. That's done on purpose
to make it easier to review other changes.
2013-02-19 12:18:26 -05:00
Grzegorz Kossakowski d6f4c5ae4f Strip down trailing whitespace.
I have Eclipse configured to do that automatically when saving file.
I decided to finally commit those changes to files I touch a lot.
2013-02-19 12:18:26 -05:00
Mark Harrah 9ab1b98d2a Use @compileTimeOnly for .value and .parsed methods.
Needed to set position on wrapper method for correct error message position.
2013-02-19 08:54:40 -05:00
Mark Harrah ae74fff88c When serially executing tests*, order tests by testOnly filter order
* parallelExecution in test := false

cc @bantonsson
2013-02-13 10:27:43 -05:00
Mark Harrah 4b61747dfc remove deprecated scaladocOptions 2013-02-13 08:12:51 -05:00
Mark Harrah 76e0a941ba Update to 2.10.1-RC1
Needed an explicit type in PMap to workaround an error.
Need to drop tuple assignment of parser.parsed in input task macro as a workaround
  for macro/resetAllAttrs/pattern matching/annotation issue in RC1.
2013-02-13 07:17:20 -05:00
Mark Harrah c0b1bb51e6 -Xlint 2013-02-04 17:30:31 -05:00
Mark Harrah 8cb7e23011 Load global plugins in their own class loader and replace the base loader with that. Fixes #272.
Also, replace the base classpath with the global classpath.
2013-02-01 13:10:27 -05:00
Mark Harrah 52954b3ae7 skip duplicate entries in PluginClassLoader 2013-02-01 13:10:26 -05:00
Mark Harrah b2eb4661df Support 'reload plugins' after ignoring a failure to load a project.
This can be used to debug problems with dependencies or code.
It won't help with .sbt files, however.
2013-01-29 17:47:29 -05:00
Mark Harrah 6c5cafb55b Remove support for deprecated alternative to project/ directory name. 2013-01-29 17:47:29 -05:00
Eugene Yokota 125727ba83 support binary version in launcher 2013-01-29 16:55:13 -05:00
Mark Harrah e47b8ab578 Make 'eval' command work when project isn't loaded. 2013-01-29 08:47:04 -05:00
Mark Harrah a57407375e Implement InputTask.~= to operate directly on the result type T instead of an InputTask[T]. 2013-01-28 18:01:35 -05:00
Mark Harrah 8d11d1087a Mark the tests failed exception as having already provided feedback 2013-01-28 17:14:53 -05:00
Mark Harrah 76a02c463f Temporarily use a Scala home with '++ /path/to/scala/home' 2013-01-28 17:14:53 -05:00
Mark Harrah 13ea342b7a use standard Context.weakTypeOf 2013-01-28 17:14:53 -05:00
Mark Harrah 076480b50a Reduce InputTask to the ideal wrapper around 'State => Parser[Initialize[Task[T]]]'
Ref #407.
2013-01-28 17:14:53 -05:00
Paolo G. Giarrusso 236143be8d Silence boring Eclipse warnings: catching all exceptions
Here I make explicit where catching all exceptions is intended.
Mark Harrah corrected one decision during review.
2013-01-22 09:05:15 -05:00
Paolo G. Giarrusso 19aaaea923 Fix compile error in Eclipse
Let's consider compile/inc/src/main/scala/sbt/CompileSetup.scala.
There are multiple Output types, and according to Eclipse importing
xsbti.compile.Output within the package sbt does not work because the
import is shadowed by sbt.Output.

However, compilation proceeds just fine within SBT. Reproducing the
example however gives the same warning, if the files are in the same
project. The problem here is probably that the shadowing Output
is declared in the same package but in another project, and that seems
to give different results in Eclipse and SBT, but relying on
that looks fragile.
Reading the spec is inconclusive since it doesn't match with Scalac's
behavior — see
https://groups.google.com/d/topic/scala-internals/-Rquc2HBYLk/discussion .

ForkTests has the same behavior as CompileSetup.
2013-01-22 09:05:15 -05:00
Mark Harrah 9013e00fdd Remove InputStatic and parsedResult.
This cleans up the InputTask implementation.  It no longer requires the hook
in setting loading (Load.finalTransforms) and has better types.
2013-01-18 18:49:26 -05:00
Mark Harrah a9ac6b3983 Configurable conflict manager and corresponding documentation on conflictManager, dependencyOverrides, and force(). Fixes #603. 2013-01-11 16:01:31 -05:00
Mark Harrah a48ee68d17 Additional convenience methods on Project for configuring the .sbt files processed.
The Project.setSbtFiles and addSbtFiles methods combined with the current sbt version
available from ComponentMangaer.version (suggestions for a better location are welcome),
should make it straightforward to load different .sbt files based on the sbt version.

Fixes #467.
2013-01-11 16:01:30 -05:00
Mark Harrah 36a3203226 API documentation for Project getters 2013-01-11 16:01:30 -05:00
Mark Harrah a152965933 Option to automatically manage API documentation mappings
Set autoAPIMappings := true to enable.

Then, set apiURL to the base URL of the API documentation for a project.
This will get stored in an extra attribute in the ivy.xml or as a property
a pom.xml.

When using managed dependencies that have set their apiURL, the -doc-external-doc
setting for scaladoc will be automatically configured.  Note that this option
will only be available in Scala 2.10.1 and so enabling autoAPIMappings for
earlier versions will result in an error from scaladoc.

For unmanaged dependencies or dependencies without an automatic apiURL, add the
(File,URL) mapping to apiMappings.  The File is the classpath entry and the URL
is the location of the API documentation.
2013-01-10 16:06:12 -05:00
Mark Harrah e5a9d31d6f Make exclude-classifiers per-user instead of per-build. Fixes #634. 2013-01-10 16:06:12 -05:00
Mark Harrah aff95baf0e Provide cacheDirectory via Streams instead of a separate setting
This is cleaner and makes it harder for the task author to have overlapping caches.
2013-01-10 16:06:12 -05:00
Mark Harrah 1ef258d88e Convenience method Project.configure(f,g) for g(f(proj)) to be used to apply plugin configuration provided as a Project=>Project transformation 2013-01-10 16:06:12 -05:00
Mark Harrah ae9b6d1e47 Support 'val p = project' via a 'project' macro 2013-01-10 16:06:12 -05:00
Mark Harrah aefad9c033 when looking for the enclosing val definition in definingValName, allow the macro to be in an expression 2013-01-10 16:06:12 -05:00
Mark Harrah a8b93dfed3 Project.in(File) for setting the base directory of a Project 2013-01-10 16:06:11 -05:00
Mark Harrah 87faa7191a API documentation for Project transforming methods 2013-01-10 16:06:11 -05:00
Mark Harrah f0a72e53e8 use proper separator in command tab completion 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 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 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 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
Mark Harrah 71f12fbcdb 2.9 compatibility for incremental compilation modules 2012-12-11 14:41:22 -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 d4fd136192 support defining Projects in .sbt files
vals of type Project are added to the Build
2012-12-09 20:40:41 -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
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 769ecbace5 add scala-tool configuration and dependencies when configuring via pom.xml/ivy.xml 2012-12-06 07:25:41 -05:00
Mark Harrah 8f25b07d71 -cp/-classpath option to 'apply' command 2012-12-04 21:08:39 -05:00
Mark Harrah 005b2b356f fix IO tests, which needed scala-compiler.jar on the classpath 2012-12-04 13:20:03 -05:00
Josh Suereth f338018bd1 Modified SBT defualts to pull in app repositories.
* If SBT launcher supports app repositories these are added by default.
* IF SBT launcher does not support app repositories, previous defaults are used.
2012-12-04 13:10:10 -05:00
Josh Suereth 0c08c1169e Bumped the Scalatest/Specs versions for 2.10.0-RC3
* Modified tests to use mutable Specs API
* Fixed a few minor specs issues.
2012-12-04 13:10:09 -05:00
Mark Harrah cdd2e72cdf move top-level settingKey,taskKey,inputKey objects to Def and package object
avoids class file name collision on case insensitive filesystem
2012-12-04 13:08:52 -05:00
Mark Harrah 495e7c6f62 Disable aggregation for `run-main` by default 2012-12-03 08:56:22 -05:00
Mark Harrah 2598a8f1a9 extend source positions to all setting creation methods 2012-12-02 03:17:20 -05:00
Mark Harrah f73e77de16 convert () to {} to workaround macro bug
(bug is fixed in 2.10.x branch)
2012-12-02 03:17:20 -05:00
Mark Harrah 2f2596c133 record source name or full path for settings/tasks depending on whether the enclosing package is the empty package 2012-12-02 03:17:20 -05:00
Mark Harrah a8d0af9464 split out KeyMacro.enclosingTrees 2012-12-02 03:17:20 -05:00
Mark Harrah 8400b992af source positions for settings/tasks in .scala files 2012-12-02 03:17:20 -05:00
Mark Harrah 3bff14d77a taskKey,settingKey,inputKey macros to get name from the defining val 2012-12-02 03:17:20 -05:00
Mark Harrah 538f687208 Use and methods instead of mapR,mapFailure,flatFailure,flatMapR 2012-12-02 03:17:19 -05:00
Mark Harrah c23226d4ae comment EvaluateTask.apply methods 2012-12-02 03:17:19 -05:00
Mark Harrah bb1725f580 Allow root project to be explicitly specified in Build.rootProject 2012-11-18 10:55:26 -05:00
Mark Harrah a9289ad0ce Explicitly specify type parameters in calls to KCons in KList builder.
scalac couldn't infer the type constructor otherwise.
2012-11-18 09:20:26 -05:00
Mark Harrah a38bce8d41 Transition to all camelCase key labels.
1. Hyphenated labels are still accepted when parsing scoped keys (so 'sbt test-only' still works)
   There is currently no timeline for removing this support for hyphenated keys.
2. Only camelCase is shown for tab completion.
3. AttributeKey.rawLabel provides the unnormalized label.
   This should only be used to implement support for accepting hyphenated keys as input for compatibility.
4. AttributeKey.normLabel provides the normalized label (hyphenated converted to camelCase)
2012-11-17 20:23:07 -05:00
Mark Harrah 49e7214fe3 InputTask macro
Similar to task macros, the parsed value is accessed by calling `parsed`
on a Parser[T], Initialize[Parser[T]], or Initialize[State => Parser[T]].
Values of tasks and settings may be accessed as usual via `value`.
2012-11-17 20:23:07 -05:00
Mark Harrah 79aeb7b00e fix testListeners definition, which mixed old and new styles of definitions, resulting in runtime error
This is an example of the need for an annotation to indicate a method shouldn't survive type checking.
2012-11-17 20:23:07 -05:00
Mark Harrah 522414cd99 AbsTypeTag -> WeakTypeTag and converted more settings 2012-11-17 20:23:06 -05:00
Mark Harrah e47a357ab7 Resolve Scala version for projects in the normal `update` task.
1. Scala jars won't be copied to the boot directory, except for those needed to run sbt.
2. Scala SNAPSHOTs behave like normal SNAPSHOTs.  In particular, running `update` will properly re-resolve the dynamic revision.
3. Scala jars are resolved using the same repositories and configuration as other dependencies.
4. Classloaders (currently, Scala classloaders) are cached by the timestamps of entries instead of Scala class loaders being cached by version.

TODO: Support external dependency configuration
2012-11-17 20:23:06 -05:00
Mark Harrah 4cc5bece70 address a valid unchecked warning
In order to correctly pattern match Tree subclasses in reflection/macros,
scalac needs the corresponding implicit for *Tag available because the types
are only abstract types.
2012-11-17 20:23:06 -05:00
Mark Harrah 2c7e9cd893 Scala 2.10.0-M7 2012-11-17 20:23:06 -05:00
Mark Harrah b453af7c45 Properly apply transformations to dynamic tasks.
That is, implement Initialize[Task[T]].flatten correctly.
This requires preserving the transformations applied in a scope so that
they can be applied to an Initialize value after static settings have been
evaluated.
2012-11-17 20:23:06 -05:00
Mark Harrah 0a642f2283 move explicit task/setting macros to Def, move to AbsTypeTag 2012-11-17 20:23:06 -05:00
Mark Harrah 3790d6656a failing use case 2012-11-17 20:23:06 -05:00
Mark Harrah 90faeff546 Task macro cleanup
* use normal TypeTree constructor
* remove unnecessary 'with Singleton' in macro utility
* integrate changes suggested by @xeno-by
* add refVar back and call asTypeConstructor instead of asType to refer to a type variable
2012-11-17 20:22:39 -05:00
Mark Harrah 1c22478edc task setting macros for :=, +=, ++=
also, bump to 2.10.0-M6
2012-11-17 20:19:24 -05:00
Mark Harrah 2e120ed86f split out InputTask 2012-11-17 20:19:24 -05:00
Mark Harrah 8d6dd10798 2.10.0-M5, different arity generalization
1. KList[M[_]] now instead of KList[HL <: HList, M[_]]
  a. head, tail work properly in this variant
  b. disadvantage is that full type not easily transformed to new type constructor
2. AList abstracts on K[L[x]], a higher order type constructor.
 A. Instances written for:
  a. KList
  b. Seq[M[T]] for a fixed T
  c. TupleN
  d. single values
  e. operate on one type constructor when nested
 B. Main disadvantage is type inference.  It just doesn't happen for K[L[x]].
    This is mitigated by AList being used internally and rarely needing to construct a K.
2012-11-17 20:19:24 -05:00
Mark Harrah eecaeafbdf reorganization of main/
* split several source files
* move base settings sources (Scope, Structure, ...) into main/settings/
* breaks cycles.  In particular, setting system moved from Project to Def
2012-11-17 20:19:24 -05:00
Mark Harrah 87e406fcbd support vals/defs in build.sbt
* must start with val, lazy val, or def (no modifiers currently)
* visible only within the same .sbt file
* multiple definitions allowed without being separated by blank lines
* no blank lines allowed within a definition
2012-11-17 16:27:25 -05:00
Mark Harrah f99ba44703 Control over automatically added settings.
Project.autoSettings accepts a sequence of AddSettings, instances of which
are constructed from methods in AddSettings.  The configurable settings
are per-user settings (from ~/.sbt, for example), settings from .sbt files,
and plugin settings (project-level only).  The order in which these instances
are provided to autoSettings determines the order in which they are appended
to the settings explicitly provided in Project.settings.

For .sbt files, defaultSbtFiles adds the settings from all .sbt files in the
project's base directory as usual.  AddSettings.sbtFiles accepts a sequence
of Files that will be loaded according to the standard .sbt format.  Relative
Files are resolved against the project's base directory.

Plugin settings may be included on a per-Plugin basis by using the plugins
method and passing a Plugin => Boolean.  The settings controlled here are
only the automatic per-project settings.  Per-build and global settings will
always be included.
2012-11-16 09:56:49 -05:00
Eugene Vigdorchik 960d17c358 Use java.lang.Throwable.setStackTrace. Proper fix for #543. 2012-11-15 10:14:59 -05:00
Mark Harrah 1c1e5c4977 taking care of deprecations removed in Scala master 2012-11-14 11:48:06 -05:00
Mark Harrah 9bf5405621 Fixes #594. Global plugin products weren't being included on Compile classpath of build definition project. 2012-11-10 18:18:15 -05:00
Mark Harrah 313bb1f8f2 deprecate Project-level delegation 2012-10-29 12:34:47 -04:00
Mark Harrah e1c3240eae split ForkTests react() out to workaround SI-6526 2012-10-29 12:22:07 -04:00
Mark Harrah e532d20732 cleanup of #585: compatible with earlier launchers 2012-10-29 09:52:10 -04:00
Eric Bowman 835ee0d1b3 XSBT-5: maven-style ivy repo support in the launcher config
Change-Id: I22c1ff126961d61d92e2e45a5b7eff329d3def90
Reviewed-on: https://gerrit.gilt.com/10950
Reviewed-by: Eric Bowman <ebowman@gilt.com>
Tested-by: Eric Bowman <ebowman@gilt.com>
2012-10-29 09:04:42 -04:00
Mark Harrah 1612af8dbb Parser.failOnException method, don't let rhs of alias fail the parse. Fixes #572.
alias only parses the right hand side for tab completion help.
The assignment should happen whether or not the parse is successful because the
context may change by the time the alias is actually evaluated.
In particular, the 'set' command uses the loaded project for tab completion in 0.12.1.
When a .sbtrc file is processed, the project has not been loaded yet, so aliases
involving set fail.  Wrapping the rhs in failOnException addresses this.
2012-10-15 12:42:27 -04:00
Mark Harrah a2c2af8b08 add [every] to syntax summary of 'set' command 2012-09-22 16:45:24 -04:00
Kevin Scaldeferri 933d5fb0fe Include all JAR packaging types in the default classpathTypes. Fixes #550
These special types need to be recognized in both the POM parser and added to the classpath.
The previous code was not DRY, and eclipse-plugin was in one but not the other.  This ensures
new types can be added in the future without risking this type of oversight.
2012-09-21 16:56:56 -04:00
Mark Harrah b353d0b94c better internal interfaces to javadoc/scaladoc/raw scalac 2012-09-18 16:30:33 -04:00
Mark Harrah 37661c9576 Strip explicitArtifacts from projectDependencies. Fixes #546.
The module definition (ModuleID) got copied as to be the dependency definition,
but as a dependency definition, it should not include explicit artifacts.
2012-09-12 14:31:57 -04:00
Mark Harrah 2010ae7b3c back all ConsoleLoggers by a common ConsoleOut
The common ConsoleOut merges (overwrites) consecutive Resolving xxxx ... lines
when ansi codes are enabled.
2012-09-01 09:56:09 -04:00
James Roper a3e9b53fe5 Pulled mapper folding into a function for reuse 2012-08-31 06:24:16 -04:00
James Roper 702ee44e0e Source position mapper support 2012-08-31 06:24:16 -04:00
Mark Harrah ed902ea565 Proper isolation of build definition classes. Fixes #536, #511. 2012-08-30 16:37:56 -04:00
Mark Harrah 9d39b5d9e1 Add valid project IDs to 'No project <x> in <uri>' error message 2012-08-30 16:37:56 -04:00
Mark Harrah 3dd3a18996 Force update on change to last modified time of artifacts or cached descriptor.
This is part 2 of the fix for #532.  It may also fix issues when working with
multiple local projects via 'publish-local' and binary dependencies.
2012-08-29 11:13:48 -04:00
Mark Harrah c7f6ce4aec per-project resolution cache that deletes cached files before each update
These are the ivy files, properties, and resolve reports for the project,
not dependencies and their artifacts.
2012-08-28 11:55:24 -04:00
Mark Harrah cbaa805511 clean up temporary directory on exit. ref #502
Directory was already empty, this just removes the empty directory.
2012-08-27 09:14:00 -04:00
Mark Harrah feffe4feb0 toStrings for some concurrent restrictions 2012-08-27 08:33:33 -04:00
Eugene Vigdorchik b4e64d37db Various fork in Test fixes. Closes #512 #515. 2012-08-25 07:15:23 -04:00
Eugene Vigdorchik adb7d42f73 Fix compilation error for 2.10.0-M5 for all but main project. 2012-07-17 15:20:37 -04:00
Mark Harrah 59c025a767 run either javadoc (Java sources only) or scaladoc (Scala only or mixed), but not both 2012-07-17 13:51:17 -04:00
Mark Harrah cbc94f9cb6 experimental tab completion for 'set' 2012-07-13 14:33:28 -04:00
Mark Harrah 2a6ad35502 correct CommandUtil.aligned to use provided prefix 2012-07-13 14:33:27 -04:00
Mark Harrah 2cf9b4bf6e combined cutoff for settings and tasks 2012-07-13 14:33:27 -04:00
Mark Harrah d6d922a858 display message after 'set' with defined and affected scopes+keys 2012-07-13 14:33:27 -04:00
Mark Harrah ad621ecbee update help for `inspect` to include latest options 2012-07-13 14:33:26 -04:00
Eugene Vigdorchik 76943e82ed Add xsbti.Reporter to required inputs instead of maxErrors. 2012-07-13 14:33:26 -04:00
Eugene Vigdorchik b5a29987e6 Changes required to use sbt as-is from Scala-IDE. 2012-07-13 14:33:26 -04:00
Indrajit Raychaudhuri 82a338b3a8 Add OSX JNI library extension in includeFilter by default. Closes #500 2012-07-08 00:38:25 -04:00
Mark Harrah 5a93605d75 'orbit' packaging should be handled like a standard jar. fixes #499. ref #463 2012-07-06 10:28:51 -04:00
Mark Harrah 364d49d4b4 Translate `show x y` into `;show x ;show y` . fixes #495 2012-07-06 10:28:51 -04:00
Mark Harrah 464193d0f6 sourcesInBase setting. fixes #494 2012-07-06 10:28:51 -04:00
Mark Harrah 3d0eb1ac11 better fix for tab completion on invalid project IDs 2012-07-01 15:16:42 -04:00
Josh Suereth 171ff5f808 Fix override repositories flag so we can still resolve inter-project dependencies. 2012-06-25 18:48:06 -04:00
Mark Harrah dc2aaaf7ac show full stack trace by default when running in batch mode 2012-06-22 22:11:24 -04:00
Mark Harrah 8908d0e93b attempt at better error message for linkage errors in plugins. fixes #483
Only catches linkage errors during static initialization of the plugin module,
but these are likely to be the most common.
2012-06-16 23:40:52 -04:00
Mark Harrah bfe78f174c fix makePom delegation 2012-06-16 23:40:52 -04:00
Mark Harrah 47bef51491 tweak command list for help ordering 2012-06-15 07:57:47 -04:00
Mark Harrah 0578a49e43 make publishArtifact setting for makePom affected by more general setting. fixes #484. 2012-06-15 07:54:02 -04:00
xuwei-k 3d450059ae delete pluginDir.exists 2012-06-12 07:15:31 -04:00
kenji yoshida 139e52073e should not load in old plugins style if it is not directory 2012-06-12 07:15:31 -04:00
Mark Harrah ba55430727 update session settings display for multi-line changes 2012-06-02 20:54:45 -04:00
Eugene Vigdorchik d7f7a243e5 Handle the case of missing ~/.sbt/staging directory when asking for a source project dependency. 2012-06-02 19:03:38 -04:00
Mark Harrah e37145137f Revert "use the same logic for selecting extra attributes in addSbtPlugin as in pluginProjectId"
Doesn't compile.

This reverts commit 8f14df1930.
2012-05-30 21:48:06 -04:00
Josh Suereth 76d24091fa Fixes from mark's suggestions.
* Puppies may rest easy from the removal of Option.get calls.
* better names for config values
* Added a helper method to avoid any possible code duplication, besides repeated def, val, match and for keywords.
  Looking for ways to remove this duplciation ASAP.
* Moved from pattern match to ._1, my most hated member.
2012-05-30 21:42:45 -04:00
Josh Suereth 52307d27a4 Adding ability to override resolvers from launcher. * Added key which pulls the repositories used by the launcher, if the API allows. * Added which configures whether or not should just use . * Added parsing to launcher so java property is used by default for override setting. 2012-05-30 21:42:45 -04:00
Johannes Rudolph 8f14df1930 use the same logic for selecting extra attributes in addSbtPlugin as in pluginProjectId
This enables us to use the same plugins.sbt in projects for release and
pre-release versions of sbt.
2012-05-30 20:02:30 -04:00
Mark Harrah be3d565284 global plugin settings. ref #378 2012-05-30 20:02:24 -04:00
Mark Harrah e8fcdc07e8 set organization at higher scope for default project 2012-05-27 20:03:08 -04:00
Mark Harrah cf2402cea4 another fix related to #460 2012-05-23 20:13:52 -04:00
Mark Harrah 9cf2c41fb8 fix exception thrown when tab completing invalid project name 2012-05-21 22:23:44 -04:00
Mark Harrah a099754109 if defined, use explicit historyPath at ThisBuild or Global project scope 2012-05-21 22:23:44 -04:00
Mark Harrah 4b724e1102 inline tasks, for internal use later 2012-05-19 18:20:20 -04:00
Mark Harrah 5ff33fad3e Second try at printing message when stack trace suppressed.
Problems:

  1. Without a message, users don't find 'last'
  2. Showing a message for every error clutters output.

This tries to address these issues by:

1. Only showing the message when other feedback has not been provided and
   'last' would not usually be helpful.  This will require ongoing tweaking.
   For now, all commands except 'compile' display the message.  'update' could
   omit the message as well, but perhaps knowing about 'last' might be
   useful there.

2. Including the exact command to show the output:
    last test:compile
   and not just
    last <task>

3. Highlighting the command in blue for visibility as an experiment.

Review by @ijuma and @retronym, please.
2012-05-19 18:20:19 -04:00
Mark Harrah f4c0a0d9a6 display relative key strings for incomplete tasks 2012-05-19 18:20:19 -04:00
Mark Harrah 53ee1c5adf hk2-jar packaging should be handled like a standard jar. fixes #463 2012-05-16 07:34:15 -04:00
Eugene Vigdorchik c795511e13 Only allow a single task to run at any point in time if parallelExecution in Test is false. 2012-05-12 10:15:59 -04:00
Eugene Vigdorchik 6f03b83446 Remove unneeded map argument. 2012-05-12 10:15:49 -04:00
Eugene Vigdorchik 04d53c05d5 Modify forking tests based on Stefan's feedback. Should be ported to 0.12 2012-05-09 20:07:47 -04:00
Gerolf Seitz cddbb8dd12 Add method Aggregation.runTasksWithResult 2012-05-07 19:09:11 -04:00
Mark Harrah 13e62fd645 Use binary version for cross-version even for snapshots and milestones
Rely instead on users not publishing the same stable version against both
 stable Scala or sbt releases and snapshots/milestones.
2012-05-05 20:35:05 -04:00
Mark Harrah 9e7ee361c7 Tags.exclusive convenience method for executing tasks in isolation 2012-05-02 19:56:35 -04:00
Mark Harrah 6769c94208 basis for a resident compiler
unstable, but can be tested with -Dsbt.resident.limit=n
 n is the maximum Globals kept around
2012-04-28 18:58:52 -04:00
Mark Harrah 2bd103f1fa implement embedded interface 2012-04-18 16:01:45 -04:00
Mark Harrah d837f869bd using some of the embedding interfaces 2012-04-18 11:02:52 -04:00
Mark Harrah 8594e4443d reorganize compilation modules 2012-04-18 08:08:25 -04:00
Mark Harrah db7ec09591 move compiler integration classes to subproject compile/integration 2012-04-18 03:33:49 -04:00
Mark Harrah 4de26c1195 allow specifying Scala version for sbt plugin in addSbtVersion 2012-04-13 17:47:12 -04:00
Mark Harrah 1eef9e660a missed a compatibility overload for constructing an InputKey 2012-04-13 17:47:12 -04:00
Mark Harrah 2aad26a5ba Merge 'vjovanov/0.12' into 0.12 2012-04-12 17:21:08 -04:00
Mark Harrah 7109bc9637 configuration via ivysettings.xml: use URI instead of URL and make 'inter-project' resolver available for multi-project builds. ref #416 2012-04-11 22:40:45 -04:00
Vojin Jovanovic f17cb88d00 Augmenting scalaOrganization key description. 2012-04-10 12:12:04 +02:00
Michael Allman ba2e42287b Add support for loading Ivy settings from a URL 2012-04-08 20:22:15 -07:00
Mark Harrah 3f7fd80755 Merge pull request #422 from vigdorchik/extract_common_code
Extract common code to a separate method.
2012-04-08 11:40:30 -07:00
Eugene Vigdorchik f122b95e46 Extract common code to a separate method. 2012-04-08 20:33:46 +04:00
Mark Harrah 756099c67b add extra category of help for listing command names without summary 2012-04-07 18:10:23 -04:00
Mark Harrah 2ba5e0a363 help message changes 2012-04-07 18:10:23 -04:00
Mark Harrah 585a62bf5e only list history help (!) in brief help listing 2012-04-07 18:10:23 -04:00
Mark Harrah c358a8a5b0 more improvements to 'tasks' and 'settings' commands 2012-04-07 18:10:23 -04:00
Mark Harrah 75dfccf098 move ForkMain.Tags out to top-level ForkTags to make sxr happy 2012-04-06 23:29:48 -04:00
Mark Harrah f94eae15b6 merge test forking from vigdorchik/xsbt/wip_fork_test 2012-04-06 20:48:31 -04:00
Mark Harrah 12d72facb1 enhance 'projects' to allow temporarily adding/removing builds to the session 2012-04-06 20:28:31 -04:00
Vojin Jovanovic 0f6a50daee Addressing https://github.com/harrah/xsbt/pull/418
Changed the order of parameters in getScala method.
Changed the key name to scalaOrganization (scala-organization).
Augmented description of the key.
Minor fixes.
2012-04-05 12:19:49 +02:00
Eugene Vigdorchik e8798ddca8 Add test and allow the java options to be picked for a default test group created. 2012-04-05 12:02:53 +04:00
Eugene Vigdorchik 05c4fbdc3d Cleanup: 1) Rename policies since Fork is popular name and clashes with sbt.Fork2. Don't put entire Execution into Group, but just RunPolicy. 2012-04-04 23:50:32 +04:00
Vojin Jovanovic 182b7c655f Adding `scalaOrg` setting key for scala clones.
Adding scalaOrg key that specifies organization (artifactId) of scala used in the project. The change does not affect version checks for dependecies and LauncherConfiguration.

Modified scalaProvider cache in Launcher to use (scalaOrg, version) as a key.

Downloaded jars are stored in the folder scala-.../lig-<scalaOrg> if scalaOrg is not default.

scala-org is an advanced setting so it can not be used in build.sbt.
2012-04-04 19:06:55 +02:00
Eugene Vigdorchik 2ba9bbc767 More indentation messed up. 2012-04-04 16:25:12 +04:00
Eugene Vigdorchik b5766e4057 Fix newlines and indentation. 2012-04-04 09:30:46 +04:00
Eugene Vigdorchik 291db63af3 Fixes 2012-04-03 19:43:59 +04:00
Eugene Vigdorchik cdfc72d05d Given the ease of defining concurrentRestictions, I think it should be left to the user to correctly provide the limit for forked test groups. 2012-04-03 18:35:07 +04:00
Eugene Vigdorchik e169e4f222 Correctly initialize ForkedTestGroup restriction. 2012-04-03 18:13:02 +04:00
Eugene Vigdorchik c4385adce0 Some more fixes. 2012-04-03 11:49:41 +04:00
James Earl Douglas 710b12520d set status to "integration" if isSnapshot is true, and "release" if isSnapshot is false 2012-04-02 21:15:52 +05:30
Eugene Vigdorchik ce0a2a3625 More fixes. 2012-04-02 19:01:54 +04:00
Eugene Vigdorchik 2741515d44 Fixes after review, take 3. 2012-04-02 16:05:56 +04:00
Eugene Vigdorchik 4d5effcb28 Fixes after review, take 2. 2012-04-02 12:08:18 +04:00
Eugene Vigdorchik e3a7a331d5 Changes after review, step 1. 2012-04-02 10:46:13 +04:00
Mark Harrah 6015d082aa use resolvers configured in plugin definition for update-sbt-classifiers. fixes #304. 2012-04-01 23:19:08 -04:00
Eugene Vigdorchik 68c5cbe438 Fork java, not scala. 2012-04-01 15:49:29 +04:00
Eugene Vigdorchik 7afc9e77c6 \'fork in test\' initial implementation. 2012-04-01 11:44:05 +04:00
Mark Harrah 6fb1934efa filter detected binary plugins by classpath now that plugin class loader is shared. fixes #412 2012-03-31 21:51:01 -04:00
Mark Harrah 04efcd12d2 fix brief help for set 2012-03-25 20:35:09 -04:00
Mark Harrah 87d2144c12 rank settings, tasks and use this to restrict help/settings/tasks output. fixes #315 2012-03-25 20:35:09 -04:00
Mark Harrah 0aadf5e500 fix help whitespace parsing 2012-03-25 20:35:09 -04:00
Indrajit Raychaudhuri 2525eeb7e6 Ensure that `parents` for java classes have all the ancestors
Currently, only immediate parents classes are picked up for java classes.
This could be problematic, for example, in detecting Fingerprint for test frameworks.
So far, Scala types are not affected –– all the ancestors are available for them.
2012-03-25 15:44:16 +05:30
Mark Harrah 2bb2aed1f6 Revert "work around for 2.10. pattern matching on KNil now requires KNil()"
This reverts commit 2f726b34c3.

This commit caused "java.lang.Error: typeConstructor inapplicable for <none>" when running 'sxr'
2012-03-17 22:58:13 -04:00
Mark Harrah 9bebc70ada normalize URI before hashing 2012-03-17 19:31:56 -04:00
Mark Harrah 1cbb7ce93c print-warnings task for Scala 2.10+ to avoid needing to rerun 'compile' to see deprecation/unchecked warnings 2012-03-17 19:31:55 -04:00
Mark Harrah 7768aaacb0 add overload of addSbtPlugin for explicitly specifying the sbt cross-version 2012-03-17 19:31:55 -04:00
Mark Harrah 2c5a2f0f96 enable sbt-plugin auto-configuration when using 'reload plugins' 2012-03-17 19:31:04 -04:00
Mark Harrah f0eb3ac3a8 force 'update' to run when invoked directly. ref #335 2012-03-17 19:31:03 -04:00
Mark Harrah 5cfafdb648 provide list of task execution roots 2012-03-17 19:31:03 -04:00
Mark Harrah 2f726b34c3 work around for 2.10. pattern matching on KNil now requires KNil() 2012-03-17 19:31:03 -04:00
Mark Harrah 1ffa7b7d92 work around for type inference change in 2.10 2012-03-13 08:01:58 -04:00
Mark Harrah 4e4937e706 searchable help 2012-03-12 19:54:18 -04:00
Indrajit Raychaudhuri eef3a1ed31 Adjust mechanism of resolver conflict detection
Warn when publish resolver and dependency resolvers have same name but different access mechanism.
Multiple resolvers having same name as well as same access mechanism (i.e., equality matching) isn't
usually a problem. A common scenario for this would be Maven based resolvers with exact (http based)
same access mechanism. Also see #367, #363
2012-03-12 05:25:12 +05:30
Indrajit Raychaudhuri 3adf080bc1 Convenient `DefaultOptions` for resolvers.
Simply, add `DefaultOptions.addResolvers` in project config
or `DefaultOptions.addPluginResolvers` in plugin config to have known
resolvers added by default (snapshot mode sensitive)
2012-03-12 05:25:12 +05:30
Indrajit Raychaudhuri abcd4555b9 Replace `Pair.apply` with `Util.pairID`, avoids extra class generation 2012-03-12 05:25:12 +05:30
Indrajit Raychaudhuri c09174c428 Enable `sbtPluginReleases` repository by default for plugins. Closes #380 2012-03-12 05:25:12 +05:30
Indrajit Raychaudhuri 5b3dc5bf26 Update Resolver configuration
- deprecate scala-tools resolvers
- rename `typesafeResolver` to `typesafeReleases` for consistency
- add reference for other wel known resolvers, viz., oss.sonatype.org and scalasbt.artifactoryonline.com
- rearrange locations for helper methods
2012-03-12 05:25:12 +05:30
Mark Harrah 4527e9bfc6 merge test-quick reimplementation #393 from vigdorchik/wip_test_quick 2012-03-09 09:31:39 -05:00
Mark Harrah 3587777638 move error processing to complete/ 2012-03-09 07:08:38 -05:00
Eugene Vigdorchik 40d35a5ced Change according to review and add a missing recursive dependency check. 2012-03-08 20:20:17 +04:00
Eugene Vigdorchik d5bf8cf6d6 Transitive compilation dependency tracking. 2012-03-08 18:58:44 +04:00
Eugene Vigdorchik efb9cde9f3 Add test file itself to the set to track compilation time. 2012-03-07 13:13:56 +04:00