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
Eugene Vigdorchik
e92ba43b3f
Add API dependency tracking to testQuickFilter.
2012-03-07 12:28:40 +04:00
Indrajit Raychaudhuri
57ec3bf37e
rename `docSetting` to more consistent `docTaskSettings`
2012-03-06 23:36:02 +05:30
Indrajit Raychaudhuri
2e554c10ba
Add support for compile task specific settings on `compile` task axis
...
So far we had ability to configure compile task specific settings on
`Compile` Configuration scope only. We can now add `compile` task scope
as well.
Usecase: one can now specify:
```
// applies for all tasks on Compile axis
scalacOptions in Compile += "-deprecation"
// applies for compile tasks on Compile axis
scalacOptions in (Compile, compile) += "-Xcheckinit" // effectively, "-deprecation -Xcheckinit"
```
2012-03-06 11:20:11 +05:30
Indrajit Raychaudhuri
14f6d7fd87
rename `packageTasks` to more consistent `packageTaskSettings`
2012-03-06 11:20:11 +05:30
Indrajit Raychaudhuri
b64e9fb482
Use regular scala helper `Pair.apply` instead of `PairID`
2012-03-06 11:20:11 +05:30
Mark Harrah
6746557d05
addCommandAlias method for defining command aliases in build definitions. fixes #388
2012-03-05 13:40:17 -05:00
Eugene Vigdorchik
cef766046d
Add forgotten test listener.
2012-03-05 18:37:46 +04:00
Eugene Vigdorchik
6e0ad08ad3
testQuick: track previous test status.
2012-03-05 17:17:55 +04:00
Eugene Vigdorchik
fe753768d9
Extract testFilter task to substitute in case of test-quick.
2012-03-04 11:09:42 +04:00
Indrajit Raychaudhuri
69d45b7f5f
Use `provider.id.name` instead of hard-coded 'sbt' in `aboutString`
...
Also rearrange and reformat a bit
2012-03-02 06:05:14 +05:30
Indrajit Raychaudhuri
f51aad4b5b
Add fancier `shellPrompt` by default, also better arg names
2012-03-02 00:59:06 +05:30
Indrajit Raychaudhuri
9ca86725b5
Rather use `globalSettingsDirectory` instead of `globalBaseDirectory`
2012-03-01 17:23:08 +05:30
Indrajit Raychaudhuri
0fead533c0
Clarify better in deprecation message
...
Add additional helper method for adding credential
2012-03-01 00:28:12 +05:30
Indrajit Raychaudhuri
7b97b6833f
Credentials should be kept in SBT's own global base location
...
The old convention of keeping credentials in ~/.ivy2 isn't recommended anymore,
they can instead go in (customizable) global base location.
The global base defaults to `~/.sbt`, hence credentials go in `~/.sbt/.credentials`
(c.f. `Keys.globalBaseDirectory` and system property `sbt.global.base`)
2012-02-28 23:01:17 +05:30
Mark Harrah
2137b29aa1
Merge pull request #369 from vigdorchik/Overwrite_setting
...
Overwrite previous setting if possible.
2012-02-28 07:48:44 -08:00
Indrajit Raychaudhuri
0a6f58a761
Remove use of deprecated `logger(s)` call
2012-02-28 19:07:47 +05:30
Indrajit Raychaudhuri
940b77f940
Make warnings for multiple resolvers with same name more verbose.
...
Just so that user can figure out more quickly what's going on
2012-02-28 16:33:20 +05:30
Indrajit Raychaudhuri
ea08f86520
Added support for providing basic SCM info
...
Sonatype OSS repo (where many libraries are expected to migrate) requires
populating SCM info in additional to what is already provisioned for
populating in SBT.
We now support populating the basic SCM info as thus:
```
// Usual <scm><url/><connection/></scm>
scmInfo := Some(ScmInfo(url("https://github.com/foo/project "), "scmhttps://github.com/foo/project.git "))
// Also add <developerConnection/>
scmInfo := Some(ScmInfo(url("https://github.com/foo/project "), "scmhttps://github.com/foo/project.git ", Some("dev_connection")))
```
For anything more esoteric than the basic info, there is always `pomPostProcess` :)
2012-02-28 15:30:51 +05:30
Indrajit Raychaudhuri
4daed3b745
Adjust `packageConfig` Settings to be wrapped within appropriate `inTask` methods
2012-02-28 00:26:23 +05:30
Eugene Vigdorchik
63aa36bd1e
More agressive overwrite.
2012-02-27 22:28:09 +04:00
Eugene Vigdorchik
bb646d0437
SessionSetting to contain seq of line.
2012-02-27 11:46:23 +04:00
Mark Harrah
ec2566047d
allow plugins to inject settings at the build level. fixes #378
2012-02-25 12:01:08 -05:00
Eugene Vigdorchik
eaa10b7a48
Support multi-line replacements.
2012-02-20 15:52:57 +04:00
Eugene Vigdorchik
ff4b42ce45
Merge
2012-02-20 12:30:10 +04:00
Eugene Vigdorchik
d23d39cc0f
Support multiline settings in build.sbt, assumes set command doesn't allow multiline settings. TODO:tests.
2012-02-20 12:27:26 +04:00
Eugene Vigdorchik
e0b2475dd6
Overwrite previous setting if possible.
2012-02-19 00:20:14 +04:00
Eugene Vigdorchik
a52d36987c
Remember the range for settings read from .sbt files
2012-02-16 16:58:51 +04:00
Eugene Vigdorchik
31735051ea
Overwrite previous setting if possible.
2012-02-15 13:06:00 +04:00
Mark Harrah
923acc1258
stable build load order
2012-02-14 21:59:12 -05:00
Mark Harrah
b96ceabb80
Ordering instances for ResolvedReference, BuildRef, ProjectRef
2012-02-14 21:59:12 -05:00
Mark Harrah
bda151c3bd
load plugin classes in a single class loader across builds. fixes #329
2012-02-14 21:59:12 -05:00
Mark Harrah
0fbe987cd0
resolve plugin dependency version conflicts according to build order, first part of fix for #329
2012-02-14 21:59:12 -05:00
Mark Harrah
b0e86898d1
support for dependency overrides
2012-02-14 21:59:12 -05:00
Mark Harrah
14e18f2350
use writeable local builds directly
2012-02-13 22:02:44 -05:00
Sanjin Sehic
0de9b67073
Remove 2-stage cloning for git and mercurial resolvers
2012-02-13 22:02:44 -05:00
Sanjin Sehic
3514ad7039
Silence svn checkout output
2012-02-13 22:02:44 -05:00
Sanjin Sehic
bcfe46c019
Track all remote branches in local git repository
...
This change fixes bug where non-HEAD branches could not be checked out
because the local copy of a remote git repository was not tracking
them.
2012-02-13 22:02:44 -05:00
Sanjin Sehic
43142ce3b4
Fix not cleaning up when checkout of a DVCS branch fails
2012-02-13 22:02:44 -05:00
Sanjin Sehic
5232dd941e
Fix resolving SVN URI with revision
2012-02-13 22:02:44 -05:00
Sanjin Sehic
837d973fd3
Remove potentially unsafe optimization in local resolver
...
Old implementation of the local resolver did not copy directory if it
was writable. This optimization can lead to some potential problems if
the directory is writable, but its subdirectories aren't.
New implementation of the local resolver does not have this
optimization and it always copies the directory into staging area.
2012-02-13 22:02:44 -05:00
Sanjin Sehic
5ed012c7d9
Add another run method in Resolvers for commands with no working directory
2012-02-13 22:02:44 -05:00
Sanjin Sehic
7efa24f59b
Inline trivial private methods
2012-02-13 22:02:44 -05:00
Sanjin Sehic
e4f809953f
Implement resolver for subversion repositories
...
All subversion URIs have to be prefixed with 'svn:' to separate them
from URIs for other resolvers. For example, 'svn:https://server/repo '
can now be used.
2012-02-13 22:02:44 -05:00
Sanjin Sehic
bc4443b408
Implement resolver for mercurial repositories
...
All mercurial URIs have to be prefixed with 'hg:' to separate them
from URIs for other resolvers. For example,
'hg:https://server/user/repo ' can now be used.
2012-02-13 22:02:44 -05:00
Sanjin Sehic
972acc871a
Allow retrieving of non-standard git URIs
...
Non-standard git URIs are ones that do not start with 'git:' nor end
with '.git'. An example of non-standard git URI is
'ssh://server/home/user/repo'.
The mechanism for specifying a non-standard git URI is done by
prefixing the whole URI with 'git:' to signify that it should be
handled with the git resolver. For example, non-standard git URIs like
'git:ssh://server/user/repo' and 'git:https://server/user/repo ' can
now be used.
2012-02-13 22:02:44 -05:00
Sanjin Sehic
77626f5232
Optimize retrieving from git repositories
...
Instead of cloning from a remote git repository for each branch,
revision or tag separately, the git resolver locally clones only once
the remote git repository and then creates further local clones from
this local copy of the remote repository.
First, optimization, of course, is execution speed, because cloning
local repository is much faster than remote repository. Furthermore,
because git uses hard-linking when a clone of local repository is
created, the second optimization is in space consumption.
For example, if we have one project that uses
https://github.com/harrah/xsbt.git#v0.11.1 and second project that
uses https://github.com/harrah/xsbt.git#v0.11.2 , in previous git
resolver implementation it would require two separate clones of the
remote git repository at https://github.com/harrah/xsbt.git . But, the
new git resolver requires only one clone of the remote git repository
and two local clones which take no space because of hard-linking.
2012-02-13 22:02:44 -05:00
Sanjin Sehic
942427bfa3
Extract local, remote, and git BuildLoader.Resolver from ResolveUnit
2012-02-13 22:02:44 -05:00
Mark Harrah
dd51dbb999
cleanup
2012-02-13 22:02:44 -05:00
Eugene Vigdorchik
7cf1e3fe3c
Remove artificial TaskKey.
2012-02-11 12:32:40 +04:00
Eugene Vigdorchik
c6ea7ccd67
Remove unneeded validation. It would be really nice
...
if sbt allowed to show all paths in a DAG between 2 given vertices.
2012-02-10 13:26:06 +04:00
Eugene Vigdorchik
6c5d398608
Validate resolvers when making ivy configuration and publishing.
2012-02-10 13:17:25 +04:00
Mark Harrah
baaf75b08a
Merge pull request #361 from vigdorchik/add_ivy_force
...
Mirror ivy \'force\' attribute in sbt.
2012-02-08 06:43:02 -08:00
Mark Harrah
bb765db6c2
drop compatibility framework definitions (dead anyway)
2012-02-07 21:56:37 -05:00
Eugene Vigdorchik
be3ea741bc
Mirror ivy \'force\' attribute in sbt.
2012-02-07 20:14:45 +04:00
Indrajit Raychaudhuri
cc904b4d5d
- Add default opt for javadoc
...
- Default credential file stays in `~/.sbt` now
2012-02-05 21:55:16 +05:30
Indrajit Raychaudhuri
d54c520cb1
Make mapping task names more consistent, ref #317 , credit @Atry
2012-02-05 21:55:15 +05:30
Mark Harrah
5fdbc86259
cleanup
2012-02-04 21:10:30 -05:00
Mark Harrah
410ba2afa9
API doc fixes
2012-02-04 21:10:30 -05:00
Eugene Vigdorchik
1fd1b7803c
Add a test to check for keeping a selected url upon reload.
2012-02-04 21:10:30 -05:00
Eugene Vigdorchik
33ec1c419d
Remember current URI + more tests. Review by @harrah
2012-02-02 17:15:14 +04:00
Eugene Vigdorchik
0dafd5ef26
Check for the case the project doesn't exist after reload.
2012-01-31 21:15:18 +04:00
Eugene Vigdorchik
8daa6d3279
Keep project selection upon reload.
2012-01-31 19:12:52 +04:00
Mark Harrah
482ff4978d
Merge pull request #342 from vigdorchik/wip_sourcepos_eugenevigdorchik
...
Wip sourcepos eugenevigdorchik
2012-01-30 14:34:03 -08:00
Eugene Vigdorchik
d1c799cd09
More cleanup.
2012-01-30 19:06:26 +04:00
Eugene Vigdorchik
dc0a40c776
Change SourcePosition definition + minor cleanup.
2012-01-30 19:06:24 +04:00
Eugene Vigdorchik
e40f735f6a
Display sourcepos info when at least 1 pos known.
2012-01-30 19:06:22 +04:00
Eugene Vigdorchik
09ff0664a3
Add SourcePosition to setting.
2012-01-30 19:06:18 +04:00
Mark Harrah
98c98f9c26
split command core to main/command/
2012-01-29 14:36:27 -05:00
Mark Harrah
26ec82ed73
Append instances for Set and Map
2012-01-27 21:09:11 -05:00
Mark Harrah
f55d34f617
Add Path.allSubpaths and API documentation for mappers
2012-01-26 21:28:19 -05:00
Mark Harrah
f092fb35c9
When *::main-class is set, use its value for run::main-class
2012-01-25 17:29:51 -05:00
Mark Harrah
7e71ab7c3d
fix forward aggregation enabled check
2012-01-22 22:06:53 -05:00
Mark Harrah
5e155900da
rework cross versioning to account for prerelease Scala versions
2012-01-22 22:06:53 -05:00
Mark Harrah
2255bd5a62
org.scala-tools.sbt -> org.scala-sbt and dropping scala-tools.org from defaults
2012-01-22 22:06:52 -05:00
Mark Harrah
3a0938878d
clarify behavior of State.reload
2012-01-19 11:00:24 -05:00
Mark Harrah
58d6f34dd5
separate configuration of global plugins, staging, and settings directories. fixes #331
...
System propery sbt.global.plugins configures global plugins directory
default: $sbt.global.base/plugins
System property sbt.global.staging configures global staging directory
default: $sbt.global.base/staging
System property sbt.global.settings configures directory containing global .sbt files
default: $sbt.global.base
2012-01-19 11:00:24 -05:00
Mark Harrah
6a7eb6c937
Merge branch 'parsing_changes' into 0.12
2012-01-15 13:09:41 -05:00
Mark Harrah
d65d23bd99
make new plugin configuration style higher precedence than deprecated project/plugins/ style
2012-01-15 12:29:54 -05:00
Mark Harrah
64ffd20e15
cleanup deprecations for 0.12.0
2012-01-15 12:29:53 -05:00
Mark Harrah
d146c7f84c
cleanup cache-related code, aiming for unknown cause of #292
2012-01-15 12:29:53 -05:00
Mark Harrah
a0300cd3b3
deprecate alternative project directory name '.sbt'
2012-01-15 12:29:53 -05:00
Mark Harrah
795b924f46
reimplement lighter support for controlling aggregation
2012-01-09 08:01:24 -05:00
Mark Harrah
82326cc899
new aggregation approach, still need exclusion mechanism
2012-01-09 08:01:24 -05:00
Mark Harrah
ec48779829
moved task axis before the key
2012-01-09 08:00:29 -05:00
Mark Harrah
79bbe8f8a4
fix tab completion of new inspect variations
2012-01-09 08:00:29 -05:00
Mark Harrah
fbe8630433
move calls to runExitHooks into the State.{reload,exit,reboot} commands. fixes #306
2011-12-16 08:21:54 -05:00
Mark Harrah
619b97d215
apply <module>* : command to apply State transformations defined by module names
2011-12-16 08:21:54 -05:00
Mark Harrah
5d398bc4a1
add native library support to 'console' and 'console-quick', fixes #305
2011-12-16 08:21:54 -05:00
Mark Harrah
967c3fe75a
support https git URLs by default
2011-12-15 19:20:26 -05:00
Mark Harrah
38a529d037
handle multiple projects sharing a single base directory better by including project ID in cache directory path
2011-12-13 17:29:08 -05:00
Mark Harrah
7347e89f73
'set every <setting>' for overriding every definition of a key. fixes #154
2011-12-13 17:29:08 -05:00
Mark Harrah
454bc6095b
show definitions and uses of a key (not a full scoped key, just a key)
2011-12-13 17:29:08 -05:00
Mark Harrah
9c87d078e3
InputTask.dependsOn, fixes #242
2011-12-13 17:29:08 -05:00
Mark Harrah
68027501f8
make ; a hard delimiter for multi-commands. fixes #270
2011-12-13 17:29:08 -05:00
Mark Harrah
2bb78c133f
introduce {sbt,scala}BinaryVersion
...
by default assumes binary compatibility for incremental version bumps for sbt 0.12+ and Scala 2.10+
2011-12-13 17:15:05 -05:00
Mark Harrah
7a75acfe03
treat case differences differently
2011-12-13 17:15:05 -05:00
Mark Harrah
34a39740c7
don't suggest similar keys for strings with only 1 or 2 characters
2011-12-13 17:15:05 -05:00
Mark Harrah
426acdf3f9
correct default resolver order
2011-12-13 17:15:05 -05:00
Mark Harrah
5a5e230b61
put default boot commands into an overridable 'boot' command
2011-12-13 17:15:05 -05:00
Holden Karau
07fd9ab57e
Increase the magic number for RichTaskableN and ApplyN
2011-12-13 12:30:06 -08:00
杨博
4a727bc9d3
Allow `ModuleID % Configuration`
2011-12-13 00:08:18 +08:00
Indrajit Raychaudhuri
859f569da0
Fix spelling: 'descendent' is now 'descendant', English ftw. Closes #293
2011-12-12 19:10:47 +05:30
杨博
3d4b96e2df
Fix stack overflow when use Build.projects in a Project's settings.
2011-12-11 01:37:47 +08:00
Mark Harrah
91a136e5f6
Merge pull request #276 from eed3si9n/inspecttree
...
refactored scoped key manifest extraction to ScopedKeyData
2011-11-27 19:27:11 -08:00
Mark Harrah
f3f4bea2d5
fixes #280 . sort aggregate and classpath dependencies separately to keep cycle detection for them separate
2011-11-27 17:48:01 -05:00
e.e d3si9n
6d9aeb94e0
compressed map and getOrElse into if-else
2011-11-26 01:41:24 -05:00
e.e d3si9n
546e7d9bad
refactored scoped key manifest extraction to ScopedKeyData
2011-11-23 19:53:20 -05:00
e.e d3si9n
e85833b2de
"inspect tree <key>" command
...
This is a slightly cleaned up version of sbt-inspectr. When "inspect
tree <key>" is called, SettingGraph case class is created recursively
along the dependencies, calling the similar code as "inspect" command's
Project.details. Graph object then renders it as an ascii tree.
2011-11-23 00:49:27 -05:00
Indrajit Raychaudhuri
7c0952a266
Tweak ReadDetailed message per suggestion
2011-11-23 04:12:31 +05:30
Indrajit Raychaudhuri
15177e92a2
Streamline and update help messages for built-in commands
2011-11-23 03:37:10 +05:30
Mark Harrah
62355c3e1e
implement 'skip in update'
2011-11-21 22:40:10 -05:00
Mark Harrah
b07bd3adaa
show deprecation message for project/plugins/. fixes #272 .
2011-11-21 22:37:58 -05:00
Mark Harrah
8743165d66
Adjust 'about' output because logging is now rotated.
2011-11-21 22:37:58 -05:00
Mark Harrah
eb2ec8c781
concurrent execution restrictions
2011-11-19 23:56:30 -05:00
Mark Harrah
f813256ced
detect invalid project IDs
2011-11-19 23:56:30 -05:00
Indrajit Raychaudhuri
f314225712
Remove deprecations
2011-11-10 15:41:16 +05:30
Indrajit Raychaudhuri
e1e6b25d0c
Honor maxErrors for compileInput
...
This uses a recently added technique (cf `TaskKey.local`) to introduce
local TaskKey and get around the nine parameter restriction.
2011-11-10 14:52:58 +05:30
Mark Harrah
03cd1ec3ab
need to explicitly trim whitespace in semicolon separated commands now. fixes #261 .
2011-11-09 18:30:35 -05:00
Indrajit Raychaudhuri
ad7aede533
Enable Javadoc generation in `doc` task.
...
`docSetting` has been updated to do both Scaladoc and Javadoc. In
Scala/Java hybrid projects, the output docs are rebased to `scala`
or `java` sub-directory accordingly. But for pure scala or pure java
projects the subdirectories aren't added to becompliant with user
expectation as much as possible. We do hybrid mode iff both *.scala
and *.java files exist; other doc resources (package.html, *.jpg etc.)
don't influence the decision.
2011-11-09 17:49:54 +05:30
Mark Harrah
bef997fe29
Merge pull request #258 from jsuereth/windows-git-fix2
...
Windows git fix
2011-11-07 12:39:16 -08:00
Josh Suereth
175f08e1e4
Stefan Zeiger's fixes to not NPE when checking for windows. Additional cleanup to put windows git-run checks in one function.
2011-11-07 07:38:25 -05:00
Josh Suereth
c5e31645a3
Attempting to fix git forking in windows
2011-11-07 07:38:11 -05:00
Mark Harrah
4a4c424d20
fix mistakenly changed return type of State.setResult
2011-11-05 09:13:34 -04:00
Indrajit Raychaudhuri
c42659318b
javaOptions and javacOptions would be better off as Task (like scalacOptions)
2011-11-04 13:51:17 -04:00
Mark Harrah
301c981c99
reset default logging level to be DownloadOnly instead of quiet
2011-11-04 13:40:59 -04:00
Mark Harrah
8e9e4b22cd
checksums configurable in [ivy] section. fixes #235
2011-11-04 13:40:59 -04:00
Mark Harrah
b154468097
invalidate 'update' cache when 'update' cache of a dependency is invalidated, fixes #246
2011-10-30 18:40:01 -04:00
Mark Harrah
2805dbde8f
track whether UpdateReport was cached or freshly generated
2011-10-30 18:39:47 -04:00
Mark Harrah
8c7efd02b4
API documentation for State
2011-10-30 18:39:18 -04:00
Mark Harrah
fa8fb49cc3
clean up last/global logging
...
add history of actually executed commands
2011-10-30 18:39:18 -04:00
Mark Harrah
2cbc755856
cleanup, add regex for escape sequences to be used later
2011-10-30 18:39:18 -04:00
Mark Harrah
85ad0c023e
clean up after temporary task directory
2011-10-30 18:39:18 -04:00
Mark Harrah
5fbe6e9d97
more flexible inter-project dependencies
2011-10-26 19:35:29 -04:00
Mark Harrah
c2ebcba73b
hook for more global build transformations
2011-10-26 19:35:29 -04:00
Indrajit Raychaudhuri
fdb08ff846
Default set of opt-ins for convenience
2011-10-23 06:27:13 +05:30
Mark Harrah
e3e23287af
reorganize help, allow keys to be arguments to 'help' command
2011-10-20 22:59:31 -04:00
Mark Harrah
078b72ee48
Add help for 'show' command. Fixes #236 .
2011-10-20 22:59:30 -04:00
Indrajit Raychaudhuri
289dc17c9b
Initialize project version to SNAPSHOT
2011-10-20 10:21:29 +05:30
Mark Harrah
bec7d3fb28
give builders access to resolved build before deciding if they are applicable
2011-10-18 22:49:09 -04:00
Mark Harrah
5fd3c1d2e5
task execution interruptible using ctrl+c. fixes #228,#229
...
- interrupts task execution only
- no further tasks scheduled
- existing tasks interrupted
- a task must terminate any other started threads when interrupted
- set cancelable to true to enable
- currently, 'run' properly terminates if the application properly
terminates when interrupted
- 'console' does not, 'test' depends on the test framework
- also bundled: set connectInput to true to connect standard input to forked run
2011-10-18 22:43:25 -04:00
Mark Harrah
22b71b823a
convenience method for running tasks in aggregate
2011-10-16 22:37:24 -04:00
Mark Harrah
e16bf3f695
fix stray closing */
2011-10-16 21:29:39 -04:00
Mark Harrah
5e37d8e585
brief API documentation on some core settings types
2011-10-16 20:20:45 -04:00
Mark Harrah
57b5b95ae3
Include plugins in update-sbt-classifiers. Fixes #138
2011-10-16 17:27:36 -04:00
Mark Harrah
1578341a10
add cleanupCommands setting to specify commands to run before interpreter exits. fixes #219
2011-10-16 17:27:36 -04:00
Mark Harrah
fe172a4a1d
Predef.error => sys.error
2011-10-16 17:27:36 -04:00
Mark Harrah
92fee61d46
remove remaining deprecated uses of identity
2011-10-16 17:27:36 -04:00
Mark Harrah
ddd70fcc77
inject 'log' method to State as convenience for CommandSupport.logger
2011-10-16 17:27:36 -04:00
Mark Harrah
6ddeca12a2
merge Scoped{Setting,Task,Input} and {Setting,Task,Input}Key
2011-10-16 17:27:36 -04:00
Mark Harrah
09a87a3bc6
better default behavior for classpathConfiguration for external Ivy files. fixes #214
2011-10-05 18:14:32 -04:00
Mark Harrah
e4848efcc8
store hashes of API instead of full API. fixes #21
2011-10-05 18:09:27 -04:00
Mark Harrah
b6fc7ba0a7
generalized build loaders
2011-10-03 09:58:37 -04:00
Mark Harrah
794f87d0b9
generalize classpath argument of consoleTask to ScopedTask
2011-10-03 09:58:37 -04:00
Mark Harrah
1fa855e2e7
fixes #211 . +/++ only clear scalaVersion/scalaHome in Global config+task.
2011-10-01 14:40:14 -04:00
Mark Harrah
2e38c8484b
defer validation of ;-separated commands until individual command is run. fixes #201
2011-10-01 14:40:14 -04:00
Mark Harrah
7702d30f40
generalize addArtifact arguments to Initialize[...]. fixes #207
2011-10-01 14:40:14 -04:00
Mark Harrah
d15504d970
local settings, sbt-package-private for now
2011-10-01 14:40:14 -04:00
Mark Harrah
c9039a4d44
separate out generators for test builds
2011-10-01 14:40:14 -04:00
Mark Harrah
4e208b0250
fix displaying non-ResolvedReferences in relativeShow
2011-10-01 14:40:14 -04:00
Mark Harrah
230d15cc5b
watch aggregated dependencies. fixes #206
2011-09-26 18:23:16 -04:00
Mark Harrah
dc70cb7fb9
clean up Reduced
2011-09-26 08:20:08 -04:00
Mark Harrah
5ea02bf148
fix #204
2011-09-26 08:20:08 -04:00
Mark Harrah
9ad15672d5
fix laziness of parser failure messages
2011-09-26 08:20:07 -04:00
Mark Harrah
ba70e9d604
fix time at which task session state gets cleared
2011-09-24 21:18:24 -04:00
Mark Harrah
2a21a86f8c
move from TaskData to new system
2011-09-21 22:54:46 -04:00
Mark Harrah
5918c24722
Task state.
...
* Allow tasks to provide State transformations that are applied after all tasks complete.
* Provide convenience methods for preserving state across invocations.
* Option of session or persisted state.
2011-09-21 22:54:46 -04:00
Mark Harrah
541004419f
provide consecutive tab press count for completion combinators
2011-09-20 20:51:47 -04:00
Mark Harrah
dcea4f2293
make ComponentManager honor value of Ivy home provided by the launcher
2011-09-16 23:08:01 -04:00
Mark Harrah
66c24c9e59
Add standard manifest attributes before user options instead of after. Fixes #187
2011-09-16 22:04:56 -04:00
Mark Harrah
de6f55952f
allow watching and triggered messages to be customized
2011-09-16 22:04:56 -04:00
Mark Harrah
babe8dbbdb
conditionally initialize onLoad and onUnload. fixes #186
2011-09-16 22:04:56 -04:00
Mark Harrah
79131a60d1
sort output of 'projects' by name. fixes #182 .
2011-09-13 22:56:55 -04:00
Mark Harrah
9d0cb47e0a
force REPL startup to be synchronous. fixes #175 .
2011-09-12 19:48:10 -04:00
Mark Harrah
516e89200b
Add custom resolvers from global plugin project to project/. Fixes #177 .
2011-09-12 19:48:10 -04:00
Indrajit Raychaudhuri
ebb16bc9a3
Deprecate `scaladocOptions` in favor of `scalacOptions in doc`
2011-09-13 03:39:48 +05:30
Mark Harrah
1b0c619308
don't add _root_ to definitions in the empty package
2011-09-11 13:46:30 -04:00
Indrajit Raychaudhuri
bd8d1c0698
Support for simple exclusion rules in inline dependencies
...
This support excluding a library from the dependency tree for a given
set of `ExclusionRule`s. There are two ways to achieve this:
- Using `organization` and `name` pairs:
val dep = "org" % "name" % "version" exclude("commons-codec", "commons-codec") exclude("org.slf4j", "slf4j-log4j")
- Using `ExclusionRule`:
val dep = "org" % "name" % "version" excludeAll(ExclusionRule("commons-codec", "commons-codec"), ExclusionRule("org.slf4j", "slf4j-log4j"))
2011-09-10 04:32:47 +05:30
Mark Harrah
0283ad2fc8
prefix automatic imports with _root_. Fixes #173 .
2011-09-09 18:39:10 -04:00
Indrajit Raychaudhuri
450fa15c0e
Expose snapshot flag via standard `SettingKey`
2011-09-09 18:35:57 +05:30
Mark Harrah
f096d76cf6
'skip' description
2011-09-04 13:33:40 -04:00
Mark Harrah
370145994f
Revert modifying publishMavenStyle based on sbtPlugin.
2011-09-04 13:33:40 -04:00
Mark Harrah
b3291dc4ee
Print names of Plugins on classpath in 'about' command.
2011-09-03 17:30:38 -04:00
Mark Harrah
fc3ebb7436
don't interpret files with exact name '.sbt' as quick configurations
2011-09-03 17:30:38 -04:00
Mark Harrah
5420a48a87
on-load message customizable, more specific message for plugin projects
2011-09-03 17:30:37 -04:00
Mark Harrah
8938fc564e
fix includeFilter in unmanagedJars reference
2011-09-03 17:30:37 -04:00
Mark Harrah
228b245d2d
make filter changes more backwards compatible. ref #165
2011-09-03 14:59:34 -04:00
Mark Harrah
14bf0886c9
Revert "scalacOptions, javacOptions in Compile in project/plugins/ affect build definitions"
...
This reverts commit 5793a3c66cd47087562072b69fb21d262cbbd0bc in favor of migrating project/plugins/
to project/, which makes project/ a proper project.
Conflicts:
main/Load.scala
2011-09-03 14:59:34 -04:00
Mark Harrah
a824aa97e5
migrate project/plugins/ contents to project/. fixes #166
2011-09-03 14:59:34 -04:00
Mark Harrah
d145fcc457
scalacOptions, javacOptions in Compile in project/plugins/ affect build definitions. fixes #166
2011-09-03 14:59:34 -04:00
Mark Harrah
f515a0e8b6
Merge pull request #165 from indrajitr/0.11
...
Externalize resourceFilter configuration
2011-09-03 07:51:46 -07:00
Indrajit Raychaudhuri
7f9adf31b8
Add start-year for compliance in ProjectInfo
2011-09-03 02:19:08 +05:30
Indrajit Raychaudhuri
5614243ce9
Make include and exclude filters more consistent in name and behavior.
...
GlobalScope has conservative default with task specific filters explicitly modified.
2011-09-03 02:09:25 +05:30
Mark Harrah
02f666ec0e
miscellaneous fixes
2011-08-31 20:59:40 -04:00
Indrajit Raychaudhuri
434d7f2322
organizationName and organizationHomepage need not be set in GlobalScope
2011-08-31 20:34:40 +05:30
Mark Harrah
65ae7dab1c
switch publishMavenStyle off when project is an sbt plugin
2011-08-30 09:16:33 -04:00
Mark Harrah
0c2cb33d7b
Undeprecate conversions to ScopedKey
2011-08-28 13:30:11 -04:00
Mark Harrah
1471081c0d
test to ensure correctness of local resolver+useOrigin in ivysettings.xml
2011-08-27 23:13:10 -04:00
Mark Harrah
febe7e56e1
fix binary dependency recompilation problem introduced by fix for #108
2011-08-27 11:54:16 -04:00
Mark Harrah
565cd3802f
fix dependsOn breakage from Initialize rework
2011-08-26 23:27:03 -04:00
Mark Harrah
039982ab1e
better default for traces in run
2011-08-26 23:27:03 -04:00
Mark Harrah
bf1d471118
rearrange watchSources construction to automatically add sources for new configurations
2011-08-26 23:27:03 -04:00
Mark Harrah
faeb9e2fb1
Make 'package' an alias for 'package-bin'. Fixes #156
2011-08-23 19:53:33 -04:00
Mark Harrah
9ebf809259
test for separate configuration of doc sources
2011-08-23 19:51:51 -04:00
Mark Harrah
71a346bd4c
support separate configuration of doc inputs
2011-08-22 22:48:35 -04:00
Mark Harrah
49b85384e7
use -Yrepl-sync for console-project to avoid deadlock on REPL startup in 2.9
2011-08-19 22:13:56 -04:00
Mark Harrah
6ea27e893b
handle Scala version better in 'about' command
2011-08-18 08:23:43 -04:00
Mark Harrah
d36e02ea22
allow setting initialization to be partially dynamic and run in parallel
2011-08-14 10:53:37 -04:00
Mark Harrah
f7f6879f5e
provide access to some project structure as a setting
2011-08-14 10:53:37 -04:00
Mark Harrah
18b57bb101
fix ++ command to not require a space after it
2011-08-14 10:53:37 -04:00
Mark Harrah
90f25b234e
Settings overhaul, intended to be source compatible where it matters.
...
Moves many methods previously provided by implicit conversions directly onto the classes
for better discoverability, especially with scaladoc.
1. Initialize now allowed in more places. Minor renamings in Initialize to avoid conflicts
a. map -> apply
b. get -> evaluate
2. Identity on Scoped* is deprecated- it is now redundant
3. Can now use += and <+= for String, Int, Long, Double settings.
There may be some problematic corner cases in inference, especially with +=, ++, <+=, <++=
4. Some classes with a scoped: ScopedKey[T] method now have scopedKey: ScopedKey[T] instead.
5. The implicit conversion to ScopedKey[T] is now deprecated. Use the scopedKey method.
6. :== and ::= are now private[sbt] to better reflect that they were internal use only.
2011-08-14 10:53:37 -04:00
Josh Suereth
95b8c34627
Changed skip to be a Task so we can dynamically compute it's value based on a file
2011-08-12 13:30:21 -04:00
Indrajit Raychaudhuri
b57e8cd17a
Hava scaladocOptions in GlobalScope for consistency
2011-08-11 01:05:30 +05:30
Indrajit Raychaudhuri
952089bf92
Add well-known main manifest attributes by default for binary and source jars
2011-08-08 20:57:18 +05:30
Mark Harrah
10aa2d67c6
use sbt version in target path for sbt plugins
2011-08-05 21:59:49 -04:00
Mark Harrah
70dcae84ee
preserve key+configuration ambiguity through task+extra parsing. fixes #135
2011-08-05 21:59:49 -04:00
Mark Harrah
1d4d566d6b
support use of native libraries in 'run' and 'test'
2011-08-05 21:56:32 -04:00
Mark Harrah
29db8dbe8d
include native libraries on unmanaged classpath
2011-08-05 21:56:32 -04:00
Mark Harrah
93801cd946
temporary directory for use by tasks that will be cleaned up after task execution
2011-08-05 21:56:32 -04:00
Mark Harrah
f065037572
onComplete hook for cleanup after task execution
2011-08-05 21:56:32 -04:00
Indrajit Raychaudhuri
bb75b74eb6
Remove some deprecations and redundant code
2011-08-05 13:30:04 +05:30
Mark Harrah
980e906ca1
handle custom -bootclasspath in incremental recompilation
2011-08-04 07:20:25 -04:00
Mark Harrah
a19d5a799c
try out simplified display of scoped keys
2011-08-04 07:20:25 -04:00
Mark Harrah
70113c88fa
remove special case for display for 'compile' configuration
2011-08-04 07:20:25 -04:00
Indrajit Raychaudhuri
67102aadff
- Extra Settings are now available to control project information, viz., name, description, homepage, organization name, organization homepage, licenses
...
- Modified name/signature of some private types/methods to reduce confusion (all in limited scope, so nothing should change from end user's pov)
- Enriched Ivy and Maven descriptors produced out of the box (see Keys.scala and Defaults.scala for more)
- Projects do not need to create custom Ivy <info/> block anymore, there is more settings-specific control instead
2011-08-03 08:49:46 +05:30
Mark Harrah
e67b3be331
allow Defaults.packageTasks to be used in global configuration
2011-08-01 14:23:42 -04:00
Mark Harrah
a6ef6481ac
use configurations for modules for update-classifiers. fixes #104
2011-07-31 22:17:50 -04:00
Mark Harrah
93ac92fee7
artifact name should be moduleName by default, not normalized name
2011-07-31 16:50:39 -04:00
Mark Harrah
f8d12c5106
Seq[Setting[_]] <=> SettingsDefinition
2011-07-30 18:11:20 -04:00
Mark Harrah
d8362761de
fix fullRun*Task not doing work. missed by compiler due to value discarding
2011-07-30 18:11:20 -04:00
Mark Harrah
af6b420083
fix automatic artifact configuration selection for non-standard scope configurations
2011-07-29 23:33:10 -04:00
Mark Harrah
4305d94f5e
add convenience methods for filtering settings and keys
2011-07-29 23:33:10 -04:00
Mark Harrah
3e9921a07a
for undefined references, suggest the nearest defined scope that is more specific if it exists. fixes #135
2011-07-27 22:35:20 -04:00
Mark Harrah
c195f943c0
aggregate 'last'. fixes #131
2011-07-27 19:50:59 -04:00
Mark Harrah
a8fd017499
maven-compatible plugin dependency system
2011-07-27 19:50:59 -04:00
Mark Harrah
e75628c81b
make scalaInstance a task. fixes #127
2011-07-26 13:34:02 -04:00
Mark Harrah
73a10644d7
add 'skip' for manually overriding whether recompilation should occur. fixes #128
2011-07-26 13:34:01 -04:00
Michael Bayne
74ac135968
Fixed reversed logic in fix for #125 .
2011-07-26 09:25:57 -07:00
Mark Harrah
021009052e
don't print Uninitialized exception name
2011-07-25 21:59:22 -04:00
Mark Harrah
eb31cc025a
Allow multiple sources to target a target directory in sync.noDuplicateTargets. fixes #125
2011-07-25 21:38:01 -04:00
Mark Harrah
5d353b4113
lookup sbt version in 'update' to allow using binary plugins with nightlies
2011-07-25 21:38:01 -04:00
Mark Harrah
1c151d116a
pull scoped key examples from references as well as definitions. ref #121
...
this should improve the keys available for completion, including globally defined keys
2011-07-24 22:35:27 -04:00
Mark Harrah
a1dc17b2c6
allow task axis to be specified when the setting has no instances with it specified. fixes #121
2011-07-24 22:35:27 -04:00
Mark Harrah
00c41ae59a
include logging backing file in 'about' command output
2011-07-24 17:36:42 -04:00
Mark Harrah
30baf74169
improved global logging and 'last' command
2011-07-24 17:36:42 -04:00
Mark Harrah
f654b03618
allow running last from load failure prompt
2011-07-24 17:36:42 -04:00
Mark Harrah
2d4d27e529
add 'about' command with sbt versions and Scala versions
2011-07-24 17:36:42 -04:00
Mark Harrah
109326d34b
additional warning when ignoring project load failure
2011-07-24 17:36:42 -04:00
Mark Harrah
a9315dbd49
Interpret empty string as retry on project load error.
2011-07-24 17:36:42 -04:00
Mark Harrah
2cacdff1f8
use sbt snapshots repository for -SNAPSHOT version
2011-07-24 17:36:41 -04:00
Mark Harrah
5903fb88a2
includes sbt, Scala version extra attributes in repository/cache patterns
2011-07-23 23:07:54 -04:00
Mark Harrah
71d306a2a2
always publish ivy files for sbt plugins
2011-07-23 23:07:54 -04:00
Mark Harrah
cc10940813
use extra attributes for sbt, Scala version of sbt plugins
2011-07-23 23:07:54 -04:00
Mark Harrah
f0a9305ba2
clean up graphSettings
2011-07-23 23:07:54 -04:00
Fred Dubois
4ffe240eca
Support for readonly file ProjectRef
...
This allows using a project reference that points to a readonly
directory.
The use case for this is having sbt plugin projects on a network
share (readonly) that you can just point to. The plugin projects
get copied and built automatically, just like a git project
reference gets cloned and built.
This will ease plugin imcompatibilies between minor sbt versions,
avoiding to have to cross build plugins against all compatible sbt
versions.
2011-07-23 22:24:46 -04:00
Mark Harrah
4ae0ba6b57
more refactoring of special settings: input tasks. fixes #114
2011-07-21 22:03:56 -04:00
Mark Harrah
fb9e3bd516
apply finalTransforms to reapplied settings
2011-07-21 22:03:56 -04:00
Mark Harrah
6acbbb05a3
support configuring checksums differently for publish, publish-local, update, and update-sbt-classifiers. fixes #115
2011-07-21 22:03:56 -04:00
Mark Harrah
bf8b577e4f
proper resolvedScoped implementation
2011-07-19 21:29:05 -04:00
Mark Harrah
f8183cc6f2
remove incomplete debugging
2011-07-19 21:29:05 -04:00
Mark Harrah
e748a74eac
spelling
2011-07-19 21:29:05 -04:00
Mark Harrah
3f0644d136
use launcher repositories for update-sbt-classifiers. fixes #88
2011-07-19 21:29:05 -04:00
Mark Harrah
b3bcd82a21
better location for global settings in the precedence chain
2011-07-18 17:14:22 -04:00
Mark Harrah
bcc3e12abc
use 'scalaVersion in update' for cross building, IvyScala.substituteCross for generality. fixes #86
...
also, 'scalaVersion in artifactName` for the version to append to artifacts
2011-07-17 11:26:27 -04:00
Mark Harrah
b956b62c89
use name setting when displaying updated project
2011-07-17 11:26:27 -04:00
Mark Harrah
cc50225bfb
fix placement of global settings so that project-local settings override global settings
2011-07-16 13:31:18 -04:00
Mark Harrah
0ea418e985
provide better indication of cause of incompatible sbt versions
2011-07-16 12:53:29 -04:00
Mark Harrah
b29380de96
add default identity load/unload transformations
2011-07-15 15:48:36 -04:00
Mark Harrah
dcedc57ad7
better default transitiveClassifiers for update-sbt-classifiers
2011-07-13 18:08:29 -04:00
Mark Harrah
ed20823886
cleanup
2011-07-13 18:08:29 -04:00
Mark Harrah
3eef6229db
show test key in no tests message. fixes #102
2011-07-12 23:09:57 -04:00
Mark Harrah
555b1c04a4
shorten default hash suffix for project ID
2011-07-12 23:09:57 -04:00
Mark Harrah
f7cb85d36e
restrict discarding session settings error message to direct load/reload. fixes #99
2011-07-12 23:09:57 -04:00
Mark Harrah
2d342d1485
allow global sbt directory to be configured. fixes #96
2011-07-12 23:09:57 -04:00
Mark Harrah
cbf7b82cdb
clean up whitespace handling in commands. fixes #97
2011-07-12 07:47:31 -04:00
Mark Harrah
eb14e97485
use runtime full-classpath for plugins
2011-07-11 07:55:27 -04:00
Mark Harrah
2e99fde9d2
overrideConfigs method for easier configuration substitution
...
ref #42
2011-07-09 16:54:41 -04:00
Mark Harrah
9737a30a7d
global settings. closes #52
2011-07-09 16:54:41 -04:00
Mark Harrah
b096d1b175
global settings preparation: separate compilation/loading stages of Eval
2011-07-09 16:54:41 -04:00
Mark Harrah
1d792c3601
warn when there is an sbt version conflict. fixes #80
2011-07-08 21:54:59 -04:00
Mark Harrah
15427d32b3
Include evicted modules and statistics in UpdateReport
2011-07-08 21:54:59 -04:00
Mark Harrah
467f6bc486
scope transitiveClassifiers by the update*classifiers task using it
2011-07-07 22:04:28 -04:00
Mark Harrah
ac4b00c1de
warn when test argument provided for undefined test framework. fixes #87
2011-07-07 22:04:28 -04:00
Mark Harrah
1ee6b903f3
better global plugin support
2011-07-06 07:30:47 -04:00
Mark Harrah
d7a35e8e1d
minor rearranging of rootProject
2011-07-06 07:30:47 -04:00
Mark Harrah
6e1c41af64
psuedo-unique default ID to avoid collisions in simple cases
2011-07-06 07:30:47 -04:00
Mark Harrah
aebde6b3e6
move dependency mapping to IvySbt#Module
2011-07-06 07:30:47 -04:00
Mark Harrah
179a2a31c8
convenience methods on Scope for setting axes
2011-07-06 07:30:47 -04:00
Mark Harrah
353be43978
redid global plugins for proper classpath handling and preparation for global settings (pending)
2011-07-06 07:30:47 -04:00
Mark Harrah
e36ab1f000
temporarily drop global plugins, preserve Attributed more
2011-07-06 07:30:47 -04:00
Mark Harrah
9fb6f20177
declare sbt dependency for plugins to be in Provided, ref #80
2011-07-03 15:44:53 -04:00
Mark Harrah
17fad01b01
convenience on State for global locking
2011-07-03 15:44:52 -04:00
Mark Harrah
8d922b61ab
cleanup MainResult handling to enable finer control over reloading
2011-07-01 23:38:03 -04:00
Mark Harrah
f94ab145b5
accept arguments for scripts
2011-06-29 21:44:55 -04:00
Mark Harrah
5ec6a0479f
fix help message for 'set'
2011-06-29 07:47:33 -04:00
Mark Harrah
37c5062d2d
don't drop session settings during cross build
2011-06-27 22:29:48 -04:00
Mark Harrah
205a67e4a3
warn when reload discards session settings
2011-06-27 22:29:48 -04:00
Mark Harrah
5b1ca2c6b0
drop SessionSettings.prepend, which wasn't used
2011-06-27 22:29:48 -04:00
Simon Olofsson
f05cbf00b2
Recover when gitRetrieve(.) fails.
...
When gitRetrieve(.) fails (e.g. because no git is installed) an
exception is thrown but the created directory isn't removed. This commit
removes the directory when an exception occurs, so that the user can
retry.
2011-06-27 16:45:22 +02:00
Mark Harrah
f7068a4cbb
introduce file-mappings for File->File, Extracted.append for reloading with additional settings
2011-06-26 12:27:06 -04:00
Mark Harrah
48940bf23c
Merge pull request #74 from duboisf/issue_68
...
Added JavacLogger, closes #68
2011-06-25 06:59:57 -07:00