Commit Graph

1778 Commits

Author SHA1 Message Date
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
Mark Harrah 13bcdf497e Merge pull request #367 from vigdorchik/363_validate_resolvers
363 validate resolvers
2012-02-12 15:07:56 -08: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
Eugene Vigdorchik 1bc16164b5 Drop # 2012-02-08 18:30:46 +04:00
Eugene Vigdorchik aae19a4d0d Better test. 2012-02-08 13:13:23 +04:00
Mark Harrah d61ae7899f drop 2.7 compatibility in compiler reporter 2012-02-07 21:56:37 -05:00
Mark Harrah bb765db6c2 drop compatibility framework definitions (dead anyway) 2012-02-07 21:56:37 -05:00
Mark Harrah 111dfba6a3 support setting sbt.version from system property, which overrides setting in a properties file
fixes #354
2012-02-07 21:52:37 -05:00
Eugene Vigdorchik be3ea741bc Mirror ivy \'force\' attribute in sbt. 2012-02-07 20:14:45 +04:00
Mark Harrah b0853cad31 link to FAQ in README 2012-02-06 15:27:30 -05:00
Mark Harrah 9f60ea55b4 update versions in README 2012-02-06 15:18:30 -05: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 c17bf071d7 simpler compatibility fix works ok 2012-02-04 21:10:30 -05:00
Mark Harrah 5bdd55b751 keep scala-tools.org snapshots around a little longer 2012-02-04 21:10:30 -05:00
Mark Harrah 410ba2afa9 API doc fixes 2012-02-04 21:10:30 -05:00
Mark Harrah dd4efec03c auto detect Scala version for non-cross-versioned launcher app 2012-02-04 21:10:30 -05:00
Mark Harrah 7b31db4171 no cross versioning for sbt 2012-02-04 21:10:30 -05:00
Mark Harrah 651d858676 substitute variables in explicit version strings 2012-02-04 21:10:30 -05:00
Mark Harrah 8b06887753 back end side of auto Scala version detection in launcher 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
Mark Harrah 3efcc07b93 Merge pull request #348 from vigdorchik/wip_keep_project_on_reload
keep project on reload
2012-02-02 06:30:24 -08: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
Eugene Vigdorchik 1f0a45e950 Merge branch '0.12' of git://github.com/harrah/xsbt into 0.12 2012-01-31 17:50:17 +04:00
Mark Harrah c7b73dc938 substitute variables in custom repository definitions 2012-01-31 07:01:08 -05: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 7e57bf5d09 Merge branch 'wip_sourcepos_eugenevigdorchik' of github.com:vigdorchik/xsbt into wip_sourcepos_eugenevigdorchik 2012-01-30 20:00:00 +04:00
Eugene Vigdorchik bf145cbbdc Merge branch 'wip_sourcepos_eugenevigdorchik' of github.com:vigdorchik/xsbt into 0.12 2012-01-30 19:59:02 +04: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 68e178144f fix dep-management/pom-packaging test 2012-01-29 14:40:53 -05:00