2018-12-08 12:06:54 +01:00
|
|
|
[[package]]
|
|
|
|
name = "adler32"
|
|
|
|
version = "1.0.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "aho-corasick"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.6.9"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-02-08 00:13:57 +01:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "alloc"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"core 0.0.0",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-21 11:33:29 +01:00
|
|
|
"rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "ammonia"
|
|
|
|
version = "1.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 15:11:47 +01:00
|
|
|
"html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
"maplit 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
"tendril 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
]
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "ansi_term"
|
2018-03-16 11:37:14 +01:00
|
|
|
version = "0.11.0"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-03-16 11:37:14 +01:00
|
|
|
dependencies = [
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-03-16 11:37:14 +01:00
|
|
|
]
|
2017-02-08 00:13:57 +01:00
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "arena"
|
|
|
|
version = "0.0.0"
|
2017-12-03 13:49:46 +01:00
|
|
|
dependencies = [
|
|
|
|
"rustc_data_structures 0.0.0",
|
|
|
|
]
|
2016-09-02 10:55:29 +02:00
|
|
|
|
2018-02-26 04:15:45 +01:00
|
|
|
[[package]]
|
|
|
|
name = "arrayvec"
|
|
|
|
version = "0.4.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-04-26 00:11:28 +02:00
|
|
|
[[package]]
|
|
|
|
name = "assert_cli"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.6.2"
|
2018-04-26 00:11:28 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"colored 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-16 05:38:11 +02:00
|
|
|
"difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-26 00:11:28 +02:00
|
|
|
"environment 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 10:57:43 +01:00
|
|
|
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-26 00:11:28 +02:00
|
|
|
]
|
|
|
|
|
2017-06-15 04:33:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "atty"
|
2018-07-27 15:10:52 +02:00
|
|
|
version = "0.2.11"
|
2017-06-15 04:33:06 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
"termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-15 04:33:06 +02:00
|
|
|
]
|
|
|
|
|
2017-05-09 00:01:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "backtrace"
|
2018-12-11 22:36:24 +01:00
|
|
|
version = "0.3.11"
|
2017-05-09 00:01:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-15 01:47:18 +01:00
|
|
|
"backtrace-sys 0.1.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-14 23:37:51 +01:00
|
|
|
"rustc-demangle 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-09 00:01:13 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "backtrace-sys"
|
2018-12-15 01:47:18 +01:00
|
|
|
version = "0.1.27"
|
2017-05-09 00:01:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-15 01:47:18 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-15 01:47:18 +01:00
|
|
|
"rustc-std-workspace-core 1.0.0",
|
2017-05-09 00:01:13 +02:00
|
|
|
]
|
|
|
|
|
2018-09-28 20:27:30 +02:00
|
|
|
[[package]]
|
|
|
|
name = "bit-set"
|
|
|
|
version = "0.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"bit-vec 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "bit-vec"
|
|
|
|
version = "0.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-06-07 21:42:17 +02:00
|
|
|
[[package]]
|
|
|
|
name = "bitflags"
|
|
|
|
version = "0.9.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-09-08 21:08:01 +02:00
|
|
|
[[package]]
|
|
|
|
name = "bitflags"
|
2018-08-21 19:23:47 +02:00
|
|
|
version = "1.0.4"
|
2017-09-08 21:08:01 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "bootstrap"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"build_helper 0.1.0",
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"cmake 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
"lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-08 08:04:29 +02:00
|
|
|
"petgraph 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)",
|
Add tests to rustbuild
In order to run tests, previous commits have cfg'd out various parts of
rustbuild. Generally speaking, these are filesystem-related operations
and process-spawning related parts. Then, rustbuild is run "as normal"
and the various steps that where run are retrieved from the cache and
checked against the expected results.
Note that this means that the current implementation primarily tests
"what" we build, but doesn't actually test that what we build *will*
build. In other words, it doesn't do any form of dependency verification
for any crate. This is possible to implement, but is considered future
work.
This implementation strives to cfg out as little code as possible; it
also does not currently test anywhere near all of rustbuild. The current
tests are also not checked for "correctness," rather, they simply
represent what we do as of this commit, which may be wrong.
Test cases are drawn from the old implementation of rustbuild, though
the expected results may vary.
2018-03-10 15:03:06 +01:00
|
|
|
"pretty_assertions 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-01-24 23:37:04 +01:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "bufstream"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.1.4"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-01-24 23:37:04 +01:00
|
|
|
[[package]]
|
|
|
|
name = "build-manifest"
|
|
|
|
version = "0.1.0"
|
|
|
|
dependencies = [
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2018-12-08 12:06:54 +01:00
|
|
|
[[package]]
|
|
|
|
name = "build_const"
|
|
|
|
version = "0.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "build_helper"
|
|
|
|
version = "0.1.0"
|
|
|
|
|
2018-10-08 19:39:09 +02:00
|
|
|
[[package]]
|
|
|
|
name = "bytecount"
|
2018-12-01 11:36:32 +01:00
|
|
|
version = "0.4.0"
|
2018-10-08 19:39:09 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-01 11:36:32 +01:00
|
|
|
"packed_simd 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
]
|
|
|
|
|
2017-09-18 16:18:23 +02:00
|
|
|
[[package]]
|
|
|
|
name = "byteorder"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.2.7"
|
2017-09-18 16:18:23 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-09-20 23:37:53 +02:00
|
|
|
[[package]]
|
|
|
|
name = "bytesize"
|
|
|
|
version = "1.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "cargo"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.34.0"
|
2017-07-19 03:32:12 +02:00
|
|
|
dependencies = [
|
2018-07-27 15:10:52 +02:00
|
|
|
"atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"bufstream 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-20 23:37:53 +02:00
|
|
|
"bytesize 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"core-foundation 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"crates-io 0.22.0",
|
|
|
|
"crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-26 18:07:16 +01:00
|
|
|
"crypto-hash 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-09 21:55:25 +01:00
|
|
|
"curl 0.4.19 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"curl-sys 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-16 12:08:23 +01:00
|
|
|
"env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 10:57:43 +01:00
|
|
|
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
"fs2 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-14 23:27:26 +02:00
|
|
|
"fwdansi 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"git2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"git2-curl 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-07-19 03:32:12 +02:00
|
|
|
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"home 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"ignore 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-03 02:33:20 +01:00
|
|
|
"im-rc 12.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"jobserver 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"libgit2-sys 0.7.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"miow 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"opener 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"pretty_env_logger 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-28 20:27:30 +02:00
|
|
|
"proptest 0.8.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
"rustc-workspace-hack 1.0.0",
|
2018-12-17 19:23:04 +01:00
|
|
|
"rustfix 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
"semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-09-02 05:46:51 +02:00
|
|
|
"serde_ignored 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"shell-escape 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"tar 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-06-22 17:48:43 +02:00
|
|
|
"unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-07-13 10:34:50 +02:00
|
|
|
[[package]]
|
|
|
|
name = "cargo_metadata"
|
2018-11-14 14:49:40 +01:00
|
|
|
version = "0.6.2"
|
2018-07-13 10:34:50 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-13 10:34:50 +02:00
|
|
|
]
|
|
|
|
|
2017-02-15 23:55:26 +01:00
|
|
|
[[package]]
|
|
|
|
name = "cargotest2"
|
|
|
|
version = "0.1.0"
|
|
|
|
|
2017-09-22 03:58:35 +02:00
|
|
|
[[package]]
|
|
|
|
name = "cc"
|
2018-09-17 18:52:02 +02:00
|
|
|
version = "1.0.25"
|
2017-09-22 03:58:35 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-05-09 00:01:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "cfg-if"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.1.6"
|
2017-05-09 00:01:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-05-24 14:48:02 +02:00
|
|
|
[[package]]
|
|
|
|
name = "chalk-engine"
|
2018-11-28 22:11:00 +01:00
|
|
|
version = "0.9.0"
|
2018-05-24 14:48:02 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"chalk-macros 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-24 05:37:40 +02:00
|
|
|
"rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-24 14:48:02 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "chalk-macros"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-01-25 05:01:42 +01:00
|
|
|
[[package]]
|
|
|
|
name = "chrono"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.4.6"
|
2018-01-25 05:01:42 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-25 05:01:42 +01:00
|
|
|
]
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "clap"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "2.32.0"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-03-16 11:37:14 +01:00
|
|
|
"ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-27 15:10:52 +02:00
|
|
|
"atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-03-16 11:37:14 +01:00
|
|
|
"strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-06-22 17:48:43 +02:00
|
|
|
"unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-09 00:01:13 +02:00
|
|
|
"yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-02-08 00:13:57 +01:00
|
|
|
]
|
|
|
|
|
2017-12-06 09:25:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "clippy"
|
2018-07-15 00:01:24 +02:00
|
|
|
version = "0.0.212"
|
2017-12-06 09:25:29 +01:00
|
|
|
dependencies = [
|
2018-11-14 14:49:40 +01:00
|
|
|
"cargo_metadata 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-30 15:12:12 +01:00
|
|
|
"clippy-mini-macro-test 0.2.0",
|
2018-09-07 09:12:06 +02:00
|
|
|
"clippy_dev 0.0.1",
|
2018-07-15 00:01:24 +02:00
|
|
|
"clippy_lints 0.0.212",
|
2018-11-14 10:56:09 +01:00
|
|
|
"compiletest_rs 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"derive-new 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
"rustc-workspace-hack 1.0.0",
|
2018-09-07 09:12:06 +02:00
|
|
|
"rustc_tools_util 0.1.0",
|
2018-02-09 18:53:41 +01:00
|
|
|
"semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "clippy-mini-macro-test"
|
2018-01-30 15:12:12 +01:00
|
|
|
version = "0.2.0"
|
2017-12-06 09:25:29 +01:00
|
|
|
|
2018-09-07 09:12:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "clippy_dev"
|
|
|
|
version = "0.0.1"
|
|
|
|
dependencies = [
|
|
|
|
"clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-07 09:12:06 +02:00
|
|
|
]
|
|
|
|
|
2018-05-19 13:18:02 +02:00
|
|
|
[[package]]
|
|
|
|
name = "clippy_lints"
|
2018-07-15 00:01:24 +02:00
|
|
|
version = "0.0.212"
|
2018-05-11 14:11:06 +02:00
|
|
|
dependencies = [
|
2018-11-14 14:49:40 +01:00
|
|
|
"cargo_metadata 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-20 09:53:56 +02:00
|
|
|
"if_chain 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-11 14:11:06 +02:00
|
|
|
"itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-23 12:52:47 +01:00
|
|
|
"pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-11 14:11:06 +02:00
|
|
|
"quine-mc_cluskey 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-11 14:11:06 +02:00
|
|
|
"semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-11 14:11:06 +02:00
|
|
|
]
|
|
|
|
|
2018-07-26 23:58:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "cloudabi"
|
|
|
|
version = "0.0.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-26 23:58:55 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "cmake"
|
2018-08-21 19:23:47 +02:00
|
|
|
version = "0.1.33"
|
2016-09-02 10:55:29 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2018-04-26 00:11:28 +02:00
|
|
|
[[package]]
|
|
|
|
name = "colored"
|
|
|
|
version = "1.6.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-12-06 09:25:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "commoncrypto"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"commoncrypto-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "commoncrypto-sys"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-17 21:01:18 +02:00
|
|
|
]
|
|
|
|
|
2016-10-07 08:30:38 +02:00
|
|
|
[[package]]
|
|
|
|
name = "compiler_builtins"
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
version = "0.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2016-10-07 08:30:38 +02:00
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"rustc-std-workspace-core 1.0.0",
|
2016-10-07 08:30:38 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "compiletest"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2017-12-06 09:25:29 +01:00
|
|
|
"diff 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"env_logger 0.5.13 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"miow 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"rustfix 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 13:40:40 +01:00
|
|
|
"walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2017-06-30 20:58:54 +02:00
|
|
|
[[package]]
|
2017-12-06 09:25:29 +01:00
|
|
|
name = "compiletest_rs"
|
2018-11-14 10:56:09 +01:00
|
|
|
version = "0.3.17"
|
2017-07-14 12:30:17 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2017-12-06 09:25:29 +01:00
|
|
|
"diff 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"miow 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-07-14 12:30:17 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "core"
|
|
|
|
version = "0.0.0"
|
2018-02-26 18:07:16 +01:00
|
|
|
dependencies = [
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-26 18:07:16 +01:00
|
|
|
]
|
2016-09-02 10:55:29 +02:00
|
|
|
|
2017-08-24 07:52:28 +02:00
|
|
|
[[package]]
|
|
|
|
name = "core-foundation"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.6.3"
|
2017-08-24 07:52:28 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"core-foundation-sys 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-08-24 07:52:28 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "core-foundation-sys"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.6.2"
|
2017-08-24 07:52:28 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-07-19 03:32:12 +02:00
|
|
|
[[package]]
|
|
|
|
name = "crates-io"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.22.0"
|
2017-07-19 03:32:12 +02:00
|
|
|
dependencies = [
|
2018-11-09 21:55:25 +01:00
|
|
|
"curl 0.4.19 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 10:57:43 +01:00
|
|
|
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2017-09-02 05:46:51 +02:00
|
|
|
[[package]]
|
2018-12-08 12:06:54 +01:00
|
|
|
name = "crc"
|
|
|
|
version = "1.8.1"
|
2017-09-02 05:46:51 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-12-08 12:06:54 +01:00
|
|
|
dependencies = [
|
|
|
|
"build_const 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crc32fast"
|
|
|
|
version = "1.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
2017-09-02 05:46:51 +02:00
|
|
|
|
2018-07-26 23:58:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-channel"
|
2018-09-25 04:40:42 +02:00
|
|
|
version = "0.2.6"
|
2018-07-26 23:58:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-25 04:40:42 +02:00
|
|
|
"crossbeam-epoch 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-15 10:40:25 +02:00
|
|
|
"rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-26 23:58:55 +02:00
|
|
|
]
|
|
|
|
|
2018-02-26 04:15:45 +01:00
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-deque"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-04-02 17:43:55 +02:00
|
|
|
"crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-26 04:15:45 +01:00
|
|
|
"crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-epoch"
|
2018-04-02 17:43:55 +02:00
|
|
|
version = "0.3.1"
|
2018-02-26 04:15:45 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-26 04:15:45 +01:00
|
|
|
"crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-26 04:15:45 +01:00
|
|
|
"memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-07-26 23:58:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-epoch"
|
2018-09-25 04:40:42 +02:00
|
|
|
version = "0.6.0"
|
2018-07-26 23:58:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-25 04:40:42 +02:00
|
|
|
"crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-26 23:58:55 +02:00
|
|
|
"memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-02-26 04:15:45 +01:00
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-utils"
|
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-26 04:15:45 +01:00
|
|
|
]
|
|
|
|
|
2018-07-31 23:16:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-utils"
|
|
|
|
version = "0.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-11-16 12:08:23 +01:00
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-utils"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.6.2"
|
2018-11-16 12:08:23 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-16 12:08:23 +01:00
|
|
|
]
|
|
|
|
|
2017-12-06 09:25:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "crypto-hash"
|
2018-02-26 18:07:16 +01:00
|
|
|
version = "0.3.1"
|
2017-12-06 09:25:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"commoncrypto 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "curl"
|
2018-11-09 21:55:25 +01:00
|
|
|
version = "0.4.19"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-11-09 21:55:25 +01:00
|
|
|
"curl-sys 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-10 18:42:49 +01:00
|
|
|
"openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "curl-sys"
|
2018-11-09 21:55:25 +01:00
|
|
|
version = "0.4.15"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libnghttp2-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-09 00:01:13 +02:00
|
|
|
]
|
|
|
|
|
2018-05-29 13:52:51 +02:00
|
|
|
[[package]]
|
|
|
|
name = "datafrog"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "derive-new"
|
2018-12-08 15:11:47 +01:00
|
|
|
version = "0.5.6"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 15:11:47 +01:00
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-07-26 23:58:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "derive_more"
|
2018-11-19 05:21:10 +01:00
|
|
|
version = "0.13.0"
|
2018-07-26 23:58:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-11-19 05:21:10 +01:00
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-26 23:58:55 +02:00
|
|
|
]
|
|
|
|
|
2017-04-27 21:41:18 +02:00
|
|
|
[[package]]
|
|
|
|
name = "diff"
|
2017-12-06 09:25:29 +01:00
|
|
|
version = "0.1.11"
|
2017-04-27 21:41:18 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
Add tests to rustbuild
In order to run tests, previous commits have cfg'd out various parts of
rustbuild. Generally speaking, these are filesystem-related operations
and process-spawning related parts. Then, rustbuild is run "as normal"
and the various steps that where run are retrieved from the cache and
checked against the expected results.
Note that this means that the current implementation primarily tests
"what" we build, but doesn't actually test that what we build *will*
build. In other words, it doesn't do any form of dependency verification
for any crate. This is possible to implement, but is considered future
work.
This implementation strives to cfg out as little code as possible; it
also does not currently test anywhere near all of rustbuild. The current
tests are also not checked for "correctness," rather, they simply
represent what we do as of this commit, which may be wrong.
Test cases are drawn from the old implementation of rustbuild, though
the expected results may vary.
2018-03-10 15:03:06 +01:00
|
|
|
[[package]]
|
|
|
|
name = "difference"
|
|
|
|
version = "2.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-11-28 21:22:45 +01:00
|
|
|
[[package]]
|
|
|
|
name = "directories"
|
|
|
|
version = "1.0.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-28 21:22:45 +01:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-12-06 09:25:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "dlmalloc"
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2017-12-06 09:25:29 +01:00
|
|
|
dependencies = [
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-std-workspace-core 1.0.0",
|
2017-12-06 09:25:29 +01:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "either"
|
2018-04-02 17:43:55 +02:00
|
|
|
version = "1.5.0"
|
2017-12-06 09:25:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "elasticlunr-rs"
|
2018-12-08 15:11:47 +01:00
|
|
|
version = "2.3.4"
|
2018-04-03 16:32:04 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
]
|
|
|
|
|
2018-07-25 14:44:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "ena"
|
2018-11-02 09:46:59 +01:00
|
|
|
version = "0.11.0"
|
2018-07-25 14:44:06 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-25 14:44:06 +02:00
|
|
|
]
|
|
|
|
|
2018-01-25 05:01:42 +01:00
|
|
|
[[package]]
|
|
|
|
name = "env_logger"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.5.13"
|
2018-01-25 05:01:42 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-27 15:10:52 +02:00
|
|
|
"atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-25 05:01:42 +01:00
|
|
|
]
|
|
|
|
|
2018-11-16 12:08:23 +01:00
|
|
|
[[package]]
|
|
|
|
name = "env_logger"
|
|
|
|
version = "0.6.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-16 12:08:23 +01:00
|
|
|
]
|
|
|
|
|
2018-04-26 00:11:28 +02:00
|
|
|
[[package]]
|
|
|
|
name = "environment"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-05-09 00:01:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "error-chain"
|
2017-09-02 05:46:51 +02:00
|
|
|
version = "0.11.0"
|
2017-07-29 14:35:09 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-11 22:36:24 +01:00
|
|
|
"backtrace 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-07-29 14:35:09 +02:00
|
|
|
]
|
|
|
|
|
2018-07-13 10:34:50 +02:00
|
|
|
[[package]]
|
|
|
|
name = "error-chain"
|
|
|
|
version = "0.12.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-11 22:36:24 +01:00
|
|
|
"backtrace 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-13 10:34:50 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "error_index_generator"
|
|
|
|
version = "0.0.0"
|
2017-07-23 04:01:58 +02:00
|
|
|
dependencies = [
|
|
|
|
"rustdoc 0.0.0",
|
|
|
|
]
|
2016-09-02 10:55:29 +02:00
|
|
|
|
2017-12-10 18:42:49 +01:00
|
|
|
[[package]]
|
|
|
|
name = "failure"
|
2018-12-10 10:57:43 +01:00
|
|
|
version = "0.1.3"
|
2017-12-10 18:42:49 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-11 22:36:24 +01:00
|
|
|
"backtrace 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-10 18:42:49 +01:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "failure_derive"
|
2018-12-08 15:11:47 +01:00
|
|
|
version = "0.1.3"
|
2017-12-10 18:42:49 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-11-19 05:21:10 +01:00
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-10 18:42:49 +01:00
|
|
|
]
|
|
|
|
|
2018-04-18 17:43:59 +02:00
|
|
|
[[package]]
|
|
|
|
name = "filetime"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.2.4"
|
2018-04-18 17:43:59 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-18 17:43:59 +02:00
|
|
|
]
|
|
|
|
|
2018-03-27 12:44:33 +02:00
|
|
|
[[package]]
|
|
|
|
name = "fixedbitset"
|
|
|
|
version = "0.1.9"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-12-31 15:34:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "flate2"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.0.6"
|
2017-12-31 15:34:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"miniz_oxide_c_api 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-31 15:34:29 +01:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "fmt_macros"
|
|
|
|
version = "0.0.0"
|
|
|
|
|
2017-07-18 23:26:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "fnv"
|
2017-12-06 09:25:29 +01:00
|
|
|
version = "1.0.6"
|
2017-07-18 23:26:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "foreign-types"
|
2017-12-06 09:25:29 +01:00
|
|
|
version = "0.3.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "foreign-types-shared"
|
|
|
|
version = "0.1.1"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-08-28 06:33:26 +02:00
|
|
|
[[package]]
|
|
|
|
name = "fortanix-sgx-abi"
|
2018-12-19 12:56:17 +01:00
|
|
|
version = "0.3.2"
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-08-28 06:33:26 +02:00
|
|
|
dependencies = [
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-std-workspace-core 1.0.0",
|
2018-08-28 06:33:26 +02:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "fs2"
|
2018-01-08 22:56:22 +01:00
|
|
|
version = "0.4.3"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-10-21 04:15:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "fs_extra"
|
|
|
|
version = "1.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-07-06 02:34:00 +02:00
|
|
|
[[package]]
|
|
|
|
name = "fst"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-06 02:34:00 +02:00
|
|
|
]
|
|
|
|
|
2017-12-06 09:25:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "fuchsia-zircon"
|
2018-01-08 22:56:22 +01:00
|
|
|
version = "0.3.3"
|
2017-12-06 09:25:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
"fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "fuchsia-zircon-sys"
|
2018-01-08 22:56:22 +01:00
|
|
|
version = "0.3.3"
|
2017-12-06 09:25:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "futf"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.1.4"
|
2018-04-03 16:32:04 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
]
|
|
|
|
|
2017-07-19 03:32:12 +02:00
|
|
|
[[package]]
|
|
|
|
name = "futures"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.1.21"
|
2016-09-02 10:55:29 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-08-14 23:27:26 +02:00
|
|
|
[[package]]
|
|
|
|
name = "fwdansi"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-14 23:27:26 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "getopts"
|
2018-04-02 17:43:55 +02:00
|
|
|
version = "0.2.17"
|
2016-09-02 10:55:29 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "git2"
|
2018-12-17 19:23:04 +01:00
|
|
|
version = "0.8.0"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"libgit2-sys 0.7.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-10 18:42:49 +01:00
|
|
|
"openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "git2-curl"
|
2018-12-17 19:23:04 +01:00
|
|
|
version = "0.9.0"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-11-09 21:55:25 +01:00
|
|
|
"curl 0.4.19 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"git2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "glob"
|
|
|
|
version = "0.2.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-07-18 23:26:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "globset"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.4.2"
|
2017-07-18 23:26:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
"fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-07-18 23:26:55 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "graphviz"
|
|
|
|
version = "0.0.0"
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "handlebars"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.32.4"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"pest 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"pest_derive 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-12-08 15:11:47 +01:00
|
|
|
[[package]]
|
|
|
|
name = "heck"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-01-08 22:56:22 +01:00
|
|
|
[[package]]
|
|
|
|
name = "hex"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.3.2"
|
2018-01-08 22:56:22 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-07-19 03:32:12 +02:00
|
|
|
[[package]]
|
|
|
|
name = "home"
|
2018-08-21 19:23:47 +02:00
|
|
|
version = "0.3.3"
|
2017-07-19 03:32:12 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-03-21 03:04:09 +01:00
|
|
|
"scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-07-19 03:32:12 +02:00
|
|
|
]
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "html5ever"
|
2018-12-08 15:11:47 +01:00
|
|
|
version = "0.22.5"
|
2018-04-03 16:32:04 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
"mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"markup5ever 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
]
|
|
|
|
|
2018-03-01 20:08:48 +01:00
|
|
|
[[package]]
|
|
|
|
name = "humantime"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.2.0"
|
2018-03-01 20:08:48 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-03-01 20:08:48 +01:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "idna"
|
2018-07-17 18:04:22 +02:00
|
|
|
version = "0.1.5"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-27 19:33:32 +02:00
|
|
|
"unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-02-15 23:55:26 +01:00
|
|
|
]
|
|
|
|
|
2017-12-06 09:25:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "if_chain"
|
2018-07-20 09:53:56 +02:00
|
|
|
version = "0.1.3"
|
2017-12-06 09:25:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-07-18 23:26:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "ignore"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.4.4"
|
2017-07-18 23:26:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"crossbeam-channel 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-07-18 23:26:55 +02:00
|
|
|
]
|
|
|
|
|
2018-12-03 02:33:20 +01:00
|
|
|
[[package]]
|
|
|
|
name = "im-rc"
|
|
|
|
version = "12.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-03 02:33:20 +01:00
|
|
|
"typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-05-09 00:01:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "installer"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-03 20:24:24 +02:00
|
|
|
"error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"rayon 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"tar 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"xz2 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-09 00:01:13 +02:00
|
|
|
]
|
|
|
|
|
2018-01-25 18:32:25 +01:00
|
|
|
[[package]]
|
|
|
|
name = "is-match"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "itertools"
|
2018-04-02 17:43:55 +02:00
|
|
|
version = "0.7.8"
|
2018-01-25 18:32:25 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-04-02 17:43:55 +02:00
|
|
|
"either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-25 18:32:25 +01:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
2017-06-05 18:36:48 +02:00
|
|
|
name = "itoa"
|
2018-09-28 20:27:30 +02:00
|
|
|
version = "0.4.3"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-10-21 04:15:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "jemalloc-sys"
|
|
|
|
version = "0.1.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-21 04:15:06 +02:00
|
|
|
]
|
|
|
|
|
2017-02-20 01:20:57 +01:00
|
|
|
[[package]]
|
2017-06-05 18:36:48 +02:00
|
|
|
name = "jobserver"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.1.12"
|
2017-02-20 01:20:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2017-06-05 18:36:48 +02:00
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-05 18:36:48 +02:00
|
|
|
]
|
2017-02-20 01:20:57 +01:00
|
|
|
|
2018-08-25 18:17:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "json"
|
|
|
|
version = "0.11.13"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-07-19 03:32:12 +02:00
|
|
|
[[package]]
|
|
|
|
name = "jsonrpc-core"
|
2018-12-17 19:23:04 +01:00
|
|
|
version = "9.0.0"
|
2017-07-19 03:32:12 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-07-19 03:32:12 +02:00
|
|
|
]
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "kernel32-sys"
|
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "languageserver-types"
|
2018-12-01 11:36:32 +01:00
|
|
|
version = "0.51.1"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"num-derive 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
"url_serde 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "lazy_static"
|
2017-12-06 09:25:29 +01:00
|
|
|
version = "0.2.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-12-10 18:42:49 +01:00
|
|
|
[[package]]
|
|
|
|
name = "lazy_static"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "1.2.0"
|
2017-12-10 18:42:49 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-02-26 18:07:16 +01:00
|
|
|
[[package]]
|
|
|
|
name = "lazycell"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.2.1"
|
2018-02-26 18:07:16 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "libc"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.2.45"
|
2016-09-02 10:55:29 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
dependencies = [
|
|
|
|
"rustc-std-workspace-core 1.0.0",
|
|
|
|
]
|
2016-09-02 10:55:29 +02:00
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "libgit2-sys"
|
2018-12-17 19:23:04 +01:00
|
|
|
version = "0.7.11"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-09 21:55:25 +01:00
|
|
|
"curl-sys 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-17 18:52:02 +02:00
|
|
|
"libssh2-sys 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-09-20 23:37:53 +02:00
|
|
|
[[package]]
|
|
|
|
name = "libnghttp2-sys"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.1.1"
|
2018-09-20 23:37:53 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-20 23:37:53 +02:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "libssh2-sys"
|
2018-09-17 18:52:02 +02:00
|
|
|
version = "0.2.11"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "libz-sys"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.0.25"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "linkchecker"
|
|
|
|
version = "0.1.0"
|
|
|
|
|
2018-08-05 00:24:39 +02:00
|
|
|
[[package]]
|
|
|
|
name = "lock_api"
|
|
|
|
version = "0.1.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-12-29 11:24:38 +01:00
|
|
|
[[package]]
|
|
|
|
name = "log"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.4.6"
|
2016-09-02 10:55:29 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2017-12-29 11:24:38 +01:00
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-29 11:24:38 +01:00
|
|
|
]
|
2016-09-02 10:55:29 +02:00
|
|
|
|
2017-09-18 16:18:23 +02:00
|
|
|
[[package]]
|
|
|
|
name = "log_settings"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.1.2"
|
2017-09-18 16:18:23 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-09-18 16:18:23 +02:00
|
|
|
]
|
|
|
|
|
2017-05-09 00:01:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "lzma-sys"
|
2018-07-06 22:52:40 +02:00
|
|
|
version = "0.1.10"
|
2017-05-09 00:01:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-09 00:01:13 +02:00
|
|
|
]
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "mac"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-08-15 15:07:07 +02:00
|
|
|
[[package]]
|
|
|
|
name = "macro-utils"
|
|
|
|
version = "0.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "maplit"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "markup5ever"
|
|
|
|
version = "0.7.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"phf 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"phf_codegen 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"string_cache 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"string_cache_codegen 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
"tendril 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "matches"
|
2018-08-21 19:23:47 +02:00
|
|
|
version = "0.1.8"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "mdbook"
|
2018-04-21 23:06:13 +02:00
|
|
|
version = "0.1.7"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-04-03 16:32:04 +02:00
|
|
|
"ammonia 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"elasticlunr-rs 2.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"env_logger 0.5.13 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
"error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"handlebars 0.32.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-09-28 00:37:02 +02:00
|
|
|
"open 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-18 22:33:56 +01:00
|
|
|
"pulldown-cmark 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-25 18:32:25 +01:00
|
|
|
"shlex 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-25 18:32:25 +01:00
|
|
|
"toml-query 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2017-12-06 09:25:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "memchr"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "2.1.1"
|
2017-12-06 09:25:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-02-08 00:13:57 +01:00
|
|
|
]
|
|
|
|
|
2018-08-31 15:18:08 +02:00
|
|
|
[[package]]
|
|
|
|
name = "memmap"
|
|
|
|
version = "0.6.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-31 15:18:08 +02:00
|
|
|
]
|
|
|
|
|
2018-02-26 04:15:45 +01:00
|
|
|
[[package]]
|
|
|
|
name = "memoffset"
|
|
|
|
version = "0.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-05-11 00:02:05 +02:00
|
|
|
[[package]]
|
|
|
|
name = "minifier"
|
2018-10-06 18:51:56 +02:00
|
|
|
version = "0.0.20"
|
2018-05-11 00:02:05 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-15 15:07:07 +02:00
|
|
|
"macro-utils 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-11 00:02:05 +02:00
|
|
|
]
|
|
|
|
|
2017-05-09 00:01:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "miniz-sys"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.1.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "miniz_oxide"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "miniz_oxide_c_api"
|
|
|
|
version = "0.2.0"
|
2017-05-09 00:01:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"miniz_oxide 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-03-07 08:39:55 +01:00
|
|
|
[[package]]
|
|
|
|
name = "miow"
|
2018-08-21 19:23:47 +02:00
|
|
|
version = "0.3.3"
|
2018-03-07 08:39:55 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-10-08 19:39:09 +02:00
|
|
|
"socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-03-07 08:39:55 +01:00
|
|
|
]
|
|
|
|
|
2017-12-15 20:41:58 +01:00
|
|
|
[[package]]
|
|
|
|
name = "miri"
|
|
|
|
version = "0.1.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-14 14:49:40 +01:00
|
|
|
"cargo_metadata 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-13 10:34:50 +02:00
|
|
|
"colored 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-14 10:56:09 +01:00
|
|
|
"compiletest_rs 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-28 21:22:45 +01:00
|
|
|
"directories 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"rustc-workspace-hack 1.0.0",
|
|
|
|
"rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-07 10:12:01 +01:00
|
|
|
"vergen 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-15 20:41:58 +01:00
|
|
|
]
|
|
|
|
|
2018-07-02 18:33:16 +02:00
|
|
|
[[package]]
|
|
|
|
name = "new_debug_unreachable"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-02-26 04:15:45 +01:00
|
|
|
[[package]]
|
|
|
|
name = "nodrop"
|
|
|
|
version = "0.1.12"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
2018-07-15 00:01:24 +02:00
|
|
|
name = "num-derive"
|
2018-12-08 15:11:47 +01:00
|
|
|
version = "0.2.3"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-19 05:21:10 +01:00
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
2018-07-15 00:01:24 +02:00
|
|
|
name = "num-integer"
|
|
|
|
version = "0.1.39"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-09 00:01:13 +02:00
|
|
|
]
|
|
|
|
|
2017-02-20 01:20:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "num-traits"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.2.6"
|
2017-02-20 01:20:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "num_cpus"
|
2018-01-08 22:56:22 +01:00
|
|
|
version = "1.8.0"
|
2016-09-02 10:55:29 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2017-02-20 01:20:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "open"
|
2017-09-28 00:37:02 +02:00
|
|
|
version = "1.2.1"
|
2017-02-20 01:20:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-08-21 19:23:47 +02:00
|
|
|
[[package]]
|
|
|
|
name = "opener"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.3.2"
|
2018-08-21 19:23:47 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-10 10:57:43 +01:00
|
|
|
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "openssl"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.10.15"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
"foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "openssl-probe"
|
2017-12-10 18:42:49 +01:00
|
|
|
version = "0.1.2"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-08-14 23:27:26 +02:00
|
|
|
[[package]]
|
|
|
|
name = "openssl-src"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "111.1.0+1.1.1a"
|
2018-08-14 23:27:26 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-14 23:27:26 +02:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "openssl-sys"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.9.39"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"openssl-src 111.1.0+1.1.1a (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-03-27 12:44:33 +02:00
|
|
|
[[package]]
|
|
|
|
name = "ordermap"
|
|
|
|
version = "0.3.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-07-06 02:34:00 +02:00
|
|
|
[[package]]
|
|
|
|
name = "ordslice"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-04-26 23:22:45 +02:00
|
|
|
[[package]]
|
|
|
|
name = "owning_ref"
|
|
|
|
version = "0.3.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"stable_deref_trait 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-26 23:22:45 +02:00
|
|
|
]
|
|
|
|
|
2018-12-01 11:36:32 +01:00
|
|
|
[[package]]
|
|
|
|
name = "packed_simd"
|
|
|
|
version = "0.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-01 11:36:32 +01:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "panic_abort"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"core 0.0.0",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "panic_unwind"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"alloc 0.0.0",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"core 0.0.0",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"unwind 0.0.0",
|
|
|
|
]
|
|
|
|
|
2018-08-05 00:24:39 +02:00
|
|
|
[[package]]
|
|
|
|
name = "parking_lot"
|
|
|
|
version = "0.6.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"lock_api 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"parking_lot_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "parking_lot_core"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-15 10:40:25 +02:00
|
|
|
"rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-05 00:24:39 +02:00
|
|
|
]
|
|
|
|
|
2017-06-15 04:33:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "percent-encoding"
|
2017-12-06 09:25:29 +01:00
|
|
|
version = "1.0.1"
|
2017-06-15 04:33:06 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "pest"
|
2018-04-02 17:43:55 +02:00
|
|
|
version = "1.0.6"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-04-02 17:43:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "pest_derive"
|
2018-12-08 15:11:47 +01:00
|
|
|
version = "1.0.8"
|
2018-04-02 17:43:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"pest 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-03-27 12:44:33 +02:00
|
|
|
[[package]]
|
|
|
|
name = "petgraph"
|
2018-09-08 08:04:29 +02:00
|
|
|
version = "0.4.13"
|
2018-03-27 12:44:33 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"fixedbitset 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"ordermap 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "phf"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.7.22"
|
2018-04-03 16:32:04 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"phf_shared 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "phf_codegen"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.7.22"
|
2018-04-03 16:32:04 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"phf_generator 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"phf_shared 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "phf_generator"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.7.22"
|
2018-04-03 16:32:04 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"phf_shared 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "phf_shared"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.7.22"
|
2018-04-03 16:32:04 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"siphasher 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "pkg-config"
|
2018-10-08 19:39:09 +02:00
|
|
|
version = "0.3.14"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-05-24 23:52:01 +02:00
|
|
|
[[package]]
|
|
|
|
name = "polonius-engine"
|
2018-05-30 17:17:37 +02:00
|
|
|
version = "0.5.0"
|
2018-05-24 23:52:01 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-05-29 13:52:51 +02:00
|
|
|
dependencies = [
|
|
|
|
"datafrog 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-29 15:36:45 +02:00
|
|
|
"rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-29 13:52:51 +02:00
|
|
|
]
|
2018-05-24 23:52:01 +02:00
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "precomputed-hash"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
Add tests to rustbuild
In order to run tests, previous commits have cfg'd out various parts of
rustbuild. Generally speaking, these are filesystem-related operations
and process-spawning related parts. Then, rustbuild is run "as normal"
and the various steps that where run are retrieved from the cache and
checked against the expected results.
Note that this means that the current implementation primarily tests
"what" we build, but doesn't actually test that what we build *will*
build. In other words, it doesn't do any form of dependency verification
for any crate. This is possible to implement, but is considered future
work.
This implementation strives to cfg out as little code as possible; it
also does not currently test anywhere near all of rustbuild. The current
tests are also not checked for "correctness," rather, they simply
represent what we do as of this commit, which may be wrong.
Test cases are drawn from the old implementation of rustbuild, though
the expected results may vary.
2018-03-10 15:03:06 +01:00
|
|
|
[[package]]
|
|
|
|
name = "pretty_assertions"
|
|
|
|
version = "0.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-12-03 02:33:20 +01:00
|
|
|
[[package]]
|
|
|
|
name = "pretty_env_logger"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.3.0"
|
2018-12-03 02:33:20 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-03 02:33:20 +01:00
|
|
|
]
|
|
|
|
|
2018-04-02 17:43:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "proc-macro2"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.3.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "proc-macro2"
|
2018-11-19 05:21:10 +01:00
|
|
|
version = "0.4.24"
|
2018-04-02 17:43:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "proc_macro"
|
|
|
|
version = "0.0.0"
|
|
|
|
|
2017-02-13 10:57:50 +01:00
|
|
|
[[package]]
|
|
|
|
name = "profiler_builtins"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-02-13 10:57:50 +01:00
|
|
|
"core 0.0.0",
|
2017-06-04 16:54:39 +02:00
|
|
|
]
|
|
|
|
|
2018-09-28 20:27:30 +02:00
|
|
|
[[package]]
|
|
|
|
name = "proptest"
|
|
|
|
version = "0.8.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"bit-set 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-28 20:27:30 +02:00
|
|
|
"quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-28 20:27:30 +02:00
|
|
|
"rusty-fork 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-28 20:27:30 +02:00
|
|
|
]
|
|
|
|
|
2017-12-06 09:25:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "pulldown-cmark"
|
2018-02-18 22:33:56 +01:00
|
|
|
version = "0.1.2"
|
2017-12-06 09:25:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-03-12 20:28:36 +01:00
|
|
|
]
|
|
|
|
|
2018-11-23 12:52:47 +01:00
|
|
|
[[package]]
|
|
|
|
name = "pulldown-cmark"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "quick-error"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "1.2.2"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
2017-12-06 09:25:29 +01:00
|
|
|
name = "quine-mc_cluskey"
|
|
|
|
version = "0.2.4"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "quote"
|
|
|
|
version = "0.3.15"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-04-02 17:43:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "quote"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.5.2"
|
2018-04-02 17:43:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"proc-macro2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "quote"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.6.10"
|
2018-07-02 18:33:16 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-11-19 05:21:10 +01:00
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "racer"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "2.1.16"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2017-04-30 01:11:58 +02:00
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-19 05:21:10 +01:00
|
|
|
"derive_more 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-26 23:58:55 +02:00
|
|
|
"rls-span 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"rustc-ap-syntax 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
2017-02-08 00:13:57 +01:00
|
|
|
|
2018-02-26 18:07:16 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rand"
|
2018-08-21 19:23:47 +02:00
|
|
|
version = "0.4.3"
|
2018-02-26 18:07:16 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-07-26 23:58:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rand"
|
2018-09-15 10:40:25 +02:00
|
|
|
version = "0.5.5"
|
2018-07-26 23:58:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-26 23:58:55 +02:00
|
|
|
]
|
|
|
|
|
2018-12-08 12:06:54 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rand"
|
|
|
|
version = "0.6.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_chacha"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-14 23:37:51 +01:00
|
|
|
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-07-26 23:58:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rand_core"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_core"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_hc"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-14 23:37:51 +01:00
|
|
|
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_isaac"
|
|
|
|
version = "0.1.1"
|
2018-07-26 23:58:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-12-08 12:06:54 +01:00
|
|
|
dependencies = [
|
|
|
|
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_pcg"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_xorshift"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-14 23:37:51 +01:00
|
|
|
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
]
|
2018-07-26 23:58:55 +02:00
|
|
|
|
2018-02-26 04:15:45 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rayon"
|
2018-04-02 17:43:55 +02:00
|
|
|
version = "1.0.1"
|
2018-02-26 04:15:45 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-04-02 17:43:55 +02:00
|
|
|
"either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-26 04:15:45 +01:00
|
|
|
"rayon-core 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rayon-core"
|
2018-02-26 04:15:45 +01:00
|
|
|
version = "1.4.0"
|
2017-12-06 09:25:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-02-26 04:15:45 +01:00
|
|
|
"crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2017-09-22 03:58:35 +02:00
|
|
|
[[package]]
|
|
|
|
name = "redox_syscall"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.1.43"
|
2017-12-06 09:25:29 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "redox_termios"
|
|
|
|
version = "0.1.1"
|
2017-09-22 03:58:35 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2017-12-06 09:25:29 +01:00
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
]
|
2017-09-22 03:58:35 +02:00
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "regex"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.2.11"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-02-08 00:13:57 +01:00
|
|
|
]
|
|
|
|
|
2018-05-11 14:11:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "regex"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.1.0"
|
2018-05-11 14:11:06 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-11 14:11:06 +02:00
|
|
|
]
|
|
|
|
|
2018-02-26 18:07:16 +01:00
|
|
|
[[package]]
|
|
|
|
name = "regex-syntax"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.5.6"
|
2018-02-26 18:07:16 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-26 18:07:16 +01:00
|
|
|
]
|
|
|
|
|
2018-05-11 14:11:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "regex-syntax"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.6.4"
|
2018-05-11 14:11:06 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-11 14:11:06 +02:00
|
|
|
]
|
|
|
|
|
travis: Parallelize tests on Android
Currently our slowest test suite on android, run-pass, takes over 5 times longer
than the x86_64 component (~400 -> ~2200s). Typically QEMU emulation does indeed
add overhead, but not 5x for this kind of workload. One of the slowest parts of
the Android process is that *compilation* happens serially. Tests themselves
need to run single-threaded on the emulator (due to how the test harness works)
and this forces the compiles themselves to be single threaded.
Now Travis gives us more than one core per machine, so it'd be much better if we
could take advantage of them! The emulator itself is still fundamentally
single-threaded, but we should see a nice speedup by sending binaries for it to
run much more quickly.
It turns out that we've already got all the tools to do this in-tree. The
qemu-test-{server,client} that are in use for the ARM Linux testing are a
perfect match for the Android emulator. This commit migrates the custom adb
management code in compiletest/rustbuild to the same qemu-test-{server,client}
implementation that ARM Linux uses.
This allows us to lift the parallelism restriction on the compiletest test
suites, namely run-pass. Consequently although we'll still basically run the
tests themselves in single threaded mode we'll be able to compile all of them in
parallel, keeping the pipeline much more full and using more cores for the work
at hand. Additionally the architecture here should be a bit speedier as it
should have less overhead than adb which is a whole new process on both the host
and the emulator!
Locally on an 8 core machine I've seen the run-pass test suite speed up from
taking nearly an hour to only taking 6 minutes. I don't think we'll see quite a
drastic speedup on Travis but I'm hoping this change can place the Android tests
well below 2 hours instead of just above 2 hours.
Because the client/server here are now repurposed for more than just QEMU,
they've been renamed to `remote-test-{server,client}`.
Note that this PR does not currently modify how debuginfo tests are executed on
Android. While parallelizable it wouldn't be quite as easy, so that's left to
another day. Thankfully that test suite is much smaller than the run-pass test
suite.
As a final fix I discovered that the ARM and Android test suites were actually
running all library unit tests (e.g. stdtest, coretest, etc) twice. I've
corrected that to only run tests once which should also give a nice boost in
overall cycle time here.
2017-04-26 17:52:19 +02:00
|
|
|
[[package]]
|
|
|
|
name = "remote-test-client"
|
|
|
|
version = "0.1.0"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "remote-test-server"
|
|
|
|
version = "0.1.0"
|
|
|
|
|
2018-02-26 18:07:16 +01:00
|
|
|
[[package]]
|
|
|
|
name = "remove_dir_all"
|
2018-04-18 17:43:59 +02:00
|
|
|
version = "0.5.1"
|
2018-02-26 18:07:16 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-26 18:07:16 +01:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rls"
|
2018-11-19 05:21:10 +01:00
|
|
|
version = "1.31.6"
|
2017-04-30 01:11:58 +02:00
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cargo 0.34.0",
|
2018-11-14 14:49:40 +01:00
|
|
|
"cargo_metadata 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-15 00:01:24 +02:00
|
|
|
"clippy_lints 0.0.212",
|
2018-09-25 04:40:42 +02:00
|
|
|
"crossbeam-channel 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"env_logger 0.5.13 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 10:57:43 +01:00
|
|
|
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"home 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-06-07 05:14:49 +02:00
|
|
|
"itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"jsonrpc-core 9.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-01 11:36:32 +01:00
|
|
|
"languageserver-types 0.51.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-14 09:09:51 +01:00
|
|
|
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-06 02:34:00 +02:00
|
|
|
"ordslice 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"racer 2.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-15 10:40:25 +02:00
|
|
|
"rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"rayon 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-01 11:36:32 +01:00
|
|
|
"rls-analysis 0.16.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-19 05:21:10 +01:00
|
|
|
"rls-blacklist 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-25 04:40:42 +02:00
|
|
|
"rls-data 0.18.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-04 09:29:15 +02:00
|
|
|
"rls-rustc 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
"rls-span 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-19 05:21:10 +01:00
|
|
|
"rls-vfs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-31 21:52:25 +02:00
|
|
|
"rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
"rustc-workspace-hack 1.0.0",
|
2018-09-22 23:58:03 +02:00
|
|
|
"rustc_tools_util 0.1.0",
|
2018-12-10 09:05:37 +01:00
|
|
|
"rustfmt-nightly 1.0.1",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rls-analysis"
|
2018-12-01 11:36:32 +01:00
|
|
|
version = "0.16.10"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 15:11:47 +01:00
|
|
|
"derive-new 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-06 02:34:00 +02:00
|
|
|
"fst 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-25 18:17:55 +02:00
|
|
|
"json 0.11.13 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-25 04:40:42 +02:00
|
|
|
"rls-data 0.18.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-05 18:36:48 +02:00
|
|
|
"rls-span 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-08-02 06:57:50 +02:00
|
|
|
[[package]]
|
2018-02-14 09:09:51 +01:00
|
|
|
name = "rls-blacklist"
|
2018-11-19 05:21:10 +01:00
|
|
|
version = "0.1.3"
|
2017-08-02 06:57:50 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-02-02 08:29:59 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rls-data"
|
2018-09-25 04:40:42 +02:00
|
|
|
version = "0.18.1"
|
2018-02-02 08:29:59 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"rls-span 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-02 08:29:59 +01:00
|
|
|
]
|
|
|
|
|
2017-08-30 07:09:36 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rls-rustc"
|
2018-08-04 09:29:15 +02:00
|
|
|
version = "0.5.0"
|
2017-08-30 07:09:36 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-03-14 03:16:44 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rls-span"
|
2017-05-08 21:15:48 +02:00
|
|
|
version = "0.4.0"
|
2017-03-15 09:20:23 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2017-03-14 03:16:44 +01:00
|
|
|
dependencies = [
|
2017-04-30 01:11:58 +02:00
|
|
|
"rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rls-vfs"
|
2018-11-19 05:21:10 +01:00
|
|
|
version = "0.7.0"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
"rls-span 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-03-14 03:16:44 +01:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustbook"
|
2017-02-08 00:13:57 +01:00
|
|
|
version = "0.1.0"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-21 23:06:13 +02:00
|
|
|
"mdbook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-02-08 00:13:57 +01:00
|
|
|
]
|
2016-09-02 10:55:29 +02:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"arena 0.0.0",
|
2018-12-11 22:36:24 +01:00
|
|
|
"backtrace 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-28 22:11:00 +01:00
|
|
|
"chalk-engine 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"fmt_macros 0.0.0",
|
|
|
|
"graphviz 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"jobserver 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-05 00:24:39 +02:00
|
|
|
"parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-30 17:17:37 +02:00
|
|
|
"polonius-engine 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-06-06 15:25:47 +02:00
|
|
|
"rustc-rayon 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-rayon-core 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
"rustc_apfloat 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_data_structures 0.0.0",
|
|
|
|
"rustc_errors 0.0.0",
|
2018-08-03 23:31:03 +02:00
|
|
|
"rustc_fs_util 0.0.0",
|
2017-12-08 20:18:21 +01:00
|
|
|
"rustc_target 0.0.0",
|
2018-07-02 18:33:16 +02:00
|
|
|
"scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"serialize 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2018-05-28 00:16:42 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-ap-arena"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "306.0.0"
|
2018-01-18 15:40:37 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-10 08:58:08 +01:00
|
|
|
"rustc-ap-rustc_data_structures 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-18 15:40:37 +01:00
|
|
|
]
|
|
|
|
|
2018-11-19 05:21:10 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-ap-graphviz"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "306.0.0"
|
2018-11-19 05:21:10 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-07-31 23:16:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-ap-rustc_cratesio_shim"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "306.0.0"
|
2018-07-31 23:16:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-25 04:40:42 +02:00
|
|
|
"unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
]
|
|
|
|
|
2018-01-18 15:40:37 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-ap-rustc_data_structures"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "306.0.0"
|
2018-01-18 15:40:37 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"ena 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-25 04:40:42 +02:00
|
|
|
"parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"rustc-ap-graphviz 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-rustc_cratesio_shim 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-serialize 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
"rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-rayon 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-rayon-core 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
"stable_deref_trait 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-01-18 15:40:37 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-ap-rustc_errors"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "306.0.0"
|
2018-01-18 15:40:37 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-27 15:10:52 +02:00
|
|
|
"atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"rustc-ap-rustc_cratesio_shim 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-rustc_data_structures 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-serialize 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-syntax_pos 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
"unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-05-01 21:50:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-ap-rustc_target"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "306.0.0"
|
2018-05-01 21:50:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"rustc-ap-rustc_cratesio_shim 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-rustc_data_structures 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-serialize 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-01 21:50:58 +02:00
|
|
|
]
|
|
|
|
|
2018-07-31 23:16:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-ap-serialize"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "306.0.0"
|
2018-06-07 05:14:49 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-08-31 21:52:25 +02:00
|
|
|
dependencies = [
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-31 21:52:25 +02:00
|
|
|
]
|
2018-06-07 05:14:49 +02:00
|
|
|
|
2018-07-31 23:16:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-ap-syntax"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "306.0.0"
|
2018-07-31 23:16:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"rustc-ap-rustc_data_structures 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-rustc_errors 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-rustc_target 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-serialize 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-syntax_pos 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
"scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
]
|
|
|
|
|
2018-06-07 05:14:49 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-ap-syntax_pos"
|
2018-12-10 08:58:08 +01:00
|
|
|
version = "306.0.0"
|
2018-07-31 23:16:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"rustc-ap-arena 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-rustc_data_structures 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-serialize 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
"scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-05-09 00:01:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-demangle"
|
2018-12-14 23:37:51 +01:00
|
|
|
version = "0.1.10"
|
2017-05-09 00:01:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-12-14 23:37:51 +01:00
|
|
|
dependencies = [
|
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-std-workspace-core 1.0.0",
|
|
|
|
]
|
2017-05-09 00:01:13 +02:00
|
|
|
|
2018-05-24 14:48:02 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-hash"
|
2018-05-24 05:37:40 +02:00
|
|
|
version = "1.0.1"
|
2018-05-24 14:48:02 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-05-24 05:37:40 +02:00
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-24 05:37:40 +02:00
|
|
|
]
|
2018-05-24 14:48:02 +02:00
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-main"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-12-19 17:27:23 +01:00
|
|
|
"jemalloc-sys 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-19 18:28:44 +01:00
|
|
|
"rustc_codegen_ssa 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_driver 0.0.0",
|
2017-12-08 20:18:21 +01:00
|
|
|
"rustc_target 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2018-05-12 04:11:03 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-rayon"
|
2018-06-06 15:25:47 +02:00
|
|
|
version = "0.1.1"
|
2018-05-12 04:11:03 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-06-06 15:25:47 +02:00
|
|
|
"rustc-rayon-core 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-12 04:11:03 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc-rayon-core"
|
2018-06-06 15:25:47 +02:00
|
|
|
version = "0.1.1"
|
2018-05-12 04:11:03 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-12 04:11:03 +02:00
|
|
|
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-12 04:11:03 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-serialize"
|
2017-04-30 01:11:58 +02:00
|
|
|
version = "0.3.24"
|
2016-09-02 10:55:29 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-std-workspace-core"
|
|
|
|
version = "1.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"core 0.0.0",
|
|
|
|
]
|
|
|
|
|
2018-07-31 23:16:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-workspace-hack"
|
|
|
|
version = "1.0.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-04 12:51:58 +02:00
|
|
|
"rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
]
|
|
|
|
|
2017-06-03 23:54:08 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_allocator"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-03 23:54:08 +02:00
|
|
|
"rustc 0.0.0",
|
2018-08-05 12:04:56 +02:00
|
|
|
"rustc_data_structures 0.0.0",
|
2017-06-03 23:54:08 +02:00
|
|
|
"rustc_errors 0.0.0",
|
2018-04-25 18:30:39 +02:00
|
|
|
"rustc_target 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-03 23:54:08 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
2017-07-08 19:46:43 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_apfloat"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-09-08 21:08:01 +02:00
|
|
|
"rustc_cratesio_shim 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-07-08 19:46:43 +02:00
|
|
|
]
|
|
|
|
|
2016-12-30 05:28:11 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_asan"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2017-06-03 23:54:08 +02:00
|
|
|
"alloc 0.0.0",
|
2017-02-05 02:10:29 +01:00
|
|
|
"build_helper 0.1.0",
|
2018-08-21 19:23:47 +02:00
|
|
|
"cmake 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-12-30 05:28:11 +01:00
|
|
|
"core 0.0.0",
|
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_borrowck"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"graphviz 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
2018-02-27 17:11:14 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_errors 0.0.0",
|
|
|
|
"rustc_mir 0.0.0",
|
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
2018-05-08 15:10:16 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_codegen_llvm"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-31 15:18:08 +02:00
|
|
|
"memmap 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-08 15:10:16 +02:00
|
|
|
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-14 23:37:51 +01:00
|
|
|
"rustc-demangle 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-08 15:10:16 +02:00
|
|
|
"rustc_llvm 0.0.0",
|
|
|
|
]
|
|
|
|
|
2018-10-01 18:07:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_codegen_ssa"
|
|
|
|
version = "0.0.0"
|
2018-10-23 17:01:35 +02:00
|
|
|
dependencies = [
|
2018-11-18 18:06:31 +01:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-23 17:01:35 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"jobserver 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-23 17:01:35 +02:00
|
|
|
"memmap 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-18 18:06:31 +01:00
|
|
|
"rustc 0.0.0",
|
2018-12-14 23:37:51 +01:00
|
|
|
"rustc-demangle 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-18 18:06:31 +01:00
|
|
|
"rustc_allocator 0.0.0",
|
|
|
|
"rustc_apfloat 0.0.0",
|
|
|
|
"rustc_codegen_utils 0.0.0",
|
|
|
|
"rustc_data_structures 0.0.0",
|
|
|
|
"rustc_errors 0.0.0",
|
|
|
|
"rustc_fs_util 0.0.0",
|
|
|
|
"rustc_incremental 0.0.0",
|
|
|
|
"rustc_mir 0.0.0",
|
|
|
|
"rustc_target 0.0.0",
|
|
|
|
"serialize 0.0.0",
|
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
2018-10-23 17:01:35 +02:00
|
|
|
]
|
2018-10-01 18:07:04 +02:00
|
|
|
|
2018-05-08 15:10:16 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_codegen_utils"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-08 15:10:16 +02:00
|
|
|
"rustc 0.0.0",
|
|
|
|
"rustc_data_structures 0.0.0",
|
|
|
|
"rustc_incremental 0.0.0",
|
2018-10-25 15:11:59 +02:00
|
|
|
"rustc_metadata 0.0.0",
|
2018-05-08 15:10:16 +02:00
|
|
|
"rustc_mir 0.0.0",
|
|
|
|
"rustc_target 0.0.0",
|
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
2017-09-08 21:08:01 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_cratesio_shim"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-05 00:24:39 +02:00
|
|
|
"unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-09-08 21:08:01 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_data_structures"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-02 09:46:59 +01:00
|
|
|
"ena 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-13 16:43:12 +02:00
|
|
|
"graphviz 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-05 00:24:39 +02:00
|
|
|
"parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-24 05:37:40 +02:00
|
|
|
"rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-06-06 15:25:47 +02:00
|
|
|
"rustc-rayon 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-rayon-core 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-25 18:30:39 +02:00
|
|
|
"rustc_cratesio_shim 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"serialize 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"stable_deref_trait 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_driver"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"arena 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"env_logger 0.5.13 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"graphviz 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
2018-06-06 15:25:47 +02:00
|
|
|
"rustc-rayon 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-03 23:54:08 +02:00
|
|
|
"rustc_allocator 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_borrowck 0.0.0",
|
2018-05-08 15:10:16 +02:00
|
|
|
"rustc_codegen_utils 0.0.0",
|
2016-10-29 03:26:01 +02:00
|
|
|
"rustc_data_structures 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_errors 0.0.0",
|
|
|
|
"rustc_incremental 0.0.0",
|
|
|
|
"rustc_lint 0.0.0",
|
|
|
|
"rustc_metadata 0.0.0",
|
|
|
|
"rustc_mir 0.0.0",
|
|
|
|
"rustc_passes 0.0.0",
|
|
|
|
"rustc_plugin 0.0.0",
|
|
|
|
"rustc_privacy 0.0.0",
|
|
|
|
"rustc_resolve 0.0.0",
|
|
|
|
"rustc_save_analysis 0.0.0",
|
2017-12-08 20:18:21 +01:00
|
|
|
"rustc_target 0.0.0",
|
2018-02-25 16:58:54 +01:00
|
|
|
"rustc_traits 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_typeck 0.0.0",
|
2018-07-02 18:33:16 +02:00
|
|
|
"scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"serialize 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_ext 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_errors"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-07-27 15:10:52 +02:00
|
|
|
"atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-05 00:24:39 +02:00
|
|
|
"rustc_cratesio_shim 0.0.0",
|
2017-12-06 09:25:29 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2017-01-29 00:13:21 +01:00
|
|
|
"serialize 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax_pos 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-06-22 17:48:43 +02:00
|
|
|
"unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2018-08-03 23:31:03 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_fs_util"
|
|
|
|
version = "0.0.0"
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_incremental"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"graphviz 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-15 10:40:25 +02:00
|
|
|
"rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
|
|
|
"rustc_data_structures 0.0.0",
|
2018-08-03 23:31:03 +02:00
|
|
|
"rustc_fs_util 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"serialize 0.0.0",
|
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_lint"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
2018-11-01 19:03:38 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2018-04-25 18:30:39 +02:00
|
|
|
"rustc_target 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_llvm"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"build_helper 0.1.0",
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2016-12-30 05:28:11 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_lsan"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2017-06-03 23:54:08 +02:00
|
|
|
"alloc 0.0.0",
|
2017-02-05 02:10:29 +01:00
|
|
|
"build_helper 0.1.0",
|
2018-08-21 19:23:47 +02:00
|
|
|
"cmake 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-12-30 05:28:11 +01:00
|
|
|
"core 0.0.0",
|
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_metadata"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-31 22:59:32 +01:00
|
|
|
"memmap 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
|
|
|
"rustc_data_structures 0.0.0",
|
|
|
|
"rustc_errors 0.0.0",
|
2017-12-08 20:18:21 +01:00
|
|
|
"rustc_target 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"serialize 0.0.0",
|
2018-10-31 22:59:32 +01:00
|
|
|
"stable_deref_trait 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
2016-10-07 08:30:38 +02:00
|
|
|
"syntax_ext 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_mir"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-03-05 10:21:11 +01:00
|
|
|
"arena 0.0.0",
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-29 13:54:15 +02:00
|
|
|
"either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"graphviz 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"log_settings 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-30 17:17:37 +02:00
|
|
|
"polonius-engine 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
2017-12-12 17:14:49 +01:00
|
|
|
"rustc_apfloat 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_data_structures 0.0.0",
|
2017-07-03 17:25:03 +02:00
|
|
|
"rustc_errors 0.0.0",
|
2017-12-08 20:18:21 +01:00
|
|
|
"rustc_target 0.0.0",
|
2017-12-06 09:25:29 +01:00
|
|
|
"serialize 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
2016-12-30 05:28:11 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_msan"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2017-06-03 23:54:08 +02:00
|
|
|
"alloc 0.0.0",
|
2017-02-05 02:10:29 +01:00
|
|
|
"build_helper 0.1.0",
|
2018-08-21 19:23:47 +02:00
|
|
|
"cmake 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-12-30 05:28:11 +01:00
|
|
|
"core 0.0.0",
|
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_passes"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
2018-02-27 17:11:14 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_errors 0.0.0",
|
2018-03-05 10:21:11 +01:00
|
|
|
"rustc_mir 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_platform_intrinsics"
|
|
|
|
version = "0.0.0"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_plugin"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"rustc 0.0.0",
|
|
|
|
"rustc_errors 0.0.0",
|
|
|
|
"rustc_metadata 0.0.0",
|
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_privacy"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"rustc 0.0.0",
|
2018-02-27 17:11:14 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2017-09-16 15:45:49 +02:00
|
|
|
"rustc_typeck 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_resolve"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"arena 0.0.0",
|
2018-10-04 12:41:58 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
2017-12-06 09:25:29 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_errors 0.0.0",
|
2018-07-31 23:23:31 +02:00
|
|
|
"rustc_metadata 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc_save_analysis"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-25 04:40:42 +02:00
|
|
|
"rls-data 0.18.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-08 21:15:48 +02:00
|
|
|
"rls-span 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
2017-04-30 01:11:58 +02:00
|
|
|
"rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-22 23:19:39 +02:00
|
|
|
"rustc_codegen_utils 0.0.0",
|
2017-08-01 04:43:11 +02:00
|
|
|
"rustc_data_structures 0.0.0",
|
2018-04-25 18:30:39 +02:00
|
|
|
"rustc_target 0.0.0",
|
2017-05-03 18:18:04 +02:00
|
|
|
"rustc_typeck 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
2017-12-08 20:18:21 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_target"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-25 18:30:39 +02:00
|
|
|
"rustc_cratesio_shim 0.0.0",
|
2018-11-01 16:01:24 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2017-12-08 20:18:21 +01:00
|
|
|
"serialize 0.0.0",
|
|
|
|
]
|
|
|
|
|
2018-09-07 09:12:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_tools_util"
|
|
|
|
version = "0.1.0"
|
|
|
|
|
2018-02-25 16:58:54 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_traits"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-28 22:11:00 +01:00
|
|
|
"chalk-engine 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-25 16:58:54 +01:00
|
|
|
"graphviz 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-25 16:58:54 +01:00
|
|
|
"rustc 0.0.0",
|
|
|
|
"rustc_data_structures 0.0.0",
|
2018-10-31 22:07:54 +01:00
|
|
|
"rustc_target 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-25 16:58:54 +01:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
2016-12-30 05:28:11 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_tsan"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2017-06-24 10:48:27 +02:00
|
|
|
"alloc 0.0.0",
|
2017-02-05 02:10:29 +01:00
|
|
|
"build_helper 0.1.0",
|
2018-08-21 19:23:47 +02:00
|
|
|
"cmake 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-12-30 05:28:11 +01:00
|
|
|
"core 0.0.0",
|
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_typeck"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"arena 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc 0.0.0",
|
2016-11-18 11:31:44 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_errors 0.0.0",
|
|
|
|
"rustc_platform_intrinsics 0.0.0",
|
2018-04-25 18:30:39 +02:00
|
|
|
"rustc_target 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
2018-05-11 14:11:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustc_version"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.2.3"
|
2018-05-11 14:11:06 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustdoc"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-10-06 18:51:56 +02:00
|
|
|
"minifier 0.0.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-02 04:20:39 +02:00
|
|
|
"parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-18 22:33:56 +01:00
|
|
|
"pulldown-cmark 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-07-23 04:01:58 +02:00
|
|
|
]
|
|
|
|
|
2018-02-05 23:43:53 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustdoc-themes"
|
|
|
|
version = "0.1.0"
|
|
|
|
|
2017-07-23 04:01:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustdoc-tool"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"rustdoc 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2018-05-02 17:43:15 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rustfix"
|
2018-12-17 19:23:04 +01:00
|
|
|
version = "0.4.4"
|
2018-07-17 18:04:22 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-10 10:57:43 +01:00
|
|
|
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-05-02 17:43:15 +02:00
|
|
|
]
|
|
|
|
|
2017-12-15 20:41:58 +01:00
|
|
|
[[package]]
|
|
|
|
name = "rustfmt-nightly"
|
2018-12-10 09:05:37 +01:00
|
|
|
version = "1.0.1"
|
2017-12-15 20:41:58 +01:00
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"assert_cli 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-01 11:36:32 +01:00
|
|
|
"bytecount 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-14 14:49:40 +01:00
|
|
|
"cargo_metadata 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 15:11:47 +01:00
|
|
|
"derive-new 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-15 20:41:58 +01:00
|
|
|
"diff 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"env_logger 0.5.13 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 10:57:43 +01:00
|
|
|
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"rustc-ap-rustc_target 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-syntax 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-ap-syntax_pos 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rustc-workspace-hack 1.0.0",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"term 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-09-28 20:27:30 +02:00
|
|
|
[[package]]
|
|
|
|
name = "rusty-fork"
|
|
|
|
version = "0.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-28 20:27:30 +02:00
|
|
|
"wait-timeout 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-08-21 19:23:47 +02:00
|
|
|
[[package]]
|
|
|
|
name = "ryu"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.2.7"
|
2018-08-21 19:23:47 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-01-08 22:56:22 +01:00
|
|
|
[[package]]
|
|
|
|
name = "same-file"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.0.4"
|
2018-01-08 22:56:22 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "schannel"
|
2018-10-08 19:39:09 +02:00
|
|
|
version = "0.1.14"
|
2018-01-08 22:56:22 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
]
|
|
|
|
|
2017-06-05 18:36:48 +02:00
|
|
|
[[package]]
|
|
|
|
name = "scoped-tls"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.1.2"
|
2017-06-05 18:36:48 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-12-06 09:25:29 +01:00
|
|
|
[[package]]
|
|
|
|
name = "scopeguard"
|
|
|
|
version = "0.3.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-01-08 22:56:22 +01:00
|
|
|
[[package]]
|
|
|
|
name = "semver"
|
|
|
|
version = "0.9.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "semver-parser"
|
|
|
|
version = "0.7.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde"
|
2018-12-17 19:23:04 +01:00
|
|
|
version = "1.0.82"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-12-17 19:23:04 +01:00
|
|
|
dependencies = [
|
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
2017-04-30 01:11:58 +02:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_derive"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.0.81"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-11-19 05:21:10 +01:00
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_ignored"
|
2017-09-02 05:46:51 +02:00
|
|
|
version = "0.0.4"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
2017-02-20 01:20:57 +01:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_json"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.0.33"
|
2017-02-20 01:20:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-09-28 20:27:30 +02:00
|
|
|
"itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-02-20 01:20:57 +01:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "serialize"
|
|
|
|
version = "0.0.0"
|
2018-08-13 21:15:16 +02:00
|
|
|
dependencies = [
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-13 21:15:16 +02:00
|
|
|
]
|
2016-09-02 10:55:29 +02:00
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "shell-escape"
|
2018-04-02 17:43:55 +02:00
|
|
|
version = "0.1.4"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-01-25 18:32:25 +01:00
|
|
|
[[package]]
|
|
|
|
name = "shlex"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "siphasher"
|
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-12-03 13:49:01 +01:00
|
|
|
[[package]]
|
|
|
|
name = "smallvec"
|
2018-11-28 22:52:22 +01:00
|
|
|
version = "0.6.7"
|
2017-12-03 13:49:01 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2018-07-26 02:25:12 +02:00
|
|
|
dependencies = [
|
|
|
|
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
2017-12-03 13:49:01 +01:00
|
|
|
|
2017-06-26 18:26:15 +02:00
|
|
|
[[package]]
|
|
|
|
name = "socket2"
|
2018-10-08 19:39:09 +02:00
|
|
|
version = "0.3.8"
|
2017-06-26 18:26:15 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-26 18:26:15 +02:00
|
|
|
]
|
|
|
|
|
2017-04-26 23:22:45 +02:00
|
|
|
[[package]]
|
|
|
|
name = "stable_deref_trait"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "1.1.0"
|
2017-04-26 23:22:45 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "std"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"alloc 0.0.0",
|
2018-12-15 01:47:18 +01:00
|
|
|
"backtrace-sys 0.1.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-17 18:52:02 +02:00
|
|
|
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"core 0.0.0",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"dlmalloc 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-19 12:56:17 +01:00
|
|
|
"fortanix-sgx-abi 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"panic_abort 0.0.0",
|
|
|
|
"panic_unwind 0.0.0",
|
2017-02-13 10:57:50 +01:00
|
|
|
"profiler_builtins 0.0.0",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-14 23:37:51 +01:00
|
|
|
"rustc-demangle 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-12-30 05:28:11 +01:00
|
|
|
"rustc_asan 0.0.0",
|
|
|
|
"rustc_lsan 0.0.0",
|
|
|
|
"rustc_msan 0.0.0",
|
|
|
|
"rustc_tsan 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"unwind 0.0.0",
|
|
|
|
]
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "string_cache"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.7.3"
|
2018-04-03 16:32:04 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"phf_shared 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
"precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"string_cache_codegen 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
"string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "string_cache_codegen"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.4.1"
|
2018-04-03 16:32:04 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"phf_generator 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"phf_shared 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"proc-macro2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"quote 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
"string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "string_cache_shared"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "strsim"
|
2018-03-16 11:37:14 +01:00
|
|
|
version = "0.7.0"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-04-21 23:06:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "strum"
|
2018-12-08 15:11:47 +01:00
|
|
|
version = "0.11.0"
|
2018-04-21 23:06:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "strum_macros"
|
2018-12-08 15:11:47 +01:00
|
|
|
version = "0.11.0"
|
2018-04-21 23:06:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 15:11:47 +01:00
|
|
|
"heck 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-11-19 05:21:10 +01:00
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-21 23:06:13 +02:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "syn"
|
|
|
|
version = "0.11.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2018-11-19 05:21:10 +01:00
|
|
|
[[package]]
|
|
|
|
name = "syn"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.15.22"
|
2018-11-19 05:21:10 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-02 17:43:55 +02:00
|
|
|
"unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "synom"
|
|
|
|
version = "0.11.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-12-10 18:42:49 +01:00
|
|
|
[[package]]
|
|
|
|
name = "synstructure"
|
2018-12-08 15:11:47 +01:00
|
|
|
version = "0.10.1"
|
2017-12-10 18:42:49 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-11-19 05:21:10 +01:00
|
|
|
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-31 23:16:55 +02:00
|
|
|
"unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-10 18:42:49 +01:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "syntax"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-11-03 05:33:35 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_errors 0.0.0",
|
2018-04-25 18:30:39 +02:00
|
|
|
"rustc_target 0.0.0",
|
2018-07-02 18:33:16 +02:00
|
|
|
"scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"serialize 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "syntax_ext"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"fmt_macros 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-27 17:11:14 +01:00
|
|
|
"rustc_data_structures 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"rustc_errors 0.0.0",
|
2018-04-25 18:30:39 +02:00
|
|
|
"rustc_target 0.0.0",
|
2018-11-28 22:52:22 +01:00
|
|
|
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"syntax 0.0.0",
|
|
|
|
"syntax_pos 0.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "syntax_pos"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-05-10 16:27:46 +02:00
|
|
|
"arena 0.0.0",
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-10 16:09:51 +02:00
|
|
|
"rustc_data_structures 0.0.0",
|
2018-07-02 18:33:16 +02:00
|
|
|
"scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
"serialize 0.0.0",
|
2018-06-22 17:48:43 +02:00
|
|
|
"unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2017-05-09 00:01:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "tar"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.4.20"
|
2017-05-09 00:01:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-17 18:04:22 +02:00
|
|
|
"xattr 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-09 00:01:13 +02:00
|
|
|
]
|
|
|
|
|
2018-03-29 09:34:55 +02:00
|
|
|
[[package]]
|
|
|
|
name = "tempfile"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "3.0.5"
|
2018-03-29 09:34:55 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-18 17:43:59 +02:00
|
|
|
"remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-03-29 09:34:55 +02:00
|
|
|
]
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "tendril"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-02 18:33:16 +02:00
|
|
|
"futf 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-04-03 16:32:04 +02:00
|
|
|
"mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"utf-8 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "term"
|
|
|
|
version = "0.0.0"
|
|
|
|
|
2018-03-19 15:14:13 +01:00
|
|
|
[[package]]
|
|
|
|
name = "term"
|
|
|
|
version = "0.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-03-19 15:14:13 +01:00
|
|
|
]
|
|
|
|
|
2018-07-26 02:25:12 +02:00
|
|
|
[[package]]
|
|
|
|
name = "termcolor"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.0.4"
|
2018-07-26 02:25:12 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"wincolor 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-26 02:25:12 +02:00
|
|
|
]
|
|
|
|
|
2017-06-15 04:33:06 +02:00
|
|
|
[[package]]
|
2017-12-06 09:25:29 +01:00
|
|
|
name = "termion"
|
|
|
|
version = "1.5.1"
|
2017-06-15 04:33:06 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
"redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-15 04:33:06 +02:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "test"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
2018-04-02 17:43:55 +02:00
|
|
|
"getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-03-20 19:43:33 +01:00
|
|
|
"proc_macro 0.0.0",
|
2016-09-02 10:55:29 +02:00
|
|
|
"term 0.0.0",
|
|
|
|
]
|
|
|
|
|
2017-06-27 19:33:32 +02:00
|
|
|
[[package]]
|
|
|
|
name = "textwrap"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.10.0"
|
2017-06-27 19:33:32 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-06-22 17:48:43 +02:00
|
|
|
"unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-27 19:33:32 +02:00
|
|
|
]
|
|
|
|
|
2017-02-15 23:55:26 +01:00
|
|
|
[[package]]
|
|
|
|
name = "thread_local"
|
2018-08-21 19:23:47 +02:00
|
|
|
version = "0.3.6"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-02-08 00:13:57 +01:00
|
|
|
]
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "tidy"
|
|
|
|
version = "0.1.0"
|
2018-02-23 02:52:56 +01:00
|
|
|
dependencies = [
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-02-23 02:52:56 +01:00
|
|
|
]
|
2016-09-02 10:55:29 +02:00
|
|
|
|
2018-01-25 05:01:42 +01:00
|
|
|
[[package]]
|
|
|
|
name = "time"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.1.40"
|
2018-01-25 05:01:42 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-25 05:01:42 +01:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "toml"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.4.10"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-01-25 18:32:25 +01:00
|
|
|
[[package]]
|
|
|
|
name = "toml-query"
|
|
|
|
version = "0.6.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"is-match 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 08:58:08 +01:00
|
|
|
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-02 18:33:16 +02:00
|
|
|
"regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-25 18:32:25 +01:00
|
|
|
]
|
|
|
|
|
2018-12-03 02:33:20 +01:00
|
|
|
[[package]]
|
|
|
|
name = "typenum"
|
|
|
|
version = "1.10.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-02-26 18:07:16 +01:00
|
|
|
[[package]]
|
|
|
|
name = "ucd-util"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "0.1.3"
|
2018-02-26 18:07:16 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "unicode-bidi"
|
2017-06-27 19:33:32 +02:00
|
|
|
version = "0.3.4"
|
2017-02-20 01:20:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-08-21 19:23:47 +02:00
|
|
|
"matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2016-09-02 10:55:29 +02:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "unicode-normalization"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.1.7"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unicode-segmentation"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "1.2.1"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unicode-width"
|
2018-06-22 17:48:43 +02:00
|
|
|
version = "0.1.5"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "unicode-xid"
|
|
|
|
version = "0.0.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-03-01 20:08:48 +01:00
|
|
|
[[package]]
|
|
|
|
name = "unicode-xid"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-02-20 01:20:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "unreachable"
|
2017-06-26 15:43:09 +02:00
|
|
|
version = "1.0.0"
|
2017-02-20 01:20:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-06-12 21:35:47 +02:00
|
|
|
[[package]]
|
|
|
|
name = "unstable-book-gen"
|
|
|
|
version = "0.1.0"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-06-12 21:35:47 +02:00
|
|
|
"tidy 0.1.0",
|
|
|
|
]
|
|
|
|
|
2017-09-25 06:13:29 +02:00
|
|
|
[[package]]
|
|
|
|
name = "unwind"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-09-25 06:13:29 +02:00
|
|
|
"core 0.0.0",
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-09-25 06:13:29 +02:00
|
|
|
]
|
|
|
|
|
2017-04-30 01:11:58 +02:00
|
|
|
[[package]]
|
|
|
|
name = "url"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.7.2"
|
2017-04-30 01:11:58 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-17 18:04:22 +02:00
|
|
|
"idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-12-06 09:25:29 +01:00
|
|
|
"percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "url_serde"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-17 19:23:04 +01:00
|
|
|
"serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-04-30 01:11:58 +02:00
|
|
|
]
|
|
|
|
|
2018-04-03 16:32:04 +02:00
|
|
|
[[package]]
|
|
|
|
name = "utf-8"
|
|
|
|
version = "0.7.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "utf8-ranges"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "1.0.2"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-06-15 04:33:06 +02:00
|
|
|
[[package]]
|
|
|
|
name = "vcpkg"
|
2018-08-21 19:23:47 +02:00
|
|
|
version = "0.2.6"
|
2017-06-15 04:33:06 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "vec_map"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.8.1"
|
2017-02-08 00:13:57 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-09-17 09:20:03 +02:00
|
|
|
[[package]]
|
|
|
|
name = "vergen"
|
2018-12-07 10:12:01 +01:00
|
|
|
version = "3.0.4"
|
2018-09-17 09:20:03 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-08 12:06:54 +01:00
|
|
|
"chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-12-10 10:57:43 +01:00
|
|
|
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-17 09:20:03 +02:00
|
|
|
]
|
|
|
|
|
2018-12-08 12:06:54 +01:00
|
|
|
[[package]]
|
|
|
|
name = "version_check"
|
|
|
|
version = "0.1.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2017-02-20 01:20:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "void"
|
|
|
|
version = "1.0.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-09-28 20:27:30 +02:00
|
|
|
[[package]]
|
|
|
|
name = "wait-timeout"
|
|
|
|
version = "0.1.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-09-28 20:27:30 +02:00
|
|
|
]
|
|
|
|
|
2018-01-08 22:56:22 +01:00
|
|
|
[[package]]
|
|
|
|
name = "walkdir"
|
2018-12-08 12:06:54 +01:00
|
|
|
version = "2.2.7"
|
2018-01-08 22:56:22 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-01-08 22:56:22 +01:00
|
|
|
]
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "winapi"
|
|
|
|
version = "0.2.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-01-08 22:56:22 +01:00
|
|
|
[[package]]
|
|
|
|
name = "winapi"
|
2018-10-08 19:39:09 +02:00
|
|
|
version = "0.3.6"
|
2018-01-08 22:56:22 +01:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
|
|
|
"winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
"winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
|
|
]
|
|
|
|
|
2017-02-08 00:13:57 +01:00
|
|
|
[[package]]
|
|
|
|
name = "winapi-build"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-01-08 22:56:22 +01:00
|
|
|
[[package]]
|
|
|
|
name = "winapi-i686-pc-windows-gnu"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-08-21 19:23:47 +02:00
|
|
|
[[package]]
|
|
|
|
name = "winapi-util"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
]
|
|
|
|
|
2018-01-08 22:56:22 +01:00
|
|
|
[[package]]
|
|
|
|
name = "winapi-x86_64-pc-windows-gnu"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2018-07-26 02:25:12 +02:00
|
|
|
[[package]]
|
|
|
|
name = "wincolor"
|
2018-08-21 19:23:47 +02:00
|
|
|
version = "1.0.1"
|
2018-07-26 02:25:12 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-10-08 19:39:09 +02:00
|
|
|
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-08-21 19:23:47 +02:00
|
|
|
"winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
2018-07-26 02:25:12 +02:00
|
|
|
]
|
|
|
|
|
2017-05-09 00:01:13 +02:00
|
|
|
[[package]]
|
|
|
|
name = "xattr"
|
2018-07-17 18:04:22 +02:00
|
|
|
version = "0.2.2"
|
2017-05-09 00:01:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-12-08 12:06:54 +01:00
|
|
|
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-09 00:01:13 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "xz2"
|
2018-07-02 18:33:16 +02:00
|
|
|
version = "0.1.5"
|
2017-05-09 00:01:13 +02:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
dependencies = [
|
2018-07-06 22:52:40 +02:00
|
|
|
"lzma-sys 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
|
2017-05-09 00:01:13 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "yaml-rust"
|
|
|
|
version = "0.3.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
|
2016-09-02 10:55:29 +02:00
|
|
|
[metadata]
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c"
|
|
|
|
"checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e"
|
2018-04-03 16:32:04 +02:00
|
|
|
"checksum ammonia 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fd4c682378117e4186a492b2252b9537990e1617f44aed9788b9a1149de45477"
|
2018-03-16 11:37:14 +01:00
|
|
|
"checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
|
2018-02-26 04:15:45 +01:00
|
|
|
"checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum assert_cli 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "98589b0e465a6c510d95fceebd365bb79bedece7f6e18a480897f2015f85ec51"
|
2018-07-27 15:10:52 +02:00
|
|
|
"checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"
|
2018-12-11 22:36:24 +01:00
|
|
|
"checksum backtrace 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)" = "18b65ea1161bfb2dd6da6fade5edd4dbd08fba85012123dd333d2fd1b90b2782"
|
2018-12-15 01:47:18 +01:00
|
|
|
"checksum backtrace-sys 0.1.27 (registry+https://github.com/rust-lang/crates.io-index)" = "6ea90dd7b012b3d1a2cb6bec16670a0db2c95d4e931e84f4047e0460c1b34c8d"
|
2018-09-28 20:27:30 +02:00
|
|
|
"checksum bit-set 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6f1efcc46c18245a69c38fcc5cc650f16d3a59d034f3106e9ed63748f695730a"
|
|
|
|
"checksum bit-vec 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4440d5cb623bb7390ae27fec0bb6c61111969860f8e3ae198bfa0663645e67cf"
|
2017-06-07 21:42:17 +02:00
|
|
|
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum bufstream 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "40e38929add23cdf8a366df9b0e088953150724bcbe5fc330b0d8eb3b328eec8"
|
|
|
|
"checksum build_const 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39"
|
2018-12-01 11:36:32 +01:00
|
|
|
"checksum bytecount 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b92204551573580e078dc80017f36a213eb77a0450e4ddd8cfa0f3f2d1f0178f"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d"
|
2018-09-20 23:37:53 +02:00
|
|
|
"checksum bytesize 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "716960a18f978640f25101b5cbf1c6f6b0d3192fab36a2d98ca96f0ecbe41010"
|
2018-11-14 14:49:40 +01:00
|
|
|
"checksum cargo_metadata 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7d8dfe3adeb30f7938e6c1dd5327f29235d8ada3e898aeb08c343005ec2915a2"
|
2018-09-17 18:52:02 +02:00
|
|
|
"checksum cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"
|
2018-11-28 22:11:00 +01:00
|
|
|
"checksum chalk-engine 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "17ec698a6f053a23bfbe646d9f2fde4b02abc19125595270a99e6f44ae0bdd1a"
|
2018-05-24 14:48:02 +02:00
|
|
|
"checksum chalk-macros 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "295635afd6853aa9f20baeb7f0204862440c0fe994c5a253d5f479dac41d047e"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"
|
2018-07-26 23:58:55 +02:00
|
|
|
"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum cmake 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "704fbf3bb5149daab0afb255dbea24a1f08d2f4099cedb9baab6d470d4c5eefb"
|
2018-04-26 00:11:28 +02:00
|
|
|
"checksum colored 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b0aa3473e85a3161b59845d6096b289bb577874cafeaf75ea1b1beaa6572c7fc"
|
2017-12-06 09:25:29 +01:00
|
|
|
"checksum commoncrypto 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d056a8586ba25a1e4d61cb090900e495952c7886786fc55f909ab2f819b69007"
|
|
|
|
"checksum commoncrypto-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1fed34f46747aa73dfaa578069fd8279d2818ade2b55f38f22a9401c7f4083e2"
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"checksum compiler_builtins 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8ad611263b9f31bdb66e66227d3b781600fd1e68d5deee29b23f5e2ac9cb4892"
|
2018-11-14 10:56:09 +01:00
|
|
|
"checksum compiletest_rs 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)" = "89747fe073b7838343bd2c2445e7a7c2e0d415598f8925f0fa9205b9cdfc48cb"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum core-foundation 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "4e2640d6d0bf22e82bed1b73c6aef8d5dd31e5abe6666c57e6d45e2649f4f887"
|
|
|
|
"checksum core-foundation-sys 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b"
|
|
|
|
"checksum crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb"
|
|
|
|
"checksum crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e91d5240c6975ef33aeb5f148f35275c25eda8e8a5f95abe421978b05b8bf192"
|
2018-09-25 04:40:42 +02:00
|
|
|
"checksum crossbeam-channel 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7b85741761b7f160bc5e7e0c14986ef685b7f8bf9b7ad081c60c604bb4649827"
|
2018-02-26 04:15:45 +01:00
|
|
|
"checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3"
|
2018-04-02 17:43:55 +02:00
|
|
|
"checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150"
|
2018-09-25 04:40:42 +02:00
|
|
|
"checksum crossbeam-epoch 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9c90f1474584f38e270b5b613e898c8c328aa4f3dea85e0a27ac2e642f009416"
|
2018-02-26 04:15:45 +01:00
|
|
|
"checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9"
|
2018-07-31 23:16:55 +02:00
|
|
|
"checksum crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "677d453a17e8bd2b913fa38e8b9cf04bcdbb5be790aa294f2389661d72036015"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e07fc155212827475223f0bcfae57e945e694fc90950ddf3f6695bbfd5555c72"
|
2018-02-26 18:07:16 +01:00
|
|
|
"checksum crypto-hash 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "09de9ee0fc255ace04c7fa0763c9395a945c37c8292bb554f8d48361d1dcf1b4"
|
2018-11-09 21:55:25 +01:00
|
|
|
"checksum curl 0.4.19 (registry+https://github.com/rust-lang/crates.io-index)" = "c7c9d851c825e0c033979d4516c9173bc19a78a96eb4d6ae51d4045440eafa16"
|
|
|
|
"checksum curl-sys 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)" = "721c204978be2143fab0a84b708c49d79d1f6100b8785610f456043a90708870"
|
2018-05-29 13:52:51 +02:00
|
|
|
"checksum datafrog 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "16d724bf4ffe77cdceeecd461009b5f8d9e23c5d645d68bedb4586bf43e7e142"
|
2018-12-08 15:11:47 +01:00
|
|
|
"checksum derive-new 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "6ca414e896ae072546f4d789f452daaecf60ddee4c9df5dc6d5936d769e3d87c"
|
2018-11-19 05:21:10 +01:00
|
|
|
"checksum derive_more 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3f57d78cf3bd45270dad4e70c21ec77a960b36c7a841ff9db76aaa775a8fb871"
|
2017-12-06 09:25:29 +01:00
|
|
|
"checksum diff 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3c2b69f912779fbb121ceb775d74d51e915af17aaebc38d28a592843a2dd0a3a"
|
Add tests to rustbuild
In order to run tests, previous commits have cfg'd out various parts of
rustbuild. Generally speaking, these are filesystem-related operations
and process-spawning related parts. Then, rustbuild is run "as normal"
and the various steps that where run are retrieved from the cache and
checked against the expected results.
Note that this means that the current implementation primarily tests
"what" we build, but doesn't actually test that what we build *will*
build. In other words, it doesn't do any form of dependency verification
for any crate. This is possible to implement, but is considered future
work.
This implementation strives to cfg out as little code as possible; it
also does not currently test anywhere near all of rustbuild. The current
tests are also not checked for "correctness," rather, they simply
represent what we do as of this commit, which may be wrong.
Test cases are drawn from the old implementation of rustbuild, though
the expected results may vary.
2018-03-10 15:03:06 +01:00
|
|
|
"checksum difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198"
|
2018-11-28 21:22:45 +01:00
|
|
|
"checksum directories 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72d337a64190607d4fcca2cb78982c5dd57f4916e19696b48a575fa746b6cb0f"
|
std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.
I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!
The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.
Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:
* The standard library (or some transitive dep) decides to depend on a
crate `foo`.
* The standard library adds
```toml
[dependencies]
foo = { version = "0.1", features = ['rustc-dep-of-std'] }
```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
crates and any other necessary infrastructure in the crate.
A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.
As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.
This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!
[commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-20 06:52:50 +01:00
|
|
|
"checksum dlmalloc 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4c46c65de42b063004b31c67a98abe071089b289ff0919c660ed7ff4f59317f8"
|
2018-04-02 17:43:55 +02:00
|
|
|
"checksum either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0"
|
2018-12-08 15:11:47 +01:00
|
|
|
"checksum elasticlunr-rs 2.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a99a310cd1f9770e7bf8e48810c7bcbb0e078c8fb23a8c7bcf0da4c2bf61a455"
|
2018-11-02 09:46:59 +01:00
|
|
|
"checksum ena 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f56c93cc076508c549d9bb747f79aa9b4eb098be7b8cad8830c3137ef52d1e00"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum env_logger 0.5.13 (registry+https://github.com/rust-lang/crates.io-index)" = "15b0a4d2e39f8420210be8b27eeda28029729e2fd4291019455016c348240c38"
|
2018-11-16 12:08:23 +01:00
|
|
|
"checksum env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "afb070faf94c85d17d50ca44f6ad076bce18ae92f0037d350947240a36e9d42e"
|
2018-04-26 00:11:28 +02:00
|
|
|
"checksum environment 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1f4b14e20978669064c33b4c1e0fb4083412e40fe56cbea2eae80fd7591503ee"
|
2017-09-02 05:46:51 +02:00
|
|
|
"checksum error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3"
|
2018-07-13 10:34:50 +02:00
|
|
|
"checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02"
|
2018-12-10 10:57:43 +01:00
|
|
|
"checksum failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6dd377bcc1b1b7ce911967e3ec24fa19c3224394ec05b54aa7b083d498341ac7"
|
2018-12-08 15:11:47 +01:00
|
|
|
"checksum failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "64c2d913fe8ed3b6c6518eedf4538255b989945c14c2a7d5cbff62a5e2120596"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a2df5c1a8c4be27e7707789dc42ae65976e60b394afd293d1419ab915833e646"
|
2018-03-27 12:44:33 +02:00
|
|
|
"checksum fixedbitset 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "86d4de0081402f5e88cdac65c8dcdcc73118c1a7a465e2a05f0da05843a8ea33"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2291c165c8e703ee54ef3055ad6188e3d51108e2ded18e9f2476e774fc5ad3d4"
|
2017-12-06 09:25:29 +01:00
|
|
|
"checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
|
|
|
|
"checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
|
|
|
|
"checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
|
2018-12-19 12:56:17 +01:00
|
|
|
"checksum fortanix-sgx-abi 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3f8cbee5e872cf7db61a999a041f9bc4706ca7bf7df4cb914f53fabb1c1bc550"
|
2018-01-08 22:56:22 +01:00
|
|
|
"checksum fs2 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213"
|
2018-10-21 04:15:06 +02:00
|
|
|
"checksum fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5f2a4a2034423744d2cc7ca2068453168dcdb82c438419e639a26bd87839c674"
|
2018-07-06 02:34:00 +02:00
|
|
|
"checksum fst 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d94485a00b1827b861dd9d1a2cc9764f9044d4c535514c0760a5a2012ef3399f"
|
2018-01-08 22:56:22 +01:00
|
|
|
"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
|
|
|
|
"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum futf 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7c9c1ce3fa9336301af935ab852c437817d14cd33690446569392e65170aac3b"
|
|
|
|
"checksum futures 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "1a70b146671de62ec8c8ed572219ca5d594d9b06c0b364d5e67b722fc559b48c"
|
2018-08-14 23:27:26 +02:00
|
|
|
"checksum fwdansi 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "34dd4c507af68d37ffef962063dfa1944ce0dd4d5b82043dbab1dabe088610c3"
|
2018-04-02 17:43:55 +02:00
|
|
|
"checksum getopts 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)" = "b900c08c1939860ce8b54dc6a89e26e00c04c380fd0e09796799bd7f12861e05"
|
2018-12-17 19:23:04 +01:00
|
|
|
"checksum git2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c7339329bfa14a00223244311560d11f8f489b453fb90092af97f267a6090ab0"
|
|
|
|
"checksum git2-curl 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d58551e903ed7e2d6fe3a2f3c7efa3a784ec29b19d0fbb035aaf0497c183fbdd"
|
2017-04-30 01:11:58 +02:00
|
|
|
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4743617a7464bbda3c8aec8558ff2f9429047e025771037df561d383337ff865"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum handlebars 0.32.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d89ec99d1594f285d4590fc32bac5f75cdab383f1123d504d27862c644a807dd"
|
2018-12-08 15:11:47 +01:00
|
|
|
"checksum heck 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ea04fa3ead4e05e51a7c806fc07271fdbde4e246a6c6d1efd52e72230b771b82"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum home 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "80dff82fb58cfbbc617fb9a9184b010be0529201553cda50ad04372bc2333aff"
|
2018-12-08 15:11:47 +01:00
|
|
|
"checksum html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c213fa6a618dc1da552f54f85cba74b05d8e883c92ec4e89067736938084c26e"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca7e5f2e110db35f93b837c81797f3714500b81d517bf20c431b16d3ca4f114"
|
2018-07-17 18:04:22 +02:00
|
|
|
"checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
|
2018-07-20 09:53:56 +02:00
|
|
|
"checksum if_chain 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "4bac95d9aa0624e7b78187d6fb8ab012b41d9f6f54b1bcb61e61c4845f8357ec"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum ignore 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "36ecfc5ad80f0b1226df948c562e2cddd446096be3f644c95106400eae8a5e01"
|
2018-12-03 02:33:20 +01:00
|
|
|
"checksum im-rc 12.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d4591152fd573cf453a890b5f9fdc5c328a751a0785539316739d5f85e5c468c"
|
2018-01-25 18:32:25 +01:00
|
|
|
"checksum is-match 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7e5b386aef33a1c677be65237cb9d32c3f3ef56bd035949710c4bb13083eb053"
|
2018-04-02 17:43:55 +02:00
|
|
|
"checksum itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f58856976b776fedd95533137617a02fb25719f40e7d9b01c7043cd65474f450"
|
2018-09-28 20:27:30 +02:00
|
|
|
"checksum itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b"
|
2018-10-21 04:15:06 +02:00
|
|
|
"checksum jemalloc-sys 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "bfc62c8e50e381768ce8ee0428ee53741929f7ebd73e4d83f669bcf7693e00ae"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum jobserver 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "dd80e58f77e0cdea53ba96acc5e04479e5ffc5d869626a6beafe50fed867eace"
|
2018-08-25 18:17:55 +02:00
|
|
|
"checksum json 0.11.13 (registry+https://github.com/rust-lang/crates.io-index)" = "9ad0485404155f45cce53a40d4b2d6ac356418300daed05273d9e26f91c390be"
|
2018-12-17 19:23:04 +01:00
|
|
|
"checksum jsonrpc-core 9.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4e9cbeda300803d381390fb65e8158437728c39e6987ed23bee82728b73511a7"
|
2017-02-08 00:13:57 +01:00
|
|
|
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
|
2018-12-01 11:36:32 +01:00
|
|
|
"checksum languageserver-types 0.51.1 (registry+https://github.com/rust-lang/crates.io-index)" = "68de833188ada4e175d04a028f03f244f6370eedbcc75a05604d47d925933f69"
|
2017-12-06 09:25:29 +01:00
|
|
|
"checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73"
|
2018-12-10 08:58:08 +01:00
|
|
|
"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f"
|
|
|
|
"checksum libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)" = "2d2857ec59fadc0773853c664d2d18e7198e83883e7060b63c924cb077bd5c74"
|
2018-12-17 19:23:04 +01:00
|
|
|
"checksum libgit2-sys 0.7.11 (registry+https://github.com/rust-lang/crates.io-index)" = "48441cb35dc255da8ae72825689a95368bf510659ae1ad55dc4aa88cb1789bf1"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum libnghttp2-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d75d7966bda4730b722d1eab8e668df445368a24394bae9fc1e8dc0ab3dbe4f4"
|
2018-09-17 18:52:02 +02:00
|
|
|
"checksum libssh2-sys 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "126a1f4078368b163bfdee65fbab072af08a1b374a5551b21e87ade27b1fbf9d"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
|
2018-08-05 00:24:39 +02:00
|
|
|
"checksum lock_api 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "949826a5ccf18c1b3a7c3d57692778d21768b79e46eb9dd07bfc4c2160036c54"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum log_settings 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "19af41f0565d7c19b2058153ad0b42d4d5ce89ec4dbf06ed6741114a8b63e7cd"
|
2018-07-06 22:52:40 +02:00
|
|
|
"checksum lzma-sys 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "d1eaa027402541975218bb0eec67d6b0412f6233af96e0d096d31dbdfd22e614"
|
2018-04-03 16:32:04 +02:00
|
|
|
"checksum mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
|
2018-08-15 15:07:07 +02:00
|
|
|
"checksum macro-utils 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f2c4deaccc2ead6a28c16c0ba82f07d52b6475397415ce40876e559b0b0ea510"
|
2018-04-03 16:32:04 +02:00
|
|
|
"checksum maplit 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08cbb6b4fef96b6d77bfc40ec491b1690c779e77b05cd9f07f787ed376fd4c43"
|
|
|
|
"checksum markup5ever 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfedc97d5a503e96816d10fedcd5b42f760b2e525ce2f7ec71f6a41780548475"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
|
2018-04-21 23:06:13 +02:00
|
|
|
"checksum mdbook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "90b5a8d7e341ceee5db3882a06078d42661ddcfa2b3687319cc5da76ec4e782f"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0a3eb002f0535929f1199681417029ebea04aadc0c7a4224b46be99c7f5d6a16"
|
2018-08-31 15:18:08 +02:00
|
|
|
"checksum memmap 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e2ffa2c986de11a9df78620c01eeaaf27d94d3ff02bf81bfcca953102dd0c6ff"
|
2018-02-26 04:15:45 +01:00
|
|
|
"checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3"
|
2018-10-06 18:51:56 +02:00
|
|
|
"checksum minifier 0.0.20 (registry+https://github.com/rust-lang/crates.io-index)" = "96c269bb45c39b333392b2b18ad71760b34ac65666591386b0e959ed58b3f474"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "0300eafb20369952951699b68243ab4334f4b10a88f411c221d444b36c40e649"
|
|
|
|
"checksum miniz_oxide 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5ad30a47319c16cde58d0314f5d98202a80c9083b5f61178457403dfb14e509c"
|
|
|
|
"checksum miniz_oxide_c_api 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "28edaef377517fd9fe3e085c37d892ce7acd1fbeab9239c5a36eec352d8a8b7e"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum miow 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "396aa0f2003d7df8395cb93e09871561ccc3e785f0acb369170e8cc74ddf9226"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0cdc457076c78ab54d5e0d6fa7c47981757f1e34dc39ff92787f217dede586c4"
|
2018-02-26 04:15:45 +01:00
|
|
|
"checksum nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "9a2228dca57108069a5262f2ed8bd2e82496d2e074a06d1ccc7ce1687b6ae0a2"
|
2018-12-08 15:11:47 +01:00
|
|
|
"checksum num-derive 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8af1847c907c2f04d7bfd572fb25bbb4385c637fe5be163cf2f8c5d778fe1e7d"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
|
2018-01-08 22:56:22 +01:00
|
|
|
"checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30"
|
2017-09-28 00:37:02 +02:00
|
|
|
"checksum open 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c281318d992e4432cfa799969467003d05921582a7489a8325e37f8a450d5113"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum opener 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "04b1d6b086d9b3009550f9b6f81b10ad9428cf14f404b8e1a3a06f6f012c8ec9"
|
|
|
|
"checksum openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)" = "5e1309181cdcbdb51bc3b6bedb33dfac2a83b3d585033d3f6d9e22e8c1928613"
|
2017-12-10 18:42:49 +01:00
|
|
|
"checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum openssl-src 111.1.0+1.1.1a (registry+https://github.com/rust-lang/crates.io-index)" = "26bb632127731bf4ac49bf86a5dde12d2ca0918c2234fc39d79d4da2ccbc6da7"
|
|
|
|
"checksum openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)" = "278c1ad40a89aa1e741a1eed089a2f60b18fab8089c3139b542140fc7d674106"
|
2018-03-27 12:44:33 +02:00
|
|
|
"checksum ordermap 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "a86ed3f5f244b372d6b1a00b72ef7f8876d0bc6a78a4c9985c53614041512063"
|
2018-07-06 02:34:00 +02:00
|
|
|
"checksum ordslice 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "dd20eec3dbe4376829cb7d80ae6ac45e0a766831dca50202ff2d40db46a8a024"
|
2017-04-26 23:22:45 +02:00
|
|
|
"checksum owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37"
|
2018-12-01 11:36:32 +01:00
|
|
|
"checksum packed_simd 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "25d36de864f7218ec5633572a800109bbe5a1cc8d9d95a967f3daf93ea7e6ddc"
|
2018-08-05 00:24:39 +02:00
|
|
|
"checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5"
|
|
|
|
"checksum parking_lot_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "06a2b6aae052309c2fd2161ef58f5067bc17bb758377a0de9d4b279d603fdd8a"
|
2017-12-06 09:25:29 +01:00
|
|
|
"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
|
2018-04-02 17:43:55 +02:00
|
|
|
"checksum pest 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0fce5d8b5cc33983fc74f78ad552b5522ab41442c4ca91606e4236eb4b5ceefc"
|
2018-12-08 15:11:47 +01:00
|
|
|
"checksum pest_derive 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3294f437119209b084c797604295f40227cffa35c57220b1e99a6ff3bf8ee4"
|
2018-09-08 08:04:29 +02:00
|
|
|
"checksum petgraph 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3659d1ee90221741f65dd128d9998311b0e40c5d3c23a62445938214abce4f"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum phf 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)" = "7d37a244c75a9748e049225155f56dbcb98fe71b192fd25fd23cb914b5ad62f2"
|
|
|
|
"checksum phf_codegen 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)" = "4e4048fe7dd7a06b8127ecd6d3803149126e9b33c7558879846da3a63f734f2b"
|
|
|
|
"checksum phf_generator 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)" = "05a079dd052e7b674d21cb31cbb6c05efd56a2cd2827db7692e2f1a507ebd998"
|
|
|
|
"checksum phf_shared 0.7.22 (registry+https://github.com/rust-lang/crates.io-index)" = "c2261d544c2bb6aa3b10022b0be371b9c7c64f762ef28c6f5d4f1ef6d97b5930"
|
2018-10-08 19:39:09 +02:00
|
|
|
"checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c"
|
2018-05-30 17:17:37 +02:00
|
|
|
"checksum polonius-engine 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a5b6b0a7f5f4278b991ffd14abce1d01b013121ad297460237ef0a2f08d43201"
|
2018-04-03 16:32:04 +02:00
|
|
|
"checksum precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
|
Add tests to rustbuild
In order to run tests, previous commits have cfg'd out various parts of
rustbuild. Generally speaking, these are filesystem-related operations
and process-spawning related parts. Then, rustbuild is run "as normal"
and the various steps that where run are retrieved from the cache and
checked against the expected results.
Note that this means that the current implementation primarily tests
"what" we build, but doesn't actually test that what we build *will*
build. In other words, it doesn't do any form of dependency verification
for any crate. This is possible to implement, but is considered future
work.
This implementation strives to cfg out as little code as possible; it
also does not currently test anywhere near all of rustbuild. The current
tests are also not checked for "correctness," rather, they simply
represent what we do as of this commit, which may be wrong.
Test cases are drawn from the old implementation of rustbuild, though
the expected results may vary.
2018-03-10 15:03:06 +01:00
|
|
|
"checksum pretty_assertions 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3a029430f0d744bc3d15dd474d591bed2402b645d024583082b9f63bb936dac6"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum pretty_env_logger 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df8b3f4e0475def7d9c2e5de8e5a1306949849761e107b360d03e98eafaffd61"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum proc-macro2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "1b06e2f335f48d24442b35a19df506a835fb3547bc3c06ef27340da9acf5cae7"
|
2018-11-19 05:21:10 +01:00
|
|
|
"checksum proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)" = "77619697826f31a02ae974457af0b29b723e5619e113e9397b8b82c6bd253f09"
|
2018-09-28 20:27:30 +02:00
|
|
|
"checksum proptest 0.8.7 (registry+https://github.com/rust-lang/crates.io-index)" = "926d0604475349f463fe44130aae73f2294b5309ab2ca0310b998bd334ef191f"
|
2018-02-18 22:33:56 +01:00
|
|
|
"checksum pulldown-cmark 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d6fdf85cda6cadfae5428a54661d431330b312bc767ddbc57adbedc24da66e32"
|
2018-11-23 12:52:47 +01:00
|
|
|
"checksum pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eef52fac62d0ea7b9b4dc7da092aa64ea7ec3d90af6679422d3d7e0e14b6ee15"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
|
2017-12-06 09:25:29 +01:00
|
|
|
"checksum quine-mc_cluskey 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "07589615d719a60c8dd8a4622e7946465dfef20d1a428f969e3443e7386d5f45"
|
2017-04-30 01:11:58 +02:00
|
|
|
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum quote 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9949cfe66888ffe1d53e6ec9d9f3b70714083854be20fd5e271b232a017401e8"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "53fa22a1994bd0f9372d7a816207d8a2677ad0325b073f5c5332760f0fb62b5c"
|
2018-12-10 08:58:08 +01:00
|
|
|
"checksum racer 2.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fbfcf2686b50f75a279cb42d9c6d253a1e68a475b415ea4baf7fb177ce94839a"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd"
|
2018-09-15 10:40:25 +02:00
|
|
|
"checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ae9d223d52ae411a33cf7e54ec6034ec165df296ccd23533d671a28252b6f66a"
|
|
|
|
"checksum rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "771b009e3a508cb67e8823dda454aaa5368c7bc1c16829fb77d3e980440dd34a"
|
|
|
|
"checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372"
|
|
|
|
"checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db"
|
|
|
|
"checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
|
|
|
|
"checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
|
|
|
|
"checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05"
|
|
|
|
"checksum rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "effa3fcaa47e18db002bdde6060944b6d2f9cfd8db471c30e873448ad9187be3"
|
2018-04-02 17:43:55 +02:00
|
|
|
"checksum rayon 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80e811e76f1dbf68abf87a759083d34600017fc4e10b6bd5ad84a700f9dba4b1"
|
2018-02-26 04:15:45 +01:00
|
|
|
"checksum rayon-core 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d24ad214285a7729b174ed6d3bcfcb80177807f959d95fafd5bfc5c4f201ac8"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "679da7508e9a6390aeaf7fbd02a800fdc64b73fe2204dd2c8ae66d22d9d5ad5d"
|
2017-12-06 09:25:29 +01:00
|
|
|
"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4e47a2ed29da7a9e1960e1639e7a982e6edc6d49be308a3b02daf511504a16d1"
|
2018-04-18 17:43:59 +02:00
|
|
|
"checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5"
|
2018-12-01 11:36:32 +01:00
|
|
|
"checksum rls-analysis 0.16.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2de1187cceaf16d7642cc78835a2890b55b35ed9e8a8e3c6348a6297d8dd0fb1"
|
2018-11-19 05:21:10 +01:00
|
|
|
"checksum rls-blacklist 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ce1fdac03e138c4617ff87b194e1ff57a39bb985a044ccbd8673d30701e411"
|
2018-09-25 04:40:42 +02:00
|
|
|
"checksum rls-data 0.18.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3a209ce46bb52813cbe0786a7baadc0c1a3f5543ef93f179eda3b841ed72cf2e"
|
2018-08-04 09:29:15 +02:00
|
|
|
"checksum rls-rustc 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9dba7390427aefa953608429701e3665192ca810ba8ae09301e001b7c7bed0"
|
2017-05-08 21:15:48 +02:00
|
|
|
"checksum rls-span 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5d7c7046dc6a92f2ae02ed302746db4382e75131b9ce20ce967259f6b5867a6a"
|
2018-11-19 05:21:10 +01:00
|
|
|
"checksum rls-vfs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "72d56425bd5aa86d9d4372b76f0381d3b4bda9c0220e71956c9fcc929f45c1f1"
|
2018-12-10 08:58:08 +01:00
|
|
|
"checksum rustc-ap-arena 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cbfb540c1347a3993060896b18e0d64084203fa37aaffdc5e5c31264f275d476"
|
|
|
|
"checksum rustc-ap-graphviz 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "790ac657d5bf69be9ef56f6810e8a0238b07e8460a88526e11d41f8214eb6c4e"
|
|
|
|
"checksum rustc-ap-rustc_cratesio_shim 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b721cf32b543f3ee90240d7b757ca4a45930fe9981458a50678b4ccd75c472e2"
|
|
|
|
"checksum rustc-ap-rustc_data_structures 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4fa11df199d45ce948b07792ca593f59c1d19d2cb05d35c6b0a02271e772a416"
|
|
|
|
"checksum rustc-ap-rustc_errors 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b7ead3163ef995bbba520b88739e1d60f9ccf74fdacdda985067644c8134e827"
|
|
|
|
"checksum rustc-ap-rustc_target 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "688fef9cc27837755019b72b4f13e7a3d3e5012473475f377b75dbb1f07beb5f"
|
|
|
|
"checksum rustc-ap-serialize 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5b2c0e8161e956647592a737074736e6ce05ea36b70c770ea8cca3eb9cb33737"
|
|
|
|
"checksum rustc-ap-syntax 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1adc189e5e4500a4167b9afa04e67067f40d0039e0e05870c977bebb561f065a"
|
|
|
|
"checksum rustc-ap-syntax_pos 306.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4d42c430dbb0be4377bfe6aa5099074c63ac8796b24098562c2e2154aecc5652"
|
2018-12-14 23:37:51 +01:00
|
|
|
"checksum rustc-demangle 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "82ae957aa1b3055d8e086486723c0ccd3d7b8fa190ae8fa2e35543b6171c810e"
|
2018-05-24 05:37:40 +02:00
|
|
|
"checksum rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7540fc8b0c49f096ee9c961cda096467dce8084bec6bdca2fc83895fd9b28cb8"
|
2018-06-06 15:25:47 +02:00
|
|
|
"checksum rustc-rayon 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c6d5a683c6ba4ed37959097e88d71c9e8e26659a3cb5be8b389078e7ad45306"
|
|
|
|
"checksum rustc-rayon-core 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "40f06724db71e18d68b3b946fdf890ca8c921d9edccc1404fdfdb537b0d12649"
|
2017-04-30 01:11:58 +02:00
|
|
|
"checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
|
2018-12-17 19:23:04 +01:00
|
|
|
"checksum rustfix 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "af7c21531a91512a4a51b490be6ba1c8eff34fdda0dc5bf87dc28d86748aac56"
|
2018-09-28 20:27:30 +02:00
|
|
|
"checksum rusty-fork 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9591f190d2852720b679c21f66ad929f9f1d7bb09d1193c26167586029d8489c"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7"
|
|
|
|
"checksum same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8f20c4be53a8a1ff4c1f1b2bd14570d2f634628709752f0702ecdd2b3f9a5267"
|
2018-10-08 19:39:09 +02:00
|
|
|
"checksum schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "0e1a231dc10abf6749cfa5d7767f25888d484201accbd919b66ab5413c502d56"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "332ffa32bf586782a3efaeb58f127980944bbc8c4d6913a86107ac2a5ab24b28"
|
2017-12-06 09:25:29 +01:00
|
|
|
"checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
|
2018-01-08 22:56:22 +01:00
|
|
|
"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
|
2017-04-30 01:11:58 +02:00
|
|
|
"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
|
2018-12-17 19:23:04 +01:00
|
|
|
"checksum serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)" = "6fa52f19aee12441d5ad11c9a00459122bd8f98707cadf9778c540674f1935b6"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)" = "477b13b646f5b5b56fc95bedfc3b550d12141ce84f466f6c44b9a17589923885"
|
2017-09-02 05:46:51 +02:00
|
|
|
"checksum serde_ignored 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "190e9765dcedb56be63b6e0993a006c7e3b071a016a304736e4a315dc01fb142"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)" = "c37ccd6be3ed1fdf419ee848f7c758eb31b054d7cd3ae3600e3bae0adf569811"
|
2018-04-02 17:43:55 +02:00
|
|
|
"checksum shell-escape 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "170a13e64f2a51b77a45702ba77287f5c6829375b04a69cf2222acd17d0cfab9"
|
2018-01-25 18:32:25 +01:00
|
|
|
"checksum shlex 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
|
2018-04-03 16:32:04 +02:00
|
|
|
"checksum siphasher 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0df90a788073e8d0235a67e50441d47db7c8ad9debd91cbf43736a2a92d36537"
|
2018-11-28 22:52:22 +01:00
|
|
|
"checksum smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b73ea3738b47563803ef814925e69be00799a8c07420be8b996f8e98fb2336db"
|
2018-10-08 19:39:09 +02:00
|
|
|
"checksum socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "c4d11a52082057d87cb5caa31ad812f4504b97ab44732cd8359df2e9ff9f48e7"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum stable_deref_trait 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ffbc596e092fe5f598b12ef46cc03754085ac2f4d8c739ad61c4ae266cc3b3fa"
|
|
|
|
"checksum string_cache 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "25d70109977172b127fe834e5449e5ab1740b9ba49fa18a2020f509174f25423"
|
|
|
|
"checksum string_cache_codegen 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "35293b05cf1494e8ddd042a7df6756bf18d07f42d234f32e71dce8a7aabb0191"
|
2018-04-03 16:32:04 +02:00
|
|
|
"checksum string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b1884d1bc09741d466d9b14e6d37ac89d6909cbcac41dd9ae982d4d063bbedfc"
|
2018-03-16 11:37:14 +01:00
|
|
|
"checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
|
2018-12-08 15:11:47 +01:00
|
|
|
"checksum strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f6c3a2071519ab6a48f465808c4c1ffdd00dfc8e93111d02b4fc5abab177676e"
|
|
|
|
"checksum strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8baacebd7b7c9b864d83a6ba7a246232983e277b86fa5cdec77f565715a4b136"
|
2017-04-30 01:11:58 +02:00
|
|
|
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)" = "ae8b29eb5210bc5cf63ed6149cbf9adfc82ac0be023d8735c176ee74a2db4da7"
|
2017-04-30 01:11:58 +02:00
|
|
|
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
|
2018-12-08 15:11:47 +01:00
|
|
|
"checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum tar 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)" = "a303ba60a099fcd2aaa646b14d2724591a96a75283e4b7ed3d1a1658909d9ae2"
|
|
|
|
"checksum tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "7e91405c14320e5c79b3d148e1c86f40749a36e490642202a31689cb1a3452b2"
|
2018-04-03 16:32:04 +02:00
|
|
|
"checksum tendril 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9de21546595a0873061940d994bbbc5c35f024ae4fd61ec5c5b159115684f508"
|
2018-03-19 15:14:13 +01:00
|
|
|
"checksum term 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5e6b677dd1e8214ea1ef4297f85dbcbed8e8cdddb561040cc998ca2551c37561"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4096add70612622289f2fdcdbd5086dc81c1e2675e6ae58d6c4f62a16c6d7f2f"
|
2017-12-06 09:25:29 +01:00
|
|
|
"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f"
|
2018-01-25 18:32:25 +01:00
|
|
|
"checksum toml-query 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6854664bfc6df0360c695480836ee90e2d0c965f06db291d10be9344792d43e8"
|
2018-12-03 02:33:20 +01:00
|
|
|
"checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86"
|
2017-06-27 19:33:32 +02:00
|
|
|
"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25"
|
|
|
|
"checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1"
|
2018-06-22 17:48:43 +02:00
|
|
|
"checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
|
2017-04-30 01:11:58 +02:00
|
|
|
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
|
2018-03-01 20:08:48 +01:00
|
|
|
"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
|
2017-06-26 15:43:09 +02:00
|
|
|
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
|
2017-04-30 01:11:58 +02:00
|
|
|
"checksum url_serde 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "74e7d099f1ee52f823d4bdd60c93c3602043c728f5db3b97bdb548467f7bddea"
|
2018-04-03 16:32:04 +02:00
|
|
|
"checksum utf-8 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f1262dfab4c30d5cb7c07026be00ee343a6cf5027fdc0104a9160f354e5db75c"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
|
2018-12-07 10:12:01 +01:00
|
|
|
"checksum vergen 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "6aba5e34f93dc7051dfad05b98a18e9156f27e7b431fe1d2398cb6061c0a1dba"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
|
2017-02-20 01:20:57 +01:00
|
|
|
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
|
2018-09-28 20:27:30 +02:00
|
|
|
"checksum wait-timeout 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "b9f3bf741a801531993db6478b95682117471f76916f5e690dd8d45395b09349"
|
2018-12-08 12:06:54 +01:00
|
|
|
"checksum walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "9d9d7ed3431229a144296213105a390676cc49c9b6a72bd19f3176c98e129fa1"
|
2017-02-08 00:13:57 +01:00
|
|
|
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
|
2018-10-08 19:39:09 +02:00
|
|
|
"checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0"
|
2017-02-08 00:13:57 +01:00
|
|
|
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
|
2018-01-08 22:56:22 +01:00
|
|
|
"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "afc5508759c5bf4285e61feb862b6083c8480aec864fa17a81fdec6f69b461ab"
|
2018-01-08 22:56:22 +01:00
|
|
|
"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
2018-08-21 19:23:47 +02:00
|
|
|
"checksum wincolor 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "561ed901ae465d6185fa7864d63fbd5720d0ef718366c9a4dc83cf6170d7e9ba"
|
2018-07-17 18:04:22 +02:00
|
|
|
"checksum xattr 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "244c3741f4240ef46274860397c7c74e50eb23624996930e484c16679633a54c"
|
2018-07-02 18:33:16 +02:00
|
|
|
"checksum xz2 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "df8bf41d3030c3577c9458fd6640a05afbf43b150d0b531b16bd77d3f794f27a"
|
2017-05-09 00:01:13 +02:00
|
|
|
"checksum yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992"
|