]> git.proxmox.com Git - cargo.git/log
cargo.git
10 years agoRemove the src/test.rs implicit test.
Huon Wilson [Sun, 13 Jul 2014 12:45:26 +0000 (22:45 +1000)]
Remove the src/test.rs implicit test.

It's not unreasonable to have unittests in a separate submodule of the
crate (being called `test` or `tests`), and having them in their own
file can be very sensible. Thus, the `src/test.rs` implicit default is
likely to trip up some perfectly reasonable use-cases. There's already
the `tests/...` default, so repairing a codebase after this removal is
just moving `src/test.rs` to `tests/whatever_name_you_want.rs`.

Closes #187.

10 years agoMinor refactorings.
Huon Wilson [Sat, 12 Jul 2014 06:02:38 +0000 (16:02 +1000)]
Minor refactorings.

There was some unnecessary duplication and allocation.

10 years agoauto merge of #170 : alexcrichton/cargo/same-name, r=wycats
bors [Sat, 12 Jul 2014 03:59:51 +0000 (03:59 +0000)]
auto merge of #170 : alexcrichton/cargo/same-name, r=wycats

This allows the dependency queue to properly handle packages with the same
name but from different sources.

A test was added which exercieses this functionality by depending on two
different revs of the same git repo.

10 years agoauto merge of #163 : o11c/cargo/examples, r=wycats
bors [Sat, 12 Jul 2014 03:14:51 +0000 (03:14 +0000)]
auto merge of #163 : o11c/cargo/examples, r=wycats

This add support for `examples/*.rs` being built (as normal bin crates) during `cargo test`,
and `src/test.rs` and `tests/*.rs` being built and run (as test crates) during `cargo test`.

10 years agoUse PackageId in the DependencyQueue
Alex Crichton [Fri, 11 Jul 2014 20:32:27 +0000 (13:32 -0700)]
Use PackageId in the DependencyQueue

This allows the dependency queue to properly handle packages with the same
name but from different sources.

A test was added which exercieses this functionality by depending on two
different revs of the same git repo.

10 years agoDo not run examples during 'cargo test'
Ben Longbons [Fri, 11 Jul 2014 20:34:50 +0000 (13:34 -0700)]
Do not run examples during 'cargo test'

10 years agoAdd support for external tests
Ben Longbons [Fri, 11 Jul 2014 00:08:19 +0000 (17:08 -0700)]
Add support for external tests

10 years agoAdd support for examples
Ben Longbons [Thu, 10 Jul 2014 22:13:53 +0000 (15:13 -0700)]
Add support for examples

10 years agoauto merge of #169 : cburgdorf/cargo/name_clean, r=alexcrichton
bors [Fri, 11 Jul 2014 19:59:51 +0000 (19:59 +0000)]
auto merge of #169 : cburgdorf/cargo/name_clean, r=alexcrichton

There are other unnamed commands like `verify-project` but I'm unsure if they are **not** listed on purpose because they should be used directly by the user less frequently. However, the clean command seems like a command that should be listed here.

Not sure about the wording though. It could be more abstract like *remove build artifacts* but given it's current behavior I think *remove target directory* is somehow straight forward, too.

10 years agolist `clean` command in help
Christoph Burgdorf [Fri, 11 Jul 2014 19:43:13 +0000 (21:43 +0200)]
list `clean` command in help

10 years agoauto merge of #167 : alexcrichton/cargo/cross-compile, r=wycats
bors [Fri, 11 Jul 2014 19:21:07 +0000 (19:21 +0000)]
auto merge of #167 : alexcrichton/cargo/cross-compile, r=wycats

This also refactored many things along the way, I would recommend reading each commit individually rather than them all as a whole.

Closes #119

10 years agoFinish plugin support
Alex Crichton [Fri, 11 Jul 2014 18:22:07 +0000 (11:22 -0700)]
Finish plugin support

This commit implements full support for plugins by answering the question of
whether any target needed as a plugin or needed as a target dependency. This
commit builds on the previous abstractions to enable parallel compilation
wherever possible.

10 years agoauto merge of #166 : nielsle/cargo/command-env, r=alexcrichton
bors [Fri, 11 Jul 2014 18:14:52 +0000 (18:14 +0000)]
auto merge of #166 : nielsle/cargo/command-env, r=alexcrichton

Quickfix for the build after https://github.com/rust-lang/rust/pull/15353

10 years agoUse command.env_set_all() instead of command.env()
Niels langager Ellegaard [Fri, 11 Jul 2014 17:49:02 +0000 (19:49 +0200)]
Use command.env_set_all() instead of command.env()

Fixes build after
https://github.com/rust-lang/rust/pull/15353

10 years agoAdd some simple tests for cross compilation
Alex Crichton [Fri, 11 Jul 2014 16:08:51 +0000 (09:08 -0700)]
Add some simple tests for cross compilation

10 years agoRefactor the parallel job queue to its own module
Alex Crichton [Fri, 11 Jul 2014 15:57:47 +0000 (08:57 -0700)]
Refactor the parallel job queue to its own module

10 years agoRefactor fingerprint logic out of cargo_rustc
Alex Crichton [Fri, 11 Jul 2014 15:45:42 +0000 (08:45 -0700)]
Refactor fingerprint logic out of cargo_rustc

10 years agoRefactor Context into its own submodule
Alex Crichton [Fri, 11 Jul 2014 15:35:23 +0000 (08:35 -0700)]
Refactor Context into its own submodule

10 years agoRefactor `Job` to its own module
Alex Crichton [Fri, 11 Jul 2014 15:06:39 +0000 (08:06 -0700)]
Refactor `Job` to its own module

10 years agoImprove intra-target parallelism
Alex Crichton [Fri, 11 Jul 2014 14:50:24 +0000 (07:50 -0700)]
Improve intra-target parallelism

With cross compilation soon on the horizon, it may be required to build a
library for both the host and target architectures. These two copies can
certainly be built in parallel. Additionally, all binaries produced by a package
can also be built in parallel, but are currently forced to be built
sequentially.

This commit improves this parallelism by allowing each job to create more work
before the package is considered built. Only after all targets have been built
is the new fingerprint written.

10 years agoUpdate to master
Alex Crichton [Fri, 11 Jul 2014 14:50:01 +0000 (07:50 -0700)]
Update to master

10 years agoImplement a `plugin` flag for targets
Alex Crichton [Fri, 11 Jul 2014 01:26:30 +0000 (18:26 -0700)]
Implement a `plugin` flag for targets

If `plugin = true` is specified, then the target is considered a compiler plugin
which implies two separate properties:

* The library must be compiled as a dylib
* The library must be compiled for the host architecture

10 years agoAdd bare-bones cross compilation support to cargo
Alex Crichton [Thu, 10 Jul 2014 23:03:01 +0000 (16:03 -0700)]
Add bare-bones cross compilation support to cargo

This adds a new flag, --target, to the `cargo-build` command. This flag will
indicate that all output should be scoped under the `$triple` directory inside
of the output `target` directory. The compiler is invoked with `--target
$triple` and all custom build commands are passed `TRIPLE` if one is provided.

10 years agoauto merge of #162 : rust-lang/cargo/fix-travis, r=tinyfix
bors [Thu, 10 Jul 2014 21:51:51 +0000 (21:51 +0000)]
auto merge of #162 : rust-lang/cargo/fix-travis, r=tinyfix

10 years agoFix travis builds
Alex Crichton [Thu, 10 Jul 2014 20:37:32 +0000 (13:37 -0700)]
Fix travis builds

10 years agoauto merge of #157 : rust-lang/cargo/graph-resolve, r=alexcrichton
bors [Thu, 10 Jul 2014 19:52:04 +0000 (19:52 +0000)]
auto merge of #157 : rust-lang/cargo/graph-resolve, r=alexcrichton

This incorporates previous bugfixes by @alexcrichton that are still stuck in bors.

10 years agoFix some tests
Alex Crichton [Thu, 10 Jul 2014 19:39:05 +0000 (12:39 -0700)]
Fix some tests

10 years agoTighten up some tests
Alex Crichton [Thu, 10 Jul 2014 19:08:13 +0000 (12:08 -0700)]
Tighten up some tests

10 years agoFix filtering for test deps
Alex Crichton [Thu, 10 Jul 2014 18:50:03 +0000 (11:50 -0700)]
Fix filtering for test deps

This fixes `cargo test` to only test the *local* package

10 years agoNo need for a TempDir, use `-` as input
Alex Crichton [Thu, 10 Jul 2014 18:49:47 +0000 (11:49 -0700)]
No need for a TempDir, use `-` as input

10 years agoimpl Show for Profile
Alex Crichton [Thu, 10 Jul 2014 18:49:33 +0000 (11:49 -0700)]
impl Show for Profile

10 years agoAdd -u to `cargo test`
Alex Crichton [Thu, 10 Jul 2014 18:49:12 +0000 (11:49 -0700)]
Add -u to `cargo test`

10 years agoMore updates to master
Alex Crichton [Thu, 10 Jul 2014 15:45:31 +0000 (08:45 -0700)]
More updates to master

10 years agoMake README nightlies links clickable
Tomaka17 [Wed, 9 Jul 2014 07:43:28 +0000 (09:43 +0200)]
Make README nightlies links clickable

10 years agoToStr::to_str -> ToString::to_string
Michael Gehring [Wed, 9 Jul 2014 13:38:10 +0000 (15:38 +0200)]
ToStr::to_str -> ToString::to_string

Conflicts:
src/cargo/core/resolver.rs
src/cargo/ops/cargo_rustc.rs

10 years agoRemove hardcoding
Yehuda Katz [Thu, 10 Jul 2014 08:26:51 +0000 (01:26 -0700)]
Remove hardcoding

10 years agoAdd some unit tests
Yehuda Katz [Thu, 10 Jul 2014 07:48:50 +0000 (00:48 -0700)]
Add some unit tests

10 years agoFixed a number of bugs related to rustc building
Yehuda Katz [Thu, 10 Jul 2014 07:27:40 +0000 (00:27 -0700)]
Fixed a number of bugs related to rustc building

Most notably, `resolve` now takes the root, so it can properly link the
root package with its dependencies (which is required to build the
--externs for the root package).

10 years agoResolve more correctly and add --extern
Yehuda Katz + Carl Lerche [Thu, 10 Jul 2014 00:48:37 +0000 (17:48 -0700)]
Resolve more correctly and add --extern

This commit adds support for passing --extern to dependencies. It allows
multiple copies of the same named dependency in the system, as long as
they come from different repos.

10 years agoDisable passing -g for now
Alex Crichton [Wed, 9 Jul 2014 22:04:59 +0000 (15:04 -0700)]
Disable passing -g for now

10 years agoFix --release not compiling upstream deps with -O3
Alex Crichton [Wed, 9 Jul 2014 20:55:00 +0000 (13:55 -0700)]
Fix --release not compiling upstream deps with -O3

This touches up the filtering logic to ensure that upstream dependencies as well
as local dependencies are built with optimizations when `cargo build --release`
is used.

10 years agoFix testing bins with lib deps
Alex Crichton [Wed, 9 Jul 2014 20:08:44 +0000 (13:08 -0700)]
Fix testing bins with lib deps

If a package had both bin and lib deps, `cargo test` was not building the `lib`
dependency when building the bins with `--test`. This commit adds an extra
"test" profile (not compiled with --test) for situations such as this which is
filtered out normally but kept around for the `cargo test` case.

10 years agoauto merge of #150 : rust-lang/cargo/source-id-cleanup, r=alexcrichton
bors [Wed, 9 Jul 2014 02:44:51 +0000 (02:44 +0000)]
auto merge of #150 : rust-lang/cargo/source-id-cleanup, r=alexcrichton

This PR is a stepping stone towards eventual use of `--extern`, which will allow multiple packages with the same name to exist in the transitive dependency graph.

10 years agoFix registry query fn
Yehuda Katz + Carl Lerche [Tue, 8 Jul 2014 23:28:12 +0000 (16:28 -0700)]
Fix registry query fn

10 years agoemit -C extra-filename and metadata
Yehuda Katz + Carl Lerche [Tue, 8 Jul 2014 22:50:50 +0000 (15:50 -0700)]
emit -C extra-filename and metadata

10 years agoRefactor PackageId.namespace -> source_id
Yehuda Katz + Carl Lerche [Tue, 8 Jul 2014 21:58:56 +0000 (14:58 -0700)]
Refactor PackageId.namespace -> source_id

10 years agoauto merge of #147 : alexcrichton/cargo/ls-files, r=wycats
bors [Tue, 8 Jul 2014 16:37:57 +0000 (16:37 +0000)]
auto merge of #147 : alexcrichton/cargo/ls-files, r=wycats

Apparently older versions of git report all contents of submodules in the
ls-files command!

10 years agoIgnore lib directory for exes check
Alex Crichton [Tue, 8 Jul 2014 16:30:54 +0000 (09:30 -0700)]
Ignore lib directory for exes check

Apparently older versions of git report all contents of submodules in the
ls-files command!

10 years agoauto merge of #141 : jdeseno/cargo/cargo-clean, r=alexcrichton
bors [Tue, 8 Jul 2014 15:59:50 +0000 (15:59 +0000)]
auto merge of #141 : jdeseno/cargo/cargo-clean, r=alexcrichton

Adds cargo-clean sub-command. Would address Issue #51 if this PR is merged.

10 years agoauto merge of #124 : alexcrichton/cargo/no-more-binaries, r=wycats
bors [Tue, 8 Jul 2014 15:14:51 +0000 (15:14 +0000)]
auto merge of #124 : alexcrichton/cargo/no-more-binaries, r=wycats

Closes #58

10 years agoEnsure no more binaries are checked in
Alex Crichton [Sat, 5 Jul 2014 23:55:26 +0000 (16:55 -0700)]
Ensure no more binaries are checked in

Closes #58

10 years agocargo clean. resolves #51
Joshua DeSeno [Mon, 7 Jul 2014 08:50:05 +0000 (17:50 +0900)]
cargo clean. resolves #51

10 years agoauto merge of #142 : rust-lang/cargo/new-names, r=alexcrichton
bors [Tue, 8 Jul 2014 06:14:56 +0000 (06:14 +0000)]
auto merge of #142 : rust-lang/cargo/new-names, r=alexcrichton

This PR moves Cargo over to the new naming based on [RFC 35](https://github.com/rust-lang/rfcs/blob/master/complete/0035-remove-crate-id.md).

* You should no longer use `#[crate_name]` or `#[crate_id]` in any crate managed by Cargo.
* You no longer need a `[[lib]]` section in your `Cargo.toml` if you name your library `src/lib.rs`.
* You no longer need a `[[bin]]` section in your `Cargo.toml` if you name your library `src/main.rs`.
* You can include multiple `[[bins]]` in `src/bin/*.rs` and Cargo will treat them as if they were specified via `[[bin]]`.

This commit does not yet add support for `-C metadata` or `-C extra-file-name`, but that is coming soon.

10 years agoRemove glob dependency
Yehuda Katz [Tue, 8 Jul 2014 04:50:45 +0000 (21:50 -0700)]
Remove glob dependency

10 years agoauto merge of #125 : alexcrichton/cargo/issue-120, r=wycats
bors [Tue, 8 Jul 2014 05:14:55 +0000 (05:14 +0000)]
auto merge of #125 : alexcrichton/cargo/issue-120, r=wycats

Closes #120

10 years agoThis updates Cargo for #[crate_name]
Yehuda Katz + Carl Lerche [Tue, 8 Jul 2014 00:59:18 +0000 (17:59 -0700)]
This updates Cargo for #[crate_name]

10 years agoWarn about missing [[lib]] and [[bin]] sections
Alex Crichton [Sun, 6 Jul 2014 00:10:23 +0000 (17:10 -0700)]
Warn about missing [[lib]] and [[bin]] sections

Closes #120

10 years agoauto merge of #139 : tomjakubowski/cargo/fix-symlink-blowup, r=alexcrichton
bors [Tue, 8 Jul 2014 01:46:02 +0000 (01:46 +0000)]
auto merge of #139 : tomjakubowski/cargo/fix-symlink-blowup, r=alexcrichton

Fingerprinting will fail at an `fs::stat()` call if there is a symlink in
a package's directory pointing to a non-existent file or directory.
This commit recovers from an `fs::stat(`) error on these bogus symlinks by
faking an mtime of 0, which should not affect the overall fingerprint.

Fix #135

10 years agoIgnore the broken symlinks test on windows
Tom Jakubowski [Tue, 8 Jul 2014 01:07:23 +0000 (18:07 -0700)]
Ignore the broken symlinks test on windows

10 years agofingerprint: Recover from fs::stat errors
Tom Jakubowski [Mon, 7 Jul 2014 21:46:03 +0000 (14:46 -0700)]
fingerprint: Recover from fs::stat errors

Fingerprinting will fail at an fs::stat() call if there is a broken
symlink in a package's directory.  This commit recovers from fs::stat()
errors on broken symlinks by treating them as having mtime 0, which
should not affect the overall fingerprint.

Fix #135

10 years agoauto merge of #140 : rust-lang/cargo/release, r=carllerche
bors [Mon, 7 Jul 2014 22:29:56 +0000 (22:29 +0000)]
auto merge of #140 : rust-lang/cargo/release, r=carllerche

10 years agoAdd --release and related refactoring
Yehuda Katz + Carl Lerche [Mon, 7 Jul 2014 22:17:34 +0000 (15:17 -0700)]
Add --release and related refactoring

10 years agoauto merge of #136 : Tomaka17/cargo/multiple-build-cmds, r=alexcrichton
bors [Mon, 7 Jul 2014 20:44:55 +0000 (20:44 +0000)]
auto merge of #136 : Tomaka17/cargo/multiple-build-cmds, r=alexcrichton

Closes #69

Adds a new syntax for the `build = ` command:

```
build = [
    ["./configure"],
    ["make", "lib/libovr.a"],
    ["/bin/mkdir", "target"],
    ["/bin/cp", "lib/libovr.a", "target/"]
]
```

The current syntax `build = "make"` still works.

`build = [ "a", "b" ]` is forbidden because it is ambiguous.

10 years agoSupport for multiple and cleaner build commands
Tomaka17 [Mon, 7 Jul 2014 16:33:45 +0000 (18:33 +0200)]
Support for multiple and cleaner build commands

10 years agoMerge pull request #134 from alexcrichton/nightlies
Yehuda Katz [Mon, 7 Jul 2014 14:52:38 +0000 (07:52 -0700)]
Merge pull request #134 from alexcrichton/nightlies

Add documentation about cargo nightlies

10 years agoAdd documentation about cargo nightlies
Alex Crichton [Mon, 7 Jul 2014 14:49:14 +0000 (07:49 -0700)]
Add documentation about cargo nightlies

10 years agoauto merge of #131 : alexcrichton/cargo/update-to-master, r=update
bors [Mon, 7 Jul 2014 13:28:45 +0000 (13:28 +0000)]
auto merge of #131 : alexcrichton/cargo/update-to-master, r=update

10 years agoUpdate with master changes
Alex Crichton [Mon, 7 Jul 2014 13:27:09 +0000 (06:27 -0700)]
Update with master changes

10 years agoauto merge of #129 : riccieri/cargo/no_more_crate_id, r=alexcrichton
bors [Mon, 7 Jul 2014 13:18:13 +0000 (13:18 +0000)]
auto merge of #129 : riccieri/cargo/no_more_crate_id, r=alexcrichton

This solves warnings about the use of the deprecated `#![crate_id]` attribute, as well as the deprecated `--crate-file-name` command line option. See rust-lang/rust@c3ef04be5589901e7f3d9428ebe8f1eb2bdca7e4 for details.

Note that this won't compile on the current master without #128 (or equivalent). I can rebase after a fix lands

10 years agoauto merge of #128 : riccieri/cargo/nightly-fix, r=alexcrichton
bors [Mon, 7 Jul 2014 13:11:04 +0000 (13:11 +0000)]
auto merge of #128 : riccieri/cargo/nightly-fix, r=alexcrichton

On rust-lang/rust@ed47c479d73fd7b57d3b493e03c74e2932733163 (which landed yesterday via rust-lang/rust@b8ef5cf1310a7b1e31d0993885d867a6804597ad), `url.path` now returns a `Path`, not a `String`. This one-line patch makes cargo compile again (at least as of rust-lang/rust@b8ef5cf1310a7b1e31d0993885d867a6804597ad, the `crate_id` changes haven't reached me yet).

10 years agoUse --print-file-name instead of --crate-file-name
Renato Zannon [Mon, 7 Jul 2014 05:22:30 +0000 (02:22 -0300)]
Use --print-file-name instead of --crate-file-name

10 years agoUse #![crate_name] instead of #![crate_id]
Renato Zannon [Mon, 7 Jul 2014 05:19:59 +0000 (02:19 -0300)]
Use #![crate_name] instead of #![crate_id]

10 years agourl.path is now a Path, not a String
Renato Zannon [Sun, 6 Jul 2014 23:07:56 +0000 (20:07 -0300)]
url.path is now a Path, not a String

10 years agoauto merge of #123 : alexcrichton/cargo/canonicalize-github-urls, r=wycats
bors [Sat, 5 Jul 2014 23:59:58 +0000 (23:59 +0000)]
auto merge of #123 : alexcrichton/cargo/canonicalize-github-urls, r=wycats

In addition to canonicalizing checkout locations, this canonicalizes packages
for the resolver. This allows two dependencies with slightly different urls
pointing to the same repository to resolve to the same location and package.

Closes #104

10 years agoCanonicalize github urls for the resolver
Alex Crichton [Sat, 5 Jul 2014 23:44:55 +0000 (16:44 -0700)]
Canonicalize github urls for the resolver

In addition to canonicalizing checkout locations, this canonicalizes packages
for the resolver. This allows two dependencies with slightly different urls
pointing to the same repository to resolve to the same location and package.

Closes #104

10 years agoauto merge of #122 : Benny1992/cargo/master, r=alexcrichton
bors [Sat, 5 Jul 2014 17:59:56 +0000 (17:59 +0000)]
auto merge of #122 : Benny1992/cargo/master, r=alexcrichton

Tried with [[executable]] and got this:

```bash
FizzBuzz (master*) $ cargo build                                                                                                             mri-2.1.2
unused manifest key: executable.name
unused manifest key: executable.path
       Fresh fizzbuzz v0.0.1 (file:/home/benny/Web/RustApplications/FizzBuzz)
```

I think ```executable``` section should be ```bin```

10 years agouse [[bin]] instead of [[executable]]
Benny [Sat, 5 Jul 2014 13:36:36 +0000 (15:36 +0200)]
use [[bin]] instead of [[executable]]

10 years agoauto merge of #116 : Indiv0/cargo/typofix, r=alexcrichton
bors [Fri, 4 Jul 2014 02:44:56 +0000 (02:44 +0000)]
auto merge of #116 : Indiv0/cargo/typofix, r=alexcrichton

Currently, the "single source" error appears like this, with missing whitespace:

    lib/game-of-life $ cargo build --verbose
    An unknown error occurred

    Caused by:
      At the moment, Cargo only supports asingle source for a particular package name (piston).

This fixes the typo.

10 years agoFix missing space typo in single source error
Indiv0 [Fri, 4 Jul 2014 02:29:04 +0000 (22:29 -0400)]
Fix missing space typo in single source error

10 years agoauto merge of #110 : bcobb/cargo/patch-1, r=alexcrichton
bors [Thu, 3 Jul 2014 22:31:19 +0000 (22:31 +0000)]
auto merge of #110 : bcobb/cargo/patch-1, r=alexcrichton

Just a small grammar change :smile:

10 years agoauto merge of #106 : alexcrichton/cargo/no-path, r=wycats
bors [Thu, 3 Jul 2014 22:03:26 +0000 (22:03 +0000)]
auto merge of #106 : alexcrichton/cargo/no-path, r=wycats

This allows usage of cargo without all the executables in your PATH, you only
need to be able to reach the first one.

10 years agoauto merge of #113 : rust-lang/cargo/dev-deps, r=alexcrichton
bors [Thu, 3 Jul 2014 21:51:32 +0000 (21:51 +0000)]
auto merge of #113 : rust-lang/cargo/dev-deps, r=alexcrichton

Development dependencies are included when building or testing the current package, but not packages that depend on it:

```toml
[dev-dependencies.hamcrest]

git = "https://github.com/carllerche/hamcrest-rust.git"
```

10 years agoFix up dev-dependencies
Yehuda Katz + Carl Lerche [Thu, 3 Jul 2014 01:13:00 +0000 (18:13 -0700)]
Fix up dev-dependencies

10 years agoAdded [dev-dependencies] sections to Cargo.toml
Yehuda Katz + Carl Lerche [Wed, 2 Jul 2014 23:58:25 +0000 (16:58 -0700)]
Added [dev-dependencies] sections to Cargo.toml

If you put a dependency in [dev-dependencies], it will only be
used when building (or testing) your packages, not other packages that
depend on it.

10 years agoAdd support for non-transitive dependencies
Yehuda Katz + Carl Lerche [Wed, 2 Jul 2014 23:32:24 +0000 (16:32 -0700)]
Add support for non-transitive dependencies

Development and test dependencies should not be transitively pulled in.
For example, if I use rust-curl, and it happens to use hamcrest for
testing, that does not mean I depend on hamcrest.

10 years agoUpdate hammer.rs to be compatible with the current rust master
Björn Steinbrink [Wed, 2 Jul 2014 17:37:15 +0000 (19:37 +0200)]
Update hammer.rs to be compatible with the current rust master

10 years agoREADME uses "its" instead of "it's"
Brian Cobb [Wed, 2 Jul 2014 13:54:46 +0000 (08:54 -0500)]
README uses "its" instead of "it's"

10 years agoEnable execution without cargo in PATH
Alex Crichton [Tue, 1 Jul 2014 14:55:19 +0000 (07:55 -0700)]
Enable execution without cargo in PATH

This allows usage of cargo without all the executables in your PATH, you only
need to be able to reach the first one.

10 years agoauto merge of #109 : steveklabnik/cargo/json, r=alexcrichton
bors [Wed, 2 Jul 2014 00:00:00 +0000 (00:00 +0000)]
auto merge of #109 : steveklabnik/cargo/json, r=alexcrichton

10 years agoFixing deprecated JSON call
Steve Klabnik [Tue, 1 Jul 2014 23:47:56 +0000 (19:47 -0400)]
Fixing deprecated JSON call

10 years agoauto merge of #108 : jdeseno/cargo/clean-submodules, r=alexcrichton
bors [Tue, 1 Jul 2014 23:15:01 +0000 (23:15 +0000)]
auto merge of #108 : jdeseno/cargo/clean-submodules, r=alexcrichton

Small change. Use git's `submodule` `foreach` command to cleanup dependencies. I think this way you won't have to remember to update the makefile when a dependency is added or removed.

10 years agoauto merge of #107 : alexcrichton/cargo/issue-102, r=wycats
bors [Tue, 1 Jul 2014 22:49:29 +0000 (22:49 +0000)]
auto merge of #107 : alexcrichton/cargo/issue-102, r=wycats

Closes #102

10 years agomake clean-all via git submodule foreach
josh [Tue, 1 Jul 2014 22:49:04 +0000 (07:49 +0900)]
make clean-all via git submodule foreach

10 years agoDon't call generic methods on trait objects
Alex Crichton [Tue, 1 Jul 2014 22:40:33 +0000 (15:40 -0700)]
Don't call generic methods on trait objects

Closes #102

10 years agoauto merge of #100 : rust-lang/cargo/meta-packages, r=alexcrichton
bors [Tue, 1 Jul 2014 06:30:02 +0000 (06:30 +0000)]
auto merge of #100 : rust-lang/cargo/meta-packages, r=alexcrichton

This allows a single git repository to have multiple packages contained inside.

* Cargo will look for `Cargo.toml`s located anywhere inside the project.
* Cargo will stop searching once it reaches a submodule, to avoid accidentally exporting someone else's packages. It is still possible to explicitly depend on packages from a submodule using the `path=` syntax on dependencies.

10 years agoImprovements based on the review
Yehuda Katz [Tue, 1 Jul 2014 06:27:33 +0000 (23:27 -0700)]
Improvements based on the review

10 years agoauto merge of #101 : alexcrichton/cargo/fix-git-1.7, r=wycats
bors [Tue, 1 Jul 2014 04:15:54 +0000 (04:15 +0000)]
auto merge of #101 : alexcrichton/cargo/fix-git-1.7, r=wycats

Apparently these versions of git are broken for `git fetch $url`, so we have to
resort to `git fetch origin` and then just pray that it hasn't changed in the
meantime.

10 years agoFix fetch() on git < 1.7.3
Alex Crichton [Tue, 1 Jul 2014 02:37:55 +0000 (19:37 -0700)]
Fix fetch() on git < 1.7.3

Apparently these versions of git are broken for `git fetch $url`, so we have to
resort to `git fetch origin` and then just pray that it hasn't changed in the
meantime.

10 years agoMeta-packages
Yehuda Katz [Tue, 1 Jul 2014 01:36:27 +0000 (18:36 -0700)]
Meta-packages

10 years agoauto merge of #92 : alexcrichton/cargo/dash-j, r=wycats
bors [Mon, 30 Jun 2014 23:15:02 +0000 (23:15 +0000)]
auto merge of #92 : alexcrichton/cargo/dash-j, r=wycats

This commit implements the -j flag in the `cargo_rustc` module, using the
primitives from the other commits. The default parllelism is `os::num_cpus()`.

This change also brings proper freshness propagation instead of the hokey logic
of once something is compiled, "compile everything to the right as well".