mirror of
https://github.com/rust-lang/cargo
synced 2024-08-28 11:50:23 +00:00
Auto merge of #9793 - nipunn1313:install_parallel2, r=alexcrichton
Determine packages to install prior to installing Old logic (pseudocode) ``` for krate in to_install { pkg = determine_pkg(krate); install_pkg(pkg); } ``` New logic ``` let pkgs = to_install.into_iter(|krate| determine_pkg(krate)); pkgs.into_iter(|pkg| install_pkg(pkg)); ``` This has the short term benefit of dumping most error messages out earlier in the process (eg a typo in the second package name). Longer term, it might help with #9741 - as only the second loop would be parallelized. First loop shouldn't be parallelized because it would lead to redundant registry/git updates.
This commit is contained in:
commit
b64c96bfa0
File diff suppressed because it is too large
Load diff
|
@ -95,19 +95,19 @@ fn multiple_pkgs() {
|
|||
[UPDATING] `[..]` index
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] foo v0.0.1 (registry `dummy-registry`)
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] bar v0.0.2 (registry `dummy-registry`)
|
||||
[ERROR] could not find `baz` in registry `[..]` with version `*`
|
||||
[INSTALLING] foo v0.0.1
|
||||
[COMPILING] foo v0.0.1
|
||||
[FINISHED] release [optimized] target(s) in [..]
|
||||
[INSTALLING] [CWD]/home/.cargo/bin/foo[EXE]
|
||||
[INSTALLED] package `foo v0.0.1` (executable `foo[EXE]`)
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] bar v0.0.2 (registry `dummy-registry`)
|
||||
[INSTALLING] bar v0.0.2
|
||||
[COMPILING] bar v0.0.2
|
||||
[FINISHED] release [optimized] target(s) in [..]
|
||||
[INSTALLING] [CWD]/home/.cargo/bin/bar[EXE]
|
||||
[INSTALLED] package `bar v0.0.2` (executable `bar[EXE]`)
|
||||
[ERROR] could not find `baz` in registry `[..]` with version `*`
|
||||
[SUMMARY] Successfully installed foo, bar! Failed to install baz (see error(s) above).
|
||||
[WARNING] be sure to add `[..]` to your PATH to be able to run the installed binaries
|
||||
[ERROR] some crates failed to install
|
||||
|
@ -155,19 +155,19 @@ fn multiple_pkgs_path_set() {
|
|||
[UPDATING] `[..]` index
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] foo v0.0.1 (registry `dummy-registry`)
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] bar v0.0.2 (registry `dummy-registry`)
|
||||
[ERROR] could not find `baz` in registry `[..]` with version `*`
|
||||
[INSTALLING] foo v0.0.1
|
||||
[COMPILING] foo v0.0.1
|
||||
[FINISHED] release [optimized] target(s) in [..]
|
||||
[INSTALLING] [CWD]/home/.cargo/bin/foo[EXE]
|
||||
[INSTALLED] package `foo v0.0.1` (executable `foo[EXE]`)
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] bar v0.0.2 (registry `dummy-registry`)
|
||||
[INSTALLING] bar v0.0.2
|
||||
[COMPILING] bar v0.0.2
|
||||
[FINISHED] release [optimized] target(s) in [..]
|
||||
[INSTALLING] [CWD]/home/.cargo/bin/bar[EXE]
|
||||
[INSTALLED] package `bar v0.0.2` (executable `bar[EXE]`)
|
||||
[ERROR] could not find `baz` in registry `[..]` with version `*`
|
||||
[SUMMARY] Successfully installed foo, bar! Failed to install baz (see error(s) above).
|
||||
[ERROR] some crates failed to install
|
||||
",
|
||||
|
|
|
@ -595,20 +595,20 @@ fn multiple_report() {
|
|||
[UPDATING] `[..]` index
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] one v1.0.0 (registry `[..]`)
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] two v1.0.0 (registry `[..]`)
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] three v1.0.0 (registry `[..]`)
|
||||
[INSTALLING] one v1.0.0
|
||||
[COMPILING] one v1.0.0
|
||||
[FINISHED] release [optimized] target(s) in [..]
|
||||
[INSTALLING] [..]/.cargo/bin/one[EXE]
|
||||
[INSTALLED] package `one v1.0.0` (executable `one[EXE]`)
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] two v1.0.0 (registry `[..]`)
|
||||
[INSTALLING] two v1.0.0
|
||||
[COMPILING] two v1.0.0
|
||||
[FINISHED] release [optimized] target(s) in [..]
|
||||
[INSTALLING] [..]/.cargo/bin/two[EXE]
|
||||
[INSTALLED] package `two v1.0.0` (executable `two[EXE]`)
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] three v1.0.0 (registry `[..]`)
|
||||
[INSTALLING] three v1.0.0
|
||||
[COMPILING] three v1.0.0
|
||||
[FINISHED] release [optimized] target(s) in [..]
|
||||
|
@ -842,13 +842,13 @@ fn partially_already_installed_does_one_update() {
|
|||
[UPDATING] `[..]` index
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] bar v1.0.0 (registry [..])
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] baz v1.0.0 (registry [..])
|
||||
[INSTALLING] bar v1.0.0
|
||||
[COMPILING] bar v1.0.0
|
||||
[FINISHED] release [optimized] target(s) in [..]
|
||||
[INSTALLING] [CWD]/home/.cargo/bin/bar[EXE]
|
||||
[INSTALLED] package `bar v1.0.0` (executable `bar[EXE]`)
|
||||
[DOWNLOADING] crates ...
|
||||
[DOWNLOADED] baz v1.0.0 (registry [..])
|
||||
[INSTALLING] baz v1.0.0
|
||||
[COMPILING] baz v1.0.0
|
||||
[FINISHED] release [optimized] target(s) in [..]
|
||||
|
|
Loading…
Reference in a new issue