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