[INFO] fetching crate nodejs_package_json 0.3.0...
[INFO] checking nodejs_package_json-0.3.0 against master#39cb3386ddc6c71657418be28dbb3987eea4aa4b for pr-133536
[INFO] extracting crate nodejs_package_json 0.3.0 into /workspace/builds/worker-3-tc1/source
[INFO] validating manifest of crates.io crate nodejs_package_json 0.3.0 on toolchain 39cb3386ddc6c71657418be28dbb3987eea4aa4b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate nodejs_package_json 0.3.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate nodejs_package_json 0.3.0
[INFO] tweaked toml for crates.io crate nodejs_package_json 0.3.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 24 packages to latest compatible versions
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded miette v7.4.0
[INFO] [stderr]   Downloaded miette-derive v7.4.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 17c0a23b9660740643b41df9cc3a23db28ce9fe8fbf9c0555e6329de83f03775
[INFO] running `Command { std: "docker" "start" "-a" "17c0a23b9660740643b41df9cc3a23db28ce9fe8fbf9c0555e6329de83f03775", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "17c0a23b9660740643b41df9cc3a23db28ce9fe8fbf9c0555e6329de83f03775", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "17c0a23b9660740643b41df9cc3a23db28ce9fe8fbf9c0555e6329de83f03775", kill_on_drop: false }`
[INFO] [stdout] 17c0a23b9660740643b41df9cc3a23db28ce9fe8fbf9c0555e6329de83f03775
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3548db7e8a3c1c8e4532c53b87aeb1d83ce48916b8ccbba8cf4155cbfe006aaa
[INFO] running `Command { std: "docker" "start" "-a" "3548db7e8a3c1c8e4532c53b87aeb1d83ce48916b8ccbba8cf4155cbfe006aaa", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]    Compiling semver v1.0.23
[INFO] [stderr]     Checking rustc-hash v2.0.0
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking serde v1.0.215
[INFO] [stderr]     Checking indexmap v2.6.0
[INFO] [stderr]     Checking serde_json v1.0.133
[INFO] [stderr]     Checking nodejs_package_json v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `semver::Version`
[INFO] [stdout]  --> src/package_json.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use semver::Version;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `semver::Version`
[INFO] [stdout]  --> src/package_json.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use semver::Version;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Requirement` found for struct `std::string::String` in the current scope
[INFO] [stdout]  --> tests/version_protocol_test.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let exp = VersionProtocol::Requirement(VersionReq::parse("*").unwrap());
[INFO] [stdout]   |                                ^^^^^^^^^^^ associated item not found in `String`
[INFO] [stdout]   |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]  --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]  --> tests/workspace_protocol_test.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let exp = WorkspaceProtocol::Any { alias: None };
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Any` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let exp = <std::string::String as Example>::Any { alias: None };
[INFO] [stdout]   |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Requirement` found for struct `std::string::String` in the current scope
[INFO] [stdout]   --> tests/version_protocol_test.rs:16:32
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let exp = VersionProtocol::Requirement(VersionReq::parse("*").unwrap());
[INFO] [stdout]    |                                ^^^^^^^^^^^ associated item not found in `String`
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]   --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `File` found for struct `std::string::String` in the current scope
[INFO] [stdout]   --> tests/version_protocol_test.rs:24:32
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let exp = VersionProtocol::File(PathBuf::from("../dir"));
[INFO] [stdout]    |                                ^^^^ associated item not found in `String`
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]   --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] help: there is a method `le` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let exp = VersionProtocol::le(PathBuf::from("../dir"));
[INFO] [stdout]    |                                ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/version_protocol_test.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let exp = VersionProtocol::Git {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Git` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let exp = <std::string::String as Example>::Git {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/version_protocol_test.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let exp = VersionProtocol::Git {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Git` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let exp = <std::string::String as Example>::Git {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/version_protocol_test.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let exp = VersionProtocol::Git {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Git` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let exp = <std::string::String as Example>::Git {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/workspace_protocol_test.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let exp = WorkspaceProtocol::Any {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Any` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let exp = <std::string::String as Example>::Any {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/version_protocol_test.rs:71:15
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let exp = VersionProtocol::Git {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Git` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let exp = <std::string::String as Example>::Git {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/version_protocol_test.rs:88:15
[INFO] [stdout]    |
[INFO] [stdout] 88 |     let exp = VersionProtocol::GitHub {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `GitHub` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 88 |     let exp = <std::string::String as Example>::GitHub {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> tests/version_protocol_test.rs:100:15
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let exp = VersionProtocol::GitHub {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `GitHub` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let exp = <std::string::String as Example>::GitHub {
[INFO] [stdout]     |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Url` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/version_protocol_test.rs:115:32
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let exp = VersionProtocol::Url("http://domain.com/dep.tgz".into());
[INFO] [stdout]     |                                ^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/workspace_protocol_test.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let exp = WorkspaceProtocol::Tilde {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Tilde` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let exp = <std::string::String as Example>::Tilde {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/workspace_protocol_test.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let exp = WorkspaceProtocol::Tilde {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Tilde` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let exp = <std::string::String as Example>::Tilde {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/workspace_protocol_test.rs:54:15
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let exp = WorkspaceProtocol::Tilde {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Tilde` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let exp = <std::string::String as Example>::Tilde {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/workspace_protocol_test.rs:65:15
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let exp = WorkspaceProtocol::Tilde {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Tilde` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let exp = <std::string::String as Example>::Tilde {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/workspace_protocol_test.rs:82:15
[INFO] [stdout]    |
[INFO] [stdout] 82 |     let exp = WorkspaceProtocol::Caret {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Caret` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 82 |     let exp = <std::string::String as Example>::Caret {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/workspace_protocol_test.rs:93:15
[INFO] [stdout]    |
[INFO] [stdout] 93 |     let exp = WorkspaceProtocol::Caret {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Caret` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 93 |     let exp = <std::string::String as Example>::Caret {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> tests/workspace_protocol_test.rs:104:15
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let exp = WorkspaceProtocol::Caret {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Caret` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let exp = <std::string::String as Example>::Caret {
[INFO] [stdout]     |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> tests/workspace_protocol_test.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |         WorkspaceProtocol::Caret {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Caret` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]     |
[INFO] [stdout] 117 |         <std::string::String as Example>::Caret {
[INFO] [stdout]     |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> tests/workspace_protocol_test.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |         WorkspaceProtocol::Caret {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Caret` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]     |
[INFO] [stdout] 123 |         <std::string::String as Example>::Caret {
[INFO] [stdout]     |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Url` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/version_protocol_test.rs:126:32
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let exp = VersionProtocol::Url("https://domain.com/dep.tgz".into());
[INFO] [stdout]     |                                ^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Link` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/version_protocol_test.rs:137:32
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let exp = VersionProtocol::Link(PathBuf::from("../dir"));
[INFO] [stdout]     |                                ^^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> tests/package_json_test.rs:13:23
[INFO] [stdout]    |
[INFO] [stdout] 13 |         version: Some(Version::new(1, 2, 3)),
[INFO] [stdout]    |                  ---- ^^^^^^^^^^^^^^^^^^^^^- help: try using a conversion method: `.to_string()`
[INFO] [stdout]    |                  |    |
[INFO] [stdout]    |                  |    expected `String`, found `Version`
[INFO] [stdout]    |                  arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `Version` due to the type of the argument passed
[INFO] [stdout]   --> tests/package_json_test.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |         version: Some(Version::new(1, 2, 3)),
[INFO] [stdout]    |                  ^^^^^---------------------^
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this argument influences the type of `Some`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/core/src/option.rs:580:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Portal` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/version_protocol_test.rs:145:32
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let exp = VersionProtocol::Portal(PathBuf::from("../dir"));
[INFO] [stdout]     |                                ^^^^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Requirement` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/version_protocol_test.rs:153:32
[INFO] [stdout]     |
[INFO] [stdout] 153 |     let exp = VersionProtocol::Requirement(VersionReq::parse(">=1.2.3, <=4.5.6").unwrap());
[INFO] [stdout]     |                                ^^^^^^^^^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `File` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/workspace_protocol_test.rs:142:28
[INFO] [stdout]     |
[INFO] [stdout] 142 |         WorkspaceProtocol::File(PathBuf::from("../dir"))
[INFO] [stdout]     |                            ^^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] help: there is a method `le` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 142 |         WorkspaceProtocol::le(PathBuf::from("../dir"))
[INFO] [stdout]     |                            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0223, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0223`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `File` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/workspace_protocol_test.rs:145:28
[INFO] [stdout]     |
[INFO] [stdout] 145 |         WorkspaceProtocol::File(PathBuf::from("../dir")).to_string(),
[INFO] [stdout]     |                            ^^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] help: there is a method `le` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 145 |         WorkspaceProtocol::le(PathBuf::from("../dir")).to_string(),
[INFO] [stdout]     |                            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Requirement` found for struct `std::string::String` in the current scope
[INFO] [stdout]   --> tests/package_json_test.rs:37:34
[INFO] [stdout]    |
[INFO] [stdout] 37 |                 VersionProtocol::Requirement(VersionReq::parse("^1.20").unwrap()),
[INFO] [stdout]    |                                  ^^^^^^^^^^^ associated item not found in `String`
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]   --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Workspace` found for struct `std::string::String` in the current scope
[INFO] [stdout]   --> tests/package_json_test.rs:41:34
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 VersionProtocol::Workspace(WorkspaceProtocol::Any { alias: None }),
[INFO] [stdout]    |                                  ^^^^^^^^^ associated item not found in `String`
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]   --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `File` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/workspace_protocol_test.rs:154:28
[INFO] [stdout]     |
[INFO] [stdout] 154 |         WorkspaceProtocol::File(PathBuf::from("/dir"))
[INFO] [stdout]     |                            ^^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] help: there is a method `le` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 154 |         WorkspaceProtocol::le(PathBuf::from("/dir"))
[INFO] [stdout]     |                            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nodejs_package_json` (test "version_protocol_test") due to 14 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no associated item named `File` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/workspace_protocol_test.rs:157:28
[INFO] [stdout]     |
[INFO] [stdout] 157 |         WorkspaceProtocol::File(PathBuf::from("/dir")).to_string(),
[INFO] [stdout]     |                            ^^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] help: there is a method `le` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 157 |         WorkspaceProtocol::le(PathBuf::from("/dir")).to_string(),
[INFO] [stdout]     |                            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]   --> tests/package_json_test.rs:41:44
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 VersionProtocol::Workspace(WorkspaceProtocol::Any { alias: None }),
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if there were a trait named `Example` with associated type `Any` implemented for `std::string::String`, you could use the fully-qualified path
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 VersionProtocol::Workspace(<std::string::String as Example>::Any { alias: None }),
[INFO] [stdout]    |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Version` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/workspace_protocol_test.rs:166:28
[INFO] [stdout]     |
[INFO] [stdout] 166 |         WorkspaceProtocol::Version(Version::new(1, 2, 3))
[INFO] [stdout]     |                            ^^^^^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `Version` found for struct `std::string::String` in the current scope
[INFO] [stdout]    --> tests/workspace_protocol_test.rs:169:28
[INFO] [stdout]     |
[INFO] [stdout] 169 |         WorkspaceProtocol::Version(Version::new(1, 2, 3)).to_string(),
[INFO] [stdout]     |                            ^^^^^^^ associated item not found in `String`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `std::string::String` consider using one of the following associated functions:
[INFO] [stdout]       std::string::String::new
[INFO] [stdout]       std::string::String::with_capacity
[INFO] [stdout]       std::string::String::try_with_capacity
[INFO] [stdout]       std::string::String::from_utf8
[INFO] [stdout]       and 9 others
[INFO] [stdout]    --> /rustc/39cb3386ddc6c71657418be28dbb3987eea4aa4b/library/alloc/src/string.rs:446:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PackageJson: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/package_json_test.rs:56:38
[INFO] [stdout]      |
[INFO] [stdout] 56   |         serde_json::to_string_pretty(&pkg).unwrap(),
[INFO] [stdout]      |         ---------------------------- ^^^^ the trait `serde::ser::Serialize` is not implemented for `PackageJson`
[INFO] [stdout]      |         |
[INFO] [stdout]      |         required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Serialize)]` to your `PackageJson` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]              and 138 others
[INFO] [stdout] note: required by a bound in `to_string_pretty`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.133/src/ser.rs:2230:17
[INFO] [stdout]      |
[INFO] [stdout] 2228 | pub fn to_string_pretty<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        ---------------- required by a bound in this function
[INFO] [stdout] 2229 | where
[INFO] [stdout] 2230 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string_pretty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0223, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0223`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0223, E0277, E0308, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0223`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nodejs_package_json` (test "workspace_protocol_test") due to 17 previous errors
[INFO] [stderr] error: could not compile `nodejs_package_json` (test "package_json_test") due to 5 previous errors
[INFO] running `Command { std: "docker" "inspect" "3548db7e8a3c1c8e4532c53b87aeb1d83ce48916b8ccbba8cf4155cbfe006aaa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3548db7e8a3c1c8e4532c53b87aeb1d83ce48916b8ccbba8cf4155cbfe006aaa", kill_on_drop: false }`
[INFO] [stdout] 3548db7e8a3c1c8e4532c53b87aeb1d83ce48916b8ccbba8cf4155cbfe006aaa
