cargo.git
11 years agoGitSource delegates to PathSource for path ops
Carl Lerche [Tue, 24 Jun 2014 00:03:13 +0000 (17:03 -0700)]
GitSource delegates to PathSource for path ops

11 years agoFix the README
Yehuda Katz [Tue, 24 Jun 2014 00:02:22 +0000 (17:02 -0700)]
Fix the README

11 years agoSupport [package] or [project]
Yehuda Katz [Mon, 23 Jun 2014 23:57:27 +0000 (16:57 -0700)]
Support [package] or [project]

The plan is to free up [project] for simpler config plus output flags
like -O that don't make sense in packages.

11 years agoMerge pull request #29 from cmr/make-install
Yehuda Katz [Mon, 23 Jun 2014 23:34:44 +0000 (16:34 -0700)]
Merge pull request #29 from cmr/make-install

Makefile: support install, makes packaging easier

11 years agoSpecify the SourceId that the path source represents
Carl Lerche [Mon, 23 Jun 2014 23:16:22 +0000 (16:16 -0700)]
Specify the SourceId that the path source represents

11 years agoMakefile: support install, makes packaging easier
Corey Richardson [Mon, 23 Jun 2014 22:33:14 +0000 (15:33 -0700)]
Makefile: support install, makes packaging easier

11 years agoMerge pull request #28 from alexcrichton/new-toml
Yehuda Katz [Mon, 23 Jun 2014 21:13:59 +0000 (14:13 -0700)]
Merge pull request #28 from alexcrichton/new-toml

Move from rust-toml to toml-rs

11 years agoMove from rust-toml to toml-rs
Alex Crichton [Mon, 23 Jun 2014 15:39:50 +0000 (08:39 -0700)]
Move from rust-toml to toml-rs

This commit should greatly improve all error messages related to decoding
Cargo.toml.

11 years agoFix long lines
Alex Crichton [Mon, 23 Jun 2014 17:30:25 +0000 (10:30 -0700)]
Fix long lines

11 years agoFix a red test
Alex Crichton [Mon, 23 Jun 2014 16:44:00 +0000 (09:44 -0700)]
Fix a red test

11 years agoSimplify flags
Yehuda Katz [Sun, 22 Jun 2014 06:51:55 +0000 (23:51 -0700)]
Simplify flags

11 years agoImprove error messages
Yehuda Katz [Sun, 22 Jun 2014 06:16:12 +0000 (23:16 -0700)]
Improve error messages

11 years agoMore shell refactoring
Yehuda Katz [Sun, 22 Jun 2014 06:02:38 +0000 (23:02 -0700)]
More shell refactoring

11 years agoThread the shell through more of the system
Yehuda Katz [Sun, 22 Jun 2014 05:22:56 +0000 (22:22 -0700)]
Thread the shell through more of the system

11 years agoTerminal colors
Yehuda Katz [Sun, 22 Jun 2014 01:53:07 +0000 (18:53 -0700)]
Terminal colors

11 years agoAdds initial usage support
Yehuda Katz [Sat, 21 Jun 2014 23:15:31 +0000 (16:15 -0700)]
Adds initial usage support

11 years agoImprove error messages
Yehuda Katz [Sat, 21 Jun 2014 06:26:19 +0000 (23:26 -0700)]
Improve error messages

11 years agoMake try! an extended version of std::try!
Yehuda Katz [Sat, 21 Jun 2014 02:18:06 +0000 (19:18 -0700)]
Make try! an extended version of std::try!

The only caveat to this is that you cannot use try! inside of a function
that return a Result to another function that expects a totally generic
error.

The primary case of this is Encodable/Decodable, which call into
user-specified methods, expecting an `E` back. In these (extremely
unusual) cases, you can use raw_try!.

Of note:

* Once Error lands in core (optimistic much?), Encodable/Decodable can
  be changed to expect an E: Error + FromError<E>.
* This works fine with concrete error types, since FromError maps things
  like IoError to IoError. The only reason it doesn't work with totally
  generic E is that we can't implement FromError<Box<Error>> for
  impl Error and FromError<E> for E.

11 years agoHandle some errors better
Tim Carey-Smith + Tom Dale [Sat, 21 Jun 2014 00:51:35 +0000 (17:51 -0700)]
Handle some errors better

Also, use cargo_try in more places

11 years agoMerge pull request #25 from alexcrichton/fingerprints
Yehuda Katz [Fri, 20 Jun 2014 05:13:29 +0000 (22:13 -0700)]
Merge pull request #25 from alexcrichton/fingerprints

Don't rebuild dependencies if they haven't changed

11 years agoDon't rebuild dependencies if they haven't changed
Alex Crichton [Fri, 20 Jun 2014 01:53:18 +0000 (18:53 -0700)]
Don't rebuild dependencies if they haven't changed

This commit adds support for recognizing "fingerprints" of upstream
dependencies. When a dependency's fingerprint change, it must be rebuilt.
Currently the fingerprint unconditionally includes the version of the compiler
you're using as well as a specialized version depending on the type of source
you're compiling from:

  - git sources return their fingerprint as the current SHA. This will
    disregard any local changes.
  - path sources return their fingerprint as the maximum mtime of any file found
    at the location. This is a little too coarse and may rebuild packages too
    often (due to sub-packages), but this should get the job done for now.

When executing `cargo compile`, dependencies are not rebuilt if their
fingerprint remained constant.

11 years agoMerge pull request #23 from alexcrichton/crate-types
Yehuda Katz [Fri, 20 Jun 2014 02:49:56 +0000 (19:49 -0700)]
Merge pull request #23 from alexcrichton/crate-types

Invoke rustc only once for multiple crate types

11 years agoInvoke rustc only once for multiple crate types
Alex Crichton [Thu, 19 Jun 2014 22:21:00 +0000 (15:21 -0700)]
Invoke rustc only once for multiple crate types

11 years agoMerge pull request #24 from alexcrichton/style
Yehuda Katz [Fri, 20 Jun 2014 01:58:52 +0000 (18:58 -0700)]
Merge pull request #24 from alexcrichton/style

Update to rust style guidelines

11 years agoUpdate to rust style guidelines
Alex Crichton [Thu, 19 Jun 2014 23:45:19 +0000 (16:45 -0700)]
Update to rust style guidelines

* 80 char line limit highly recommended
* /// and //! for doc comments

11 years agoGet travis working on OSX
Alex Crichton [Thu, 19 Jun 2014 22:27:12 +0000 (15:27 -0700)]
Get travis working on OSX

11 years agoAdd --verbose cause chain support
Yehuda Katz [Thu, 19 Jun 2014 21:13:39 +0000 (14:13 -0700)]
Add --verbose cause chain support

11 years agoMerge pull request #18 from erickt/master
Alex Crichton [Thu, 19 Jun 2014 19:00:37 +0000 (12:00 -0700)]
Merge pull request #18 from erickt/master

Fix a typo in the README

11 years agoMerge pull request #22 from alexcrichton/make
Yehuda Katz [Thu, 19 Jun 2014 18:53:49 +0000 (11:53 -0700)]
Merge pull request #22 from alexcrichton/make

Allow executing an arbitrary command before building

11 years agoUpdate hammer.rs
Alex Crichton [Thu, 19 Jun 2014 18:40:16 +0000 (11:40 -0700)]
Update hammer.rs

11 years agoAdd a .travis.yml
Alex Crichton [Wed, 18 Jun 2014 20:36:49 +0000 (13:36 -0700)]
Add a .travis.yml

11 years agoRun tests in parallel
Alex Crichton [Wed, 18 Jun 2014 20:18:36 +0000 (13:18 -0700)]
Run tests in parallel

Give each test is own root inside of the shared root to ensure that the tests
are still isolated from one another.

11 years agoMake CARGO_BIN_PATH optional for tests
Alex Crichton [Wed, 18 Jun 2014 20:14:56 +0000 (13:14 -0700)]
Make CARGO_BIN_PATH optional for tests

This allows easier use of running tests by hand.

11 years agoAllow custom precompile commands
Alex Crichton [Wed, 18 Jun 2014 20:09:19 +0000 (13:09 -0700)]
Allow custom precompile commands

This commit enables support for custom precompilation commands to be triggered
before a package builds via rustc. The current interface is to have
`build = "foo"` in the `[project]` section of Cargo.toml and cargo will just
execute the exact command given.

11 years agoProvide more context on process errors
Alex Crichton [Wed, 18 Jun 2014 19:01:54 +0000 (12:01 -0700)]
Provide more context on process errors

When printing an error for a failed process execution, the stdout/stderr are
included for inspection.

11 years agoOptimized mark_human for ConcreteCargoError
Yehuda Katz [Thu, 19 Jun 2014 18:52:49 +0000 (11:52 -0700)]
Optimized mark_human for ConcreteCargoError

11 years agoAdd CargoError::with_cause
Yehuda Katz [Thu, 19 Jun 2014 18:49:50 +0000 (11:49 -0700)]
Add CargoError::with_cause

This allows concrete implementations with a `cause` field to have a
better implementation than converting the entire original error into a
concrete representation.

11 years agoAdd mark_human
Yehuda Katz [Thu, 19 Jun 2014 18:02:24 +0000 (11:02 -0700)]
Add mark_human

11 years agoRename to
Yehuda Katz [Thu, 19 Jun 2014 17:43:46 +0000 (10:43 -0700)]
Rename  to

11 years agoRequire human-tagging errors
Yehuda Katz [Thu, 19 Jun 2014 17:12:51 +0000 (10:12 -0700)]
Require human-tagging errors

11 years agoAdd FromError
Yehuda Katz [Thu, 19 Jun 2014 16:33:09 +0000 (09:33 -0700)]
Add FromError

11 years agoAdd cargo_try!
Yehuda Katz [Thu, 19 Jun 2014 15:13:58 +0000 (08:13 -0700)]
Add cargo_try!

11 years agoSquelch warnings and minor cleanup
Yehuda Katz [Thu, 19 Jun 2014 08:21:24 +0000 (01:21 -0700)]
Squelch warnings and minor cleanup

11 years agoInitial pass at boxed errors
Yehuda Katz [Thu, 19 Jun 2014 07:55:17 +0000 (00:55 -0700)]
Initial pass at boxed errors

The next step is to clean up the error handling in general so that
failure cases produce good errors.

11 years agoPathSource - load packages in update fn
Carl Lerche [Wed, 18 Jun 2014 21:42:07 +0000 (14:42 -0700)]
PathSource - load packages in update fn

11 years agoSource::update takes mutable self
Carl Lerche [Wed, 18 Jun 2014 19:33:22 +0000 (12:33 -0700)]
Source::update takes mutable self

11 years agoSupport nested paths in git and path sources
Yehuda Katz + Carl Lerche [Wed, 18 Jun 2014 00:40:22 +0000 (17:40 -0700)]
Support nested paths in git and path sources

11 years agoPaths nested in paths
Yehuda Katz + Carl Lerche [Wed, 18 Jun 2014 00:05:29 +0000 (17:05 -0700)]
Paths nested in paths

11 years agoImprovements to transitive dependency infra
Yehuda Katz + Carl Lerche [Tue, 17 Jun 2014 22:36:50 +0000 (15:36 -0700)]
Improvements to transitive dependency infra

Initial work to enable cross-source transitive dependencies.

11 years agoWIP3
Yehuda Katz + Carl Lerche [Tue, 17 Jun 2014 01:16:34 +0000 (18:16 -0700)]
WIP3

11 years agoMake `cargo foo` work
Yehuda Katz + Carl Lerche [Mon, 16 Jun 2014 21:51:19 +0000 (14:51 -0700)]
Make `cargo foo` work

11 years agoTrack Rust master
Carl Lerche [Mon, 16 Jun 2014 19:57:34 +0000 (12:57 -0700)]
Track Rust master

11 years agoFix a typo in the README
Erick Tryzelaar [Sat, 14 Jun 2014 05:14:55 +0000 (22:14 -0700)]
Fix a typo in the README

11 years agoBetter file names
Carl Lerche + Yehuda Katz [Fri, 13 Jun 2014 22:06:15 +0000 (15:06 -0700)]
Better file names

11 years agoFix tests
Carl Lerche + Yehuda Katz [Fri, 13 Jun 2014 21:19:06 +0000 (14:19 -0700)]
Fix tests

11 years agoAllow multiple and non-default crate_types
Carl Lerche + Yehuda Katz [Fri, 13 Jun 2014 00:49:10 +0000 (17:49 -0700)]
Allow multiple and non-default crate_types

Note that at present there is no good error handling for fat-fingering
the crate type. This is a TODO.

11 years agoSmoke test for git support
Carl Lerche + Yehuda Katz [Thu, 12 Jun 2014 22:51:16 +0000 (15:51 -0700)]
Smoke test for git support

11 years agoUpdate to master and fix warnings
Yehuda Katz + Carl Lerche [Thu, 12 Jun 2014 20:45:10 +0000 (13:45 -0700)]
Update to master and fix warnings

11 years agoGlue together git in manifest with Source
Yehuda Katz + Carl Lerche [Thu, 12 Jun 2014 00:38:50 +0000 (17:38 -0700)]
Glue together git in manifest with Source

11 years agoSources are now an array
Yehuda Katz + Carl Lerche [Wed, 11 Jun 2014 22:59:18 +0000 (15:59 -0700)]
Sources are now an array

11 years agoAdd namespace to PackageId
Yehuda Katz + Carl Lerche [Wed, 11 Jun 2014 21:50:54 +0000 (14:50 -0700)]
Add namespace to PackageId

11 years agoInitial pass at namespacing packages
Yehuda Katz + Carl Lerche [Wed, 11 Jun 2014 00:30:18 +0000 (17:30 -0700)]
Initial pass at namespacing packages

11 years agoRename NameVer -> PackageId
Yehuda Katz + Carl Lerche [Tue, 10 Jun 2014 23:58:42 +0000 (16:58 -0700)]
Rename NameVer -> PackageId

11 years agoInitial pass at a source collection proxy
Yehuda Katz + Carl Lerche [Tue, 10 Jun 2014 23:29:25 +0000 (16:29 -0700)]
Initial pass at a source collection proxy

11 years agoIsolate toml code and split up concerns
Yehuda Katz + Carl Lerche [Tue, 10 Jun 2014 22:46:07 +0000 (15:46 -0700)]
Isolate toml code and split up concerns

11 years agoMove Manifest parsing into its own module
Yehuda Katz + Carl Lerche [Tue, 10 Jun 2014 21:59:25 +0000 (14:59 -0700)]
Move Manifest parsing into its own module

11 years agoValidate dependency version on parse, not usage
Yehuda Katz + Carl Lerche [Tue, 10 Jun 2014 21:29:36 +0000 (14:29 -0700)]
Validate dependency version on parse, not usage

11 years agoUpdate to Rust master and eliminate warnings
Yehuda Katz + Carl Lerche [Tue, 10 Jun 2014 19:32:23 +0000 (12:32 -0700)]
Update to Rust master and eliminate warnings

11 years agoAdd support for detailed manifest dependencies
Yehuda Katz + Carl Lerche [Tue, 10 Jun 2014 00:51:53 +0000 (17:51 -0700)]
Add support for detailed manifest dependencies

This commit supports the following format:

```toml
[dependencies.hamcrest]

version = "1.0"
git = "http://github.com/carllerche/hamcrest-rust"
```

11 years agoTrack master for tests
Yehuda Katz + Carl Lerche [Mon, 9 Jun 2014 20:08:09 +0000 (13:08 -0700)]
Track master for tests

11 years agoTrack upstream rust-toml
Yehuda Katz + Carl Lerche [Mon, 9 Jun 2014 19:37:27 +0000 (12:37 -0700)]
Track upstream rust-toml

11 years agoUpdate to master
Yehuda Katz + Carl Lerche [Mon, 9 Jun 2014 19:28:54 +0000 (12:28 -0700)]
Update to master

11 years agoTrack Rust master
Carl Lerche [Fri, 30 May 2014 23:37:37 +0000 (16:37 -0700)]
Track Rust master

11 years agoBreak up GitSource
Yehuda Katz [Fri, 30 May 2014 03:35:09 +0000 (20:35 -0700)]
Break up GitSource

11 years agoImprove errors slightly
Yehuda Katz [Fri, 30 May 2014 01:11:27 +0000 (18:11 -0700)]
Improve errors slightly

11 years agoUse GitSource in the stub executable
Yehuda Katz [Fri, 30 May 2014 01:02:28 +0000 (18:02 -0700)]
Use GitSource in the stub executable

11 years agoUpdate GitSource
Yehuda Katz [Fri, 30 May 2014 00:49:53 +0000 (17:49 -0700)]
Update GitSource

11 years agoInitial GitSource pass
Yehuda Katz [Thu, 29 May 2014 22:07:07 +0000 (15:07 -0700)]
Initial GitSource pass

11 years agoTests passing again
Yehuda Katz [Thu, 29 May 2014 21:31:09 +0000 (14:31 -0700)]
Tests passing again

11 years agoUp to date with master
Yehuda Katz [Thu, 29 May 2014 21:06:43 +0000 (14:06 -0700)]
Up to date with master

11 years agoUp to date with master
Yehuda Katz [Thu, 29 May 2014 20:57:31 +0000 (13:57 -0700)]
Up to date with master

11 years agoCompile all deps into the root projects target dir
Carl Lerche [Thu, 29 May 2014 00:31:23 +0000 (17:31 -0700)]
Compile all deps into the root projects target dir

11 years agoExplicitly pass root package to ops::package_compile
Carl Lerche [Wed, 28 May 2014 04:01:43 +0000 (21:01 -0700)]
Explicitly pass root package to ops::package_compile

11 years agoRemove unnecessary BasicTerminal
Yehuda Katz [Wed, 28 May 2014 05:06:38 +0000 (22:06 -0700)]
Remove unnecessary BasicTerminal

11 years agoImprove shell and add tests
Yehuda Katz [Wed, 28 May 2014 01:53:30 +0000 (18:53 -0700)]
Improve shell and add tests

11 years agoInitial pass at a Shell
Yehuda Katz [Wed, 28 May 2014 01:33:06 +0000 (18:33 -0700)]
Initial pass at a Shell

11 years agoExtra log output + polish rough edges
Carl Lerche [Wed, 28 May 2014 00:21:28 +0000 (17:21 -0700)]
Extra log output + polish rough edges

11 years agoStart adding a shell abstraction
Yehuda Katz [Tue, 27 May 2014 23:47:04 +0000 (16:47 -0700)]
Start adding a shell abstraction

11 years agoTrack rust master
Carl Lerche [Tue, 27 May 2014 23:14:34 +0000 (16:14 -0700)]
Track rust master

11 years agoMore log output
Carl Lerche [Thu, 22 May 2014 21:50:11 +0000 (14:50 -0700)]
More log output

11 years agoGit now fetches DBs and clones repos from them
Yehuda Katz [Mon, 26 May 2014 22:48:11 +0000 (15:48 -0700)]
Git now fetches DBs and clones repos from them

11 years agoAdd support for updating git repos
Yehuda Katz [Mon, 26 May 2014 20:54:24 +0000 (13:54 -0700)]
Add support for updating git repos

11 years agoUp to date with master (StrBuf->String)
Yehuda Katz [Mon, 26 May 2014 18:52:33 +0000 (11:52 -0700)]
Up to date with master (StrBuf->String)

11 years agoRe-export op fns in cargo::ops
Carl Lerche [Thu, 22 May 2014 21:26:36 +0000 (14:26 -0700)]
Re-export op fns in cargo::ops

11 years agoStart adding logging in cargo command
Carl Lerche [Thu, 22 May 2014 21:03:56 +0000 (14:03 -0700)]
Start adding logging in cargo command

11 years agoFix Makefile
Carl Lerche [Thu, 22 May 2014 20:05:57 +0000 (13:05 -0700)]
Fix Makefile

11 years agoA few updates to GitSource
Yehuda Katz [Thu, 22 May 2014 19:52:49 +0000 (12:52 -0700)]
A few updates to GitSource

11 years agoInitial work on the git source
Yehuda Katz [Thu, 22 May 2014 00:53:05 +0000 (17:53 -0700)]
Initial work on the git source

11 years agoRemove traces of ~str
Yehuda Katz [Tue, 20 May 2014 06:14:49 +0000 (23:14 -0700)]
Remove traces of ~str

11 years agoUpdate to Rust master
Yehuda Katz [Tue, 20 May 2014 05:40:50 +0000 (22:40 -0700)]
Update to Rust master