Canonicalize URLs when hashing sources
Don't look inside target/ for sub-packages

When cargo is building itself, it just ends up getting confused because the test
directory is in this location.
auto merge of #222 : alexcrichton/cargo/no-cargo-toml-in-target, r=wycats

When cargo is building itself, it just ends up getting confused because the test
directory is in this location.
auto merge of #224 : alexcrichton/cargo/canonical-hash, r=wycats

This should prevent some weird bugs where if you have slightly different sources that you occasionally have to recompile them when cargo switches between one or the other (thinking they're different)
Improve error message on failed compile
Improve test output
kill unnecessary lifetime annotations

This commit removes lifetime annotations
that are now automatically inferred by
the compiler.
auto merge of #236 : cburgdorf/cargo/kill_lifetimes, r=alexcrichton

This commit removes lifetime annotations
that are now automatically inferred by
the compiler.
Simplify the ProcessBuilder struct

This changes many bounds to ToCStr to stay in line with the since-introduced
Command structure. The builder remains separate of command to have control over
executing and Show.

Path-related methods have been removed and env-initialization/management are
left to Command, ProcessBuilder only keeps track of the delta.
Move git macros to using `arg()`
Use Path::display().to_string() less often

Unfortunately this cannot yet have a test for it as rustc itself does not work
if it is run on non-utf8 paths.
Fix windows tests
auto merge of #235 : rust-lang/cargo/better-test-output, r=alexcrichton

@alexcrichton r?
remove deprecated lexical_ordering() usage
auto merge of #237 : cburgdorf/cargo/fix_deprecation_warning, r=alexcrichton
Correct a typo in layout preparation

If a build was canceled halfway-through, this would lead to problems when the
project was rebuilt again.
Add a test for closed issue #111

This was fixed when rustc properly added extra-filename to all temp outputs as
opposed to just libraries.

Closes #111
auto merge of #238 : alexcrichton/cargo/cstr-builder, r=wycats

At the same time, remove a bunch of `path.display().to_string()` and friends.
auto merge of #241 : alexcrichton/cargo/fix, r=wycats

If a build was canceled halfway-through, this would lead to problems when the
project was rebuilt again.
auto merge of #242 : alexcrichton/cargo/issue-111, r=wycats

This was fixed when rustc properly added extra-filename to all temp outputs as
opposed to just libraries.

Closes #111