Remove docs that shouldn't be built
static.rust-lang.org may be stale again?
auto merge of #372 : jauhien/cargo/master, r=alexcrichton

- splitn arguments order
- hasmap indexing

Closes #371
Ensure TARGET is always present for build commands
auto merge of #386 : alexcrichton/cargo/target-always-present, r=wycats
Use libgit2 for driving git instead of the CLI

In general relying on external programs is dicey and tricky as they're very
different across systems in both how they're used as well as what versions
you'll find. Instead of binding to the least common denominator of CLI, we can
code against an exact version of libgit2.

This introduces a build-time dependency on cmake which libgit2 requires to build
itself, which is unfortunate, but thankfully it's only a build time dep. The
build process for libgit2 also automatically detects as many system libraries as
possible to use (if available), falling back to bundled versions if not
available. I have currently not figured how to control this, so the link-config
package is used to build libgit2 which requires that pkg-config be installed to
build cargo as well.

Closes #138
Add submodule test from #381
Register new snapshots
Run cargo off the main thread.

On windows the main thread suffers the same fate as rustdoc (as linked in the
comments), and hence needs to run off the main thread for now.
auto merge of #367 : alexcrichton/cargo/git2-rs, r=wycats

In general relying on external programs is dicey and tricky as they're very
different across systems in both how they're used as well as what versions
you'll find. Instead of binding to the least common denominator of CLI, we can
code against an exact version of libgit2.

This introduces a build-time dependency on cmake which libgit2 requires to build
itself, which is unfortunate, but thankfully it's only a build time dep. The
build process for libgit2 also automatically detects as many system libraries as
possible to use (if available), falling back to bundled versions if not
available. I have currently not figured how to control this, so the link-config
package is used to build libgit2 which requires that pkg-config be installed to
build cargo as well.

Closes #138
If --target is specified, pass that to build commands

0c834d7b accidentally broke this by favoring rustc's target triple over the
actual target triple.
auto merge of #388 : alexcrichton/cargo/fix-cross-builds, r=burningtree

0c834d7b accidentally broke this by favoring rustc's target triple over the
actual target triple.
Always generate a lockfile with dev-dependencies

Previously an invocation of `cargo build` would generate a lockfile *without*
dev dependencies, but an invocation of `cargo test` would generate a lockfile
*with* dependencies. This causes odd problems and diffs with the lockfile.

This commit switches the resolve-to-be-a-lockfile to using all dependencies of a
package, while the resolve-to-be-compiled continues to use just the dependencies
needed for the current build.
Remove $ from lines in readme to improve copyability

When a $ is present, it prevents someone from easily copying and
pasting the whole block.
Upgrade to latest toml-rs

This version has a fix for an import shadowing error
Fix import shadowing errors in tests
auto merge of #395 : bkoropoff/cargo/import-shadow, r=alexcrichton

- Update toml-rs to version without import shadowing errors
- Fix some import shadowing errors in the tests
auto merge of #394 : colindean/cargo/fix-readme, r=alexcrichton

When a $ is present, it prevents someone from easily copying and pasting the whole block.
Change all uses of `use foo = bar` to `use bar as foo`
auto merge of #399 : lucidd/cargo/master, r=alexcrichton