[INFO] fetching crate pagegraph 0.1.3...
[INFO] checking pagegraph-0.1.3 against try#31561a63598a0f21fc74c024747ef1310fdd2eb2 for pr-133536
[INFO] extracting crate pagegraph 0.1.3 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate pagegraph 0.1.3 on toolchain 31561a63598a0f21fc74c024747ef1310fdd2eb2
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate pagegraph 0.1.3
[INFO] finished tweaking crates.io crate pagegraph 0.1.3
[INFO] tweaked toml for crates.io crate pagegraph 0.1.3 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate crates.io crate pagegraph 0.1.3 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9f1032f547e3133f6ea8a7894de21a17e00a9d155d4a60bd5fdff042ec57b562
[INFO] running `Command { std: "docker" "start" "-a" "9f1032f547e3133f6ea8a7894de21a17e00a9d155d4a60bd5fdff042ec57b562", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9f1032f547e3133f6ea8a7894de21a17e00a9d155d4a60bd5fdff042ec57b562", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9f1032f547e3133f6ea8a7894de21a17e00a9d155d4a60bd5fdff042ec57b562", kill_on_drop: false }`
[INFO] [stdout] 9f1032f547e3133f6ea8a7894de21a17e00a9d155d4a60bd5fdff042ec57b562
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0e3aac1f4b72018b255c0427526150ba87bb1a8c00f01de380655ca3f8a63d7c
[INFO] running `Command { std: "docker" "start" "-a" "0e3aac1f4b72018b255c0427526150ba87bb1a8c00f01de380655ca3f8a63d7c", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling serde v1.0.180
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking psl-types v2.0.11
[INFO] [stderr]    Compiling serde_derive v1.0.180
[INFO] [stderr]     Checking unicode-bidi v0.3.13
[INFO] [stderr]    Compiling thiserror v1.0.44
[INFO] [stderr]     Checking regex-syntax v0.7.4
[INFO] [stderr]     Checking percent-encoding v2.3.0
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]     Checking psl v2.1.4
[INFO] [stderr]     Checking matches v0.1.10
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking form_urlencoded v1.2.0
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]     Checking once_cell v1.18.0
[INFO] [stderr]     Checking base64 v0.13.1
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking seahash v3.0.7
[INFO] [stderr]    Compiling num-traits v0.2.16
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking lifeguard v0.6.1
[INFO] [stderr]     Checking xml-rs v0.8.16
[INFO] [stderr]     Checking flate2 v1.0.26
[INFO] [stderr]     Checking aho-corasick v1.0.2
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]    Compiling quote v1.0.32
[INFO] [stderr]    Compiling syn v2.0.28
[INFO] [stderr]     Checking petgraph v0.6.3
[INFO] [stderr]     Checking idna v0.4.0
[INFO] [stderr]     Checking idna v0.2.3
[INFO] [stderr]     Checking rmp v0.8.12
[INFO] [stderr]     Checking url v2.4.0
[INFO] [stderr]     Checking regex-automata v0.3.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.44
[INFO] [stderr]     Checking addr v0.14.0
[INFO] [stderr]     Checking addr v0.15.6
[INFO] [stderr]     Checking rmp-serde v0.15.5
[INFO] [stderr]     Checking rmp-serde v0.13.7
[INFO] [stderr]     Checking regex v1.9.1
[INFO] [stderr]     Checking adblock v0.7.17
[INFO] [stderr]     Checking pagegraph v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0433]: failed to resolve: could not find `filter_lists` in `adblock`
[INFO] [stdout]   --> examples/disconnect-eval.rs:75:56
[INFO] [stdout]    |
[INFO] [stdout] 75 |             let rule_locations: Vec<String> = adblock::filter_lists::default::default_lists().iter().map(|fl| fl.url.to_owned()).collect();
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^ could not find `filter_lists` in `adblock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `filter_lists` in `adblock`
[INFO] [stdout]   --> examples/disconnect-eval.rs:90:56
[INFO] [stdout]    |
[INFO] [stdout] 90 |             let rule_locations: Vec<String> = adblock::filter_lists::default::default_lists().iter().map(|fl| fl.url.to_owned()).collect();
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^ could not find `filter_lists` in `adblock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `DomainName` in crate `addr`
[INFO] [stdout]    --> examples/disconnect-eval.rs:238:55
[INFO] [stdout]     |
[INFO] [stdout] 238 |     let source_domain = source_hostname.parse::<addr::DomainName>().expect("Source URL domain could not be parsed");
[INFO] [stdout]     |                                                       ^^^^^^^^^^ not found in `addr`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]     |
[INFO] [stdout] 3   + use addr::parser::DomainName;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `DomainName`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 238 -     let source_domain = source_hostname.parse::<addr::DomainName>().expect("Source URL domain could not be parsed");
[INFO] [stdout] 238 +     let source_domain = source_hostname.parse::<DomainName>().expect("Source URL domain could not be parsed");
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> examples/disconnect-eval.rs:43:84
[INFO] [stdout]     |
[INFO] [stdout] 43  |                         let downstream_resources = graph.all_downstream_effects_of(&id);
[INFO] [stdout]     |                                                          ------------------------- ^^^ expected `&Edge`, found `&&NodeId`
[INFO] [stdout]     |                                                          |
[INFO] [stdout]     |                                                          arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Edge`
[INFO] [stdout]                found reference `&&NodeId`
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> /opt/rustwide/workdir/src/graph_algos.rs:821:12
[INFO] [stdout]     |
[INFO] [stdout] 821 |     pub fn all_downstream_effects_of<'a>(&'a self, edge: &'a Edge) -> Vec<&'a Edge> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/disconnect-eval.rs:47:68
[INFO] [stdout]    |
[INFO] [stdout] 47 |                         downstream_resources.into_iter().for_each(|(id, node)| { match &node.node_type {
[INFO] [stdout]    |                                                                    ^^^^^^^^^^
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    expected `Edge`, found `(_, _)`
[INFO] [stdout]    |                                                                    expected due to this
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Edge`
[INFO] [stdout]                found tuple `(_, _)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `reqwest`
[INFO] [stdout]   --> examples/disconnect-eval.rs:77:28
[INFO] [stdout]    |
[INFO] [stdout] 77 |                 let body = reqwest::get(url).unwrap().text().unwrap();
[INFO] [stdout]    |                            ^^^^^^^ use of undeclared crate or module `reqwest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]   --> examples/disconnect-eval.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             adblock::engine::Engine::from_rules(&rules)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------- argument #2 of type `adblock::lists::ParseOptions` is missing
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/adblock-0.7.17/src/engine.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn from_rules(rules: &[String], opts: ParseOptions) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] help: provide the argument
[INFO] [stdout]    |
[INFO] [stdout] 84 |             adblock::engine::Engine::from_rules(&rules, /* adblock::lists::ParseOptions */)
[INFO] [stdout]    |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `serialize` found for struct `Engine` in the current scope
[INFO] [stdout]    --> examples/disconnect-eval.rs:87:38
[INFO] [stdout]     |
[INFO] [stdout] 87  |         file.write_all(&brave_engine.serialize().unwrap()).unwrap();
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `deserialize` with a similar name, but with different arguments
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/adblock-0.7.17/src/engine.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn deserialize(&mut self, serialized: &[u8]) -> Result<(), BlockerError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `reqwest`
[INFO] [stdout]   --> examples/disconnect-eval.rs:94:32
[INFO] [stdout]    |
[INFO] [stdout] 94 |                     let body = reqwest::get(url).unwrap().text().unwrap();
[INFO] [stdout]    |                                ^^^^^^^ use of undeclared crate or module `reqwest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> examples/disconnect-eval.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |             adblock::engine::Engine::from_rules(&rules)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------- argument #2 of type `adblock::lists::ParseOptions` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/adblock-0.7.17/src/engine.rs:78:12
[INFO] [stdout]     |
[INFO] [stdout] 78  |     pub fn from_rules(rules: &[String], opts: ParseOptions) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 101 |             adblock::engine::Engine::from_rules(&rules, /* adblock::lists::ParseOptions */)
[INFO] [stdout]     |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `serialize` found for struct `Engine` in the current scope
[INFO] [stdout]    --> examples/disconnect-eval.rs:104:52
[INFO] [stdout]     |
[INFO] [stdout] 104 |         file.write_all(&brave_no_disconnect_engine.serialize().unwrap()).unwrap();
[INFO] [stdout]     |                                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `deserialize` with a similar name, but with different arguments
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/adblock-0.7.17/src/engine.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn deserialize(&mut self, serialized: &[u8]) -> Result<(), BlockerError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `reqwest`
[INFO] [stdout]    --> examples/disconnect-eval.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                 let body = reqwest::get(&url.to_string()).unwrap().text().unwrap();
[INFO] [stdout]     |                            ^^^^^^^ use of undeclared crate or module `reqwest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> examples/disconnect-eval.rs:127:13
[INFO] [stdout]     |
[INFO] [stdout] 127 |             adblock::engine::Engine::from_rules(&rules)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------- argument #2 of type `adblock::lists::ParseOptions` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/adblock-0.7.17/src/engine.rs:78:12
[INFO] [stdout]     |
[INFO] [stdout] 78  |     pub fn from_rules(rules: &[String], opts: ParseOptions) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 127 |             adblock::engine::Engine::from_rules(&rules, /* adblock::lists::ParseOptions */)
[INFO] [stdout]     |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `serialize` found for struct `Engine` in the current scope
[INFO] [stdout]    --> examples/disconnect-eval.rs:130:46
[INFO] [stdout]     |
[INFO] [stdout] 130 |         file.write_all(&ublock_origin_engine.serialize().unwrap()).unwrap();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `deserialize` with a similar name, but with different arguments
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/adblock-0.7.17/src/engine.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn deserialize(&mut self, serialized: &[u8]) -> Result<(), BlockerError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `tags_enable` found for struct `Engine` in the current scope
[INFO] [stdout]    --> examples/disconnect-eval.rs:144:22
[INFO] [stdout]     |
[INFO] [stdout] 144 |         brave_engine.tags_enable(&["fb-embeds", "twitter-embeds"]);
[INFO] [stdout]     |                      ^^^^^^^^^^^ method not found in `Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `tags_enable` found for struct `Engine` in the current scope
[INFO] [stdout]    --> examples/disconnect-eval.rs:146:36
[INFO] [stdout]     |
[INFO] [stdout] 146 |         brave_no_disconnect_engine.tags_enable(&["fb-embeds", "twitter-embeds"]);
[INFO] [stdout]     |                                    ^^^^^^^^^^^ method not found in `Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `serde_json`
[INFO] [stdout]    --> examples/disconnect-eval.rs:181:28
[INFO] [stdout]     |
[INFO] [stdout] 181 |             file.write_all(serde_json::to_string(&report).unwrap().as_bytes()).unwrap();
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared crate or module `serde_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `serde_json`
[INFO] [stdout]    --> examples/disconnect-eval.rs:194:38
[INFO] [stdout]     |
[INFO] [stdout] 194 |             let report: PageReport = serde_json::from_reader(std::io::BufReader::new(file)).unwrap();
[INFO] [stdout]     |                                      ^^^^^^^^^^ use of undeclared crate or module `serde_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> examples/disconnect-eval.rs:138:30
[INFO] [stdout]     |
[INFO] [stdout] 138 |             let mut engine = adblock::engine::Engine::from_rules(&[]);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----- argument #2 of type `adblock::lists::ParseOptions` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/adblock-0.7.17/src/engine.rs:78:12
[INFO] [stdout]     |
[INFO] [stdout] 78  |     pub fn from_rules(rules: &[String], opts: ParseOptions) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 138 |             let mut engine = adblock::engine::Engine::from_rules(&[], /* adblock::lists::ParseOptions */);
[INFO] [stdout]     |                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0308, E0412, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pagegraph` (example "disconnect-eval") due to 19 previous errors
[INFO] running `Command { std: "docker" "inspect" "0e3aac1f4b72018b255c0427526150ba87bb1a8c00f01de380655ca3f8a63d7c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e3aac1f4b72018b255c0427526150ba87bb1a8c00f01de380655ca3f8a63d7c", kill_on_drop: false }`
[INFO] [stdout] 0e3aac1f4b72018b255c0427526150ba87bb1a8c00f01de380655ca3f8a63d7c
