Commit Graph

3667 Commits

Author SHA1 Message Date
Mark Harrah 45eacbad4c Declare extra namespace in ModuleDescriptor for parsed plugin poms. Fixes #368. 2012-02-27 18:38:04 -05:00
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 cca5b7e2f7 Add overwrite validation to the test. 2012-02-27 19:24:10 +04:00
Eugene Vigdorchik e747b7b378 Add simple scripted test to verify overwrite functionality doesn't break .sbt file. 2012-02-27 18:28:06 +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
Mark Harrah 7b194e3dee cleanup SourcePosition hierarchy 2012-02-25 12:01:07 -05:00
Mark Harrah 52bca9bb8a add ConflictWarning.disable convenience method 2012-02-21 22:47:07 -05:00
Mark Harrah edf7cb228c fix build 2012-02-21 22:47:07 -05:00
Mark Harrah 509d8b7280 Merge pull request #377 from vigdorchik/classify_test_artifacts
'test-' preffix should be stripped to obtain classifier.
2012-02-21 10:17:53 -08:00
Eugene Vigdorchik 45073ee7f1 test- preffix should be stripped to obtain classifier. 2012-02-21 18:52:50 +04:00
Mark Harrah 457a0dc142 update README for 0.12.0-M1 2012-02-20 20:44:35 -05:00
Mark Harrah 14c5ed2985 Merge pull request #376 from vigdorchik/use_atomic_counters
Use AtomicInteger for test statistics, Fixes #372.
2012-02-20 14:46:23 -08:00
Eugene Vigdorchik 1458cd52dc Use AtomicInteger for test statistics, Fixes #372. 2012-02-20 19:12:44 +04: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
Mark Harrah 094bc7c7a5 version bump 2012-02-19 22:41:26 -05:00
Mark Harrah 95debe52cb milestone version 2012-02-19 22:41:26 -05:00
Mark Harrah b03416b37d push milestones to ivy-releases instead of ivy-snapshots 2012-02-19 22:41:26 -05:00
Mark Harrah c40055cc1c cleanup, fix compilation 2012-02-19 22:41:26 -05:00
Daniel C. Sobral a3c745a4e6 Fix file descriptor leak.
Close an InputStream when finished reading it. When given an
OutputStream to connect to a process input, close it when the
transfer is completed. Protect System.in in this latter case.
2012-02-19 16:30:30 -05:00
Daniel C. Sobral 101fe06510 Revert "explicitly close streams"
Revert "explicitly close streams on java.lang.Process to avoid descriptor leaks"

This reverts commit 3191eedf9e.
2012-02-19 16:30:30 -05:00
Eugene Vigdorchik e0b2475dd6 Overwrite previous setting if possible. 2012-02-19 00:20:14 +04:00
Mark Harrah b6c9742060 Merge pull request #370 from vigdorchik/introduce_range_positions
Remember the range for settings read from .sbt files
2012-02-17 05:04:59 -08: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 5fa93ca9f9 work around 'data has not been loaded' exception when direct dependency overridden by newer version 2012-02-14 21:59:13 -05:00
Mark Harrah 6312978f9a better override test 2012-02-14 21:59:12 -05: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