cargo/tests/testsuite
bors bc83efe323 Auto merge of #5217 - matklad:known-crate-types, r=alexcrichton
Preprobe info for known crate type

Previously, we've calculated the set of crate types to learn about by
recursively walking the graph of units. However, to actually know
dependencies of a unit exactly, we must know target specific info, and
we don't know it at this moment (in fact, we are trying calculating it).

Note that crate-type calculation is already lazy, we don't have to calc
all crate-types upfront. So, let's just scrape this info once for
well-known crate types, and fill whatever is left lazily.

@alexcrichton would this approach work at all? I think it would, if `KNOWN_CRATE_TYPES` are all available for all target-tripples we support. Is it a valid assumption?

The larger picture is that I am trying to make unit dependency resolution eager and move it into the separate file. I even got something working, but I have to run dependency resolution three times, because it is not exactly idempotent for various reasons, including this target-info stuff :)

```
    cx.prepare()?;
    cx.build_unit_map(units.clone())?; // resolve dependencies
    cx.probe_target_info(&units)?;
    cx.build_unit_map(units.clone())?; // resolve again
    cx.build_used_in_plugin_map(&units)?;
    custom_build::build_map(&mut cx, &units)?;
    cx.build_unit_map(units.clone())?; // and resolve one final time :)
```
2018-03-22 14:07:49 +00:00
..
cargotest Slightly improve ergonomics of writing Cargo tests 2018-03-17 00:08:23 +03:00
alt_registry.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
bad_config.rs Preprobe info for known crate type 2018-03-21 10:54:15 +03:00
bad_manifest_path.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
bench.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
build.rs Auto merge of #5186 - infinity0:stricter-need-dev-deps, r=alexcrichton 2018-03-21 14:19:11 +00:00
build_auth.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
build_lib.rs cargo fmt 2018-03-14 17:48:23 -07:00
build_script.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
build_script_env.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
cargo_alias_config.rs cargo fmt 2018-03-14 17:48:23 -07:00
cargo_command.rs Fix regression when passing arguments to subcommands 2018-03-20 03:34:37 +03:00
cargo_features.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
cfg.rs cargo fmt 2018-03-14 17:48:23 -07:00
check-style.sh Reorganize integration tests as one crate with many modules. Issue #4867. 2018-02-21 13:33:51 -05:00
check.rs Split tests, apparently cargo clean does not work well on windows 2018-03-19 18:20:54 +01:00
clean.rs Slightly improve ergonomics of writing Cargo tests 2018-03-17 00:08:23 +03:00
concurrent.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
config.rs cargo fmt 2018-03-14 17:48:23 -07:00
corrupt_git.rs cargo fmt 2018-03-14 17:48:23 -07:00
cross_compile.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
cross_publish.rs cargo fmt 2018-03-14 17:48:23 -07:00
death.rs cargo fmt 2018-03-14 17:48:23 -07:00
dep_info.rs cargo fmt 2018-03-14 17:48:23 -07:00
directory.rs cargo fmt 2018-03-14 17:48:23 -07:00
doc.rs cargo fmt 2018-03-14 17:48:23 -07:00
features.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
fetch.rs cargo fmt 2018-03-14 17:48:23 -07:00
freshness.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
generate_lockfile.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
git.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
hamcrest.rs cargo fmt 2018-03-14 17:48:23 -07:00
init.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
install.rs Revert "Work around #5134 for now" 2018-03-15 17:05:13 +01:00
jobserver.rs cargo fmt 2018-03-14 17:48:23 -07:00
local_registry.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
lockfile_compat.rs cargo fmt 2018-03-14 17:48:23 -07:00
login.rs cargo fmt 2018-03-14 17:48:23 -07:00
main.rs Deny warnings in tests 2018-03-16 12:32:31 +03:00
metadata.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
net_config.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
new.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
overrides.rs Don't abort resolution on transitive updates 2018-03-15 07:44:35 -07:00
package.rs cargo fmt 2018-03-14 17:48:23 -07:00
patch.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
path.rs cargo fmt 2018-03-14 17:48:23 -07:00
plugins.rs cargo fmt 2018-03-14 17:48:23 -07:00
proc_macro.rs cargo fmt 2018-03-14 17:48:23 -07:00
profiles.rs cargo fmt 2018-03-14 17:48:23 -07:00
publish.rs cargo fmt 2018-03-14 17:48:23 -07:00
read_manifest.rs cargo fmt 2018-03-14 17:48:23 -07:00
registry.rs Don't abort resolution on transitive updates 2018-03-15 07:44:35 -07:00
rename_deps.rs cargo fmt 2018-03-14 17:48:23 -07:00
required_features.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
resolve.rs Auto merge of #5187 - Eh2406:faster_resolver, r=alexcrichton 2018-03-17 17:49:24 +00:00
run.rs Slightly improve ergonomics of writing Cargo tests 2018-03-17 00:08:23 +03:00
rustc.rs Auto merge of #5186 - infinity0:stricter-need-dev-deps, r=alexcrichton 2018-03-21 14:19:11 +00:00
rustdoc.rs cargo fmt 2018-03-14 17:48:23 -07:00
rustdocflags.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
rustflags.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
search.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00
small_fd_limits.rs cargo fmt 2018-03-14 17:48:23 -07:00
test.rs Slightly improve ergonomics of writing Cargo tests 2018-03-17 00:08:23 +03:00
tool_paths.rs cargo fmt 2018-03-14 17:48:23 -07:00
update.rs Don't require cargo update when bumping versions 2018-03-20 12:05:33 -07:00
verify_project.rs cargo fmt 2018-03-14 17:48:23 -07:00
version.rs cargo fmt 2018-03-14 17:48:23 -07:00
warn_on_failure.rs cargo fmt 2018-03-14 17:48:23 -07:00
workspaces.rs Prettify rustfmted single-line strings 2018-03-14 17:48:44 -07:00