[INFO] cloning repository https://github.com/DavidTimms/rust-json-pretty-printer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/DavidTimms/rust-json-pretty-printer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDavidTimms%2Frust-json-pretty-printer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDavidTimms%2Frust-json-pretty-printer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b59ac075979f1ad69e4a95cba61bea3f2e53ce61
[INFO] testing DavidTimms/rust-json-pretty-printer/b59ac075979f1ad69e4a95cba61bea3f2e53ce61 against 1.98.0-beta.8+cargoflags=--release for beta-release-1.99-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDavidTimms%2Frust-json-pretty-printer" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/DavidTimms/rust-json-pretty-printer
[INFO] finished tweaking git repo https://github.com/DavidTimms/rust-json-pretty-printer
[INFO] tweaked toml for git repo https://github.com/DavidTimms/rust-json-pretty-printer written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/DavidTimms/rust-json-pretty-printer on toolchain 1.98.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/DavidTimms/rust-json-pretty-printer 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" "+1.98.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6
[INFO] running `Command { std: "docker" "start" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling json_pretty_printer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: associated items `array`, `object`, `get`, and `set` are never used
[INFO] [stdout]   --> src/ast.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Json {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn array() -> Json {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn object() -> Json {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn get(&self, property: &str) -> Option<&Json> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn set(self, property: &str, value: impl ToJson) -> Json {
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToJson` is never used
[INFO] [stdout]  --> src/dsl.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait ToJson {
[INFO] [stdout]   |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `json_to_string` is never used
[INFO] [stdout]   --> src/printer.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn json_to_string(value: &Json, indent: u64) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1.06s
[INFO] running `Command { std: "docker" "inspect" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling json_pretty_printer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 2.58s
[INFO] running `Command { std: "docker" "inspect" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/json_pretty_printer-69bb4e173d578b44)
[INFO] [stdout] 
[INFO] [stdout] running 78 tests
[INFO] [stdout] test ast::tests::get_returns_none_if_called_on_a_non_object ... ok
[INFO] [stdout] test ast::tests::get_returns_the_value_of_a_property_if_called_on_an_object ... ok
[INFO] [stdout] test ast::tests::set_can_be_chained_to_construct_an_object ... ok
[INFO] [stdout] test ast::tests::get_returns_none_if_the_property_is_not_in_the_object ... ok
[INFO] [stdout] test dsl::tests::a_bool_is_converted_to_a_json_boolean ... ok
[INFO] [stdout] test dsl::tests::a_btree_map_with_string_keys_is_converted_to_a_json_object ... ok
[INFO] [stdout] test dsl::tests::a_f32_is_converted_to_a_json_number ... ok
[INFO] [stdout] test dsl::tests::a_f64_is_converted_to_a_json_number ... ok
[INFO] [stdout] test dsl::tests::a_hash_map_with_string_keys_is_converted_to_a_json_object ... ok
[INFO] [stdout] test dsl::tests::a_str_is_converted_to_a_json_string ... ok
[INFO] [stdout] test dsl::tests::a_string_is_converted_to_a_json_string ... ok
[INFO] [stdout] test dsl::tests::an_array_of_key_value_pairs_is_converted_to_a_json_object ... ok
[INFO] [stdout] test dsl::tests::an_i32_is_converted_to_a_json_number ... ok
[INFO] [stdout] test dsl::tests::an_option_which_is_none_is_converted_to_a_json_null ... ok
[INFO] [stdout] test dsl::tests::an_option_which_is_some_is_converted_to_the_inner_types_json ... ok
[INFO] [stdout] test parser::tests::it_parses_a_decimal ... ok
[INFO] [stdout] test parser::tests::it_parses_a_nested_object ... ok
[INFO] [stdout] test parser::tests::it_parses_a_regular_ascii_string ... ok
[INFO] [stdout] test parser::tests::it_parses_a_nested_array ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_a_unicode_escape_sequence ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_an_escaped_backslash ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_an_escaped_backspace ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_an_escaped_carriage_return ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_an_escaped_double_quote ... ok
[INFO] [stdout] test dsl::tests::a_vec_is_converted_to_a_json_array ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_an_escaped_formfeed ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_an_escaped_linefeed ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_an_escaped_solidus ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_an_escaped_tab ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_an_escaped_unicode_surrogate_pair ... ok
[INFO] [stdout] test parser::tests::it_parses_a_string_with_contiguous_non_surrogate_unicode_escape_sequences ... ok
[INFO] [stdout] test parser::tests::it_parses_a_unicode_string ... ok
[INFO] [stdout] test parser::tests::it_parses_an_array_with_multiple_items ... ok
[INFO] [stdout] test ast::tests::set_has_no_effect_on_a_non_object ... ok
[INFO] [stdout] test parser::tests::it_parses_an_array_with_multiple_items_surrounded_by_whitespace ... ok
[INFO] [stdout] test parser::tests::it_parses_an_array_with_one_item ... ok
[INFO] [stdout] test parser::tests::it_parses_an_empty_array ... ok
[INFO] [stdout] test parser::tests::it_parses_an_empty_object ... ok
[INFO] [stdout] test parser::tests::it_parses_an_empty_string ... ok
[INFO] [stdout] test parser::tests::it_parses_an_integer ... ok
[INFO] [stdout] test parser::tests::it_parses_an_object_with_a_single_property ... ok
[INFO] [stdout] test parser::tests::it_parses_an_object_with_multiple_properties ... ok
[INFO] [stdout] test parser::tests::it_parses_false ... ok
[INFO] [stdout] test parser::tests::it_parses_inputs_with_leading_whitespace ... ok
[INFO] [stdout] test parser::tests::it_parses_inputs_with_trailing_whitespace ... ok
[INFO] [stdout] test parser::tests::it_parses_negative_numbers ... ok
[INFO] [stdout] test parser::tests::it_parses_null ... ok
[INFO] [stdout] test parser::tests::it_parses_numbers_with_exponents ... ok
[INFO] [stdout] test parser::tests::it_parses_true ... ok
[INFO] [stdout] test parser::tests::it_parses_zero ... ok
[INFO] [stdout] test parser::tests::it_rejects_an_invalid_array ... ok
[INFO] [stdout] test parser::tests::it_rejects_an_invalid_object ... ok
[INFO] [stdout] test parser::tests::it_rejects_invalid_numbers ... ok
[INFO] [stdout] test parser::tests::it_rejects_invalid_string_escape_sequences ... ok
[INFO] [stdout] test parser::tests::it_rejects_typos ... ok
[INFO] [stdout] test printer::tests::it_prints_a_nested_array_with_increasing_levels_of_indentation ... ok
[INFO] [stdout] test printer::tests::it_prints_a_nested_object_with_increasing_levels_of_indentation ... ok
[INFO] [stdout] test printer::tests::it_prints_a_string_with_a_solidus_without_escaping_it ... ok
[INFO] [stdout] test printer::tests::it_prints_a_string_with_an_escaped_backslash ... ok
[INFO] [stdout] test printer::tests::it_prints_a_string_with_an_escaped_control_characters ... ok
[INFO] [stdout] test printer::tests::it_prints_a_string_with_an_escaped_backspace ... ok
[INFO] [stdout] test printer::tests::it_prints_a_string_with_an_escaped_double_quote ... ok
[INFO] [stdout] test printer::tests::it_prints_a_string_with_an_escaped_formfeed ... ok
[INFO] [stdout] test printer::tests::it_prints_a_string_with_an_escaped_tab ... ok
[INFO] [stdout] test printer::tests::it_prints_an_array_with_one_element_per_line_with_2_space_indent ... ok
[INFO] [stdout] test printer::tests::it_prints_an_array_with_one_element_per_line_with_4_space_indent ... ok
[INFO] [stdout] test printer::tests::it_prints_an_empty_object_on_one_line ... ok
[INFO] [stdout] test printer::tests::it_prints_an_empty_array_on_one_line ... ok
[INFO] [stdout] test printer::tests::it_prints_an_object_with_one_key_per_line_with_2_space_indent ... ok
[INFO] [stdout] test printer::tests::it_prints_an_object_with_one_key_per_line_with_4_space_indent ... ok
[INFO] [stdout] test printer::tests::it_prints_ascii_strings ... ok
[INFO] [stdout] test printer::tests::it_prints_booleans ... ok
[INFO] [stdout] test printer::tests::it_prints_numbers ... ok
[INFO] [stdout] test printer::tests::it_prints_non_ascii_strings ... ok
[INFO] [stdout] test printer::tests::it_prints_null ... ok
[INFO] [stdout] test printer::tests::it_prints_a_string_with_an_escaped_carriage_return ... ok
[INFO] [stdout] test printer::tests::it_prints_a_string_with_an_escaped_linefeed ... ok
[INFO] [stdout] test dsl::tests::an_array_is_converted_to_a_json_array ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 78 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6", kill_on_drop: false }`
[INFO] [stdout] 8884cea835135cc9bdea59b2252c91d66b1e6feade3d217ae1da9b9288c21ff6
