[INFO] crate sliding_puzzle 1.0.0 is already in cache [INFO] extracting crate sliding_puzzle 1.0.0 into work/ex/beta-1.38-1/sources/1.37.0/reg/sliding_puzzle/1.0.0 [INFO] extracting crate sliding_puzzle 1.0.0 into work/ex/beta-1.38-1/sources/beta-2019-08-13/reg/sliding_puzzle/1.0.0 [INFO] validating manifest of sliding_puzzle-1.0.0 on toolchain 1.37.0 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of sliding_puzzle-1.0.0 on toolchain beta-2019-08-13 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing sliding_puzzle-1.0.0 [INFO] finished frobbing sliding_puzzle-1.0.0 [INFO] frobbed toml for sliding_puzzle-1.0.0 written to work/ex/beta-1.38-1/sources/1.37.0/reg/sliding_puzzle/1.0.0/Cargo.toml [INFO] started frobbing sliding_puzzle-1.0.0 [INFO] finished frobbing sliding_puzzle-1.0.0 [INFO] frobbed toml for sliding_puzzle-1.0.0 written to work/ex/beta-1.38-1/sources/beta-2019-08-13/reg/sliding_puzzle/1.0.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing sliding_puzzle-1.0.0 against 1.37.0 for beta-1.38-1 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-2/1.37.0:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/1.37.0/reg/sliding_puzzle/1.0.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+1.37.0" "build" "--frozen"` [INFO] [stdout] 9e140c4ba4aa9fa18c6c62bd5d4152909dd4e6cff3e8ff1ce70e580c1a03dff3 [INFO] running `"docker" "start" "-a" "9e140c4ba4aa9fa18c6c62bd5d4152909dd4e6cff3e8ff1ce70e580c1a03dff3"` [INFO] [stderr] warning: An explicit [[bench]] section is specified in Cargo.toml which currently [INFO] [stderr] disables Cargo from automatically inferring other benchmark targets. [INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following [INFO] [stderr] files will be included as a benchmark target: [INFO] [stderr] [INFO] [stderr] * /opt/crater/workdir/benches/slide_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/slide_mut_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/clone.rs [INFO] [stderr] * /opt/crater/workdir/benches/from_decimal_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/slide_mut.rs [INFO] [stderr] * /opt/crater/workdir/benches/slide.rs [INFO] [stderr] * /opt/crater/workdir/benches/moves.rs [INFO] [stderr] * /opt/crater/workdir/benches/from_decimal.rs [INFO] [stderr] * /opt/crater/workdir/benches/new.rs [INFO] [stderr] * /opt/crater/workdir/benches/to_decimal_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/scramble.rs [INFO] [stderr] * /opt/crater/workdir/benches/to_decimal.rs [INFO] [stderr] [INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be [INFO] [stderr] ready to be compiled as a benchmark target today. You can future-proof yourself [INFO] [stderr] and disable this warning by adding `autobenches = false` to your [package] [INFO] [stderr] section. You may also move the files to a location where Cargo would not [INFO] [stderr] automatically infer them to be a target, such as in subfolders. [INFO] [stderr] [INFO] [stderr] For more information on this warning you can consult [INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330 [INFO] [stderr] Compiling lehmer v2.0.0 [INFO] [stderr] Compiling sliding_puzzle v1.0.0 (/opt/crater/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.66s [INFO] running `"docker" "inspect" "9e140c4ba4aa9fa18c6c62bd5d4152909dd4e6cff3e8ff1ce70e580c1a03dff3"` [INFO] running `"docker" "rm" "-f" "9e140c4ba4aa9fa18c6c62bd5d4152909dd4e6cff3e8ff1ce70e580c1a03dff3"` [INFO] [stdout] 9e140c4ba4aa9fa18c6c62bd5d4152909dd4e6cff3e8ff1ce70e580c1a03dff3 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-2/1.37.0:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/1.37.0/reg/sliding_puzzle/1.0.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+1.37.0" "test" "--frozen" "--no-run"` [INFO] [stdout] c5ebb0bccaee5dd431796f8b117d21f33b8720bc8f5f2a55e0c9037c3f3248c2 [INFO] running `"docker" "start" "-a" "c5ebb0bccaee5dd431796f8b117d21f33b8720bc8f5f2a55e0c9037c3f3248c2"` [INFO] [stderr] warning: An explicit [[bench]] section is specified in Cargo.toml which currently [INFO] [stderr] disables Cargo from automatically inferring other benchmark targets. [INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following [INFO] [stderr] files will be included as a benchmark target: [INFO] [stderr] [INFO] [stderr] * /opt/crater/workdir/benches/slide_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/slide_mut_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/clone.rs [INFO] [stderr] * /opt/crater/workdir/benches/from_decimal_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/slide_mut.rs [INFO] [stderr] * /opt/crater/workdir/benches/slide.rs [INFO] [stderr] * /opt/crater/workdir/benches/moves.rs [INFO] [stderr] * /opt/crater/workdir/benches/from_decimal.rs [INFO] [stderr] * /opt/crater/workdir/benches/new.rs [INFO] [stderr] * /opt/crater/workdir/benches/to_decimal_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/scramble.rs [INFO] [stderr] * /opt/crater/workdir/benches/to_decimal.rs [INFO] [stderr] [INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be [INFO] [stderr] ready to be compiled as a benchmark target today. You can future-proof yourself [INFO] [stderr] and disable this warning by adding `autobenches = false` to your [package] [INFO] [stderr] section. You may also move the files to a location where Cargo would not [INFO] [stderr] automatically infer them to be a target, such as in subfolders. [INFO] [stderr] [INFO] [stderr] For more information on this warning you can consult [INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330 [INFO] [stderr] Compiling bencher v0.1.5 [INFO] [stderr] Compiling sliding_puzzle v1.0.0 (/opt/crater/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 4.84s [INFO] running `"docker" "inspect" "c5ebb0bccaee5dd431796f8b117d21f33b8720bc8f5f2a55e0c9037c3f3248c2"` [INFO] running `"docker" "rm" "-f" "c5ebb0bccaee5dd431796f8b117d21f33b8720bc8f5f2a55e0c9037c3f3248c2"` [INFO] [stdout] c5ebb0bccaee5dd431796f8b117d21f33b8720bc8f5f2a55e0c9037c3f3248c2 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-2/1.37.0:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/1.37.0/reg/sliding_puzzle/1.0.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+1.37.0" "test" "--frozen"` [INFO] [stdout] e306b37d83332104c28fb83e4498dd7e45499412edbe5bdba71ab6386a7da287 [INFO] running `"docker" "start" "-a" "e306b37d83332104c28fb83e4498dd7e45499412edbe5bdba71ab6386a7da287"` [INFO] [stderr] warning: An explicit [[bench]] section is specified in Cargo.toml which currently [INFO] [stderr] disables Cargo from automatically inferring other benchmark targets. [INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following [INFO] [stderr] files will be included as a benchmark target: [INFO] [stderr] [INFO] [stderr] * /opt/crater/workdir/benches/slide_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/slide_mut_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/clone.rs [INFO] [stderr] * /opt/crater/workdir/benches/from_decimal_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/slide_mut.rs [INFO] [stderr] * /opt/crater/workdir/benches/slide.rs [INFO] [stderr] * /opt/crater/workdir/benches/moves.rs [INFO] [stderr] * /opt/crater/workdir/benches/from_decimal.rs [INFO] [stderr] * /opt/crater/workdir/benches/new.rs [INFO] [stderr] * /opt/crater/workdir/benches/to_decimal_unchecked.rs [INFO] [stderr] * /opt/crater/workdir/benches/scramble.rs [INFO] [stderr] * /opt/crater/workdir/benches/to_decimal.rs [INFO] [stderr] [INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be [INFO] [stderr] ready to be compiled as a benchmark target today. You can future-proof yourself [INFO] [stderr] and disable this warning by adding `autobenches = false` to your [package] [INFO] [stderr] section. You may also move the files to a location where Cargo would not [INFO] [stderr] automatically infer them to be a target, such as in subfolders. [INFO] [stderr] [INFO] [stderr] For more information on this warning you can consult [INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330 [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.02s [INFO] [stderr] Running /opt/crater/target/debug/deps/sliding_puzzle-f261fba72a7c2aba [INFO] [stdout] [INFO] [stdout] running 55 tests [INFO] [stdout] test base::test::blank_is_on_the_x::blank_is_on_the_top::it_returns_the_expected_true_false_values ... ok [INFO] [stdout] test base::test::blank_is_on_the_x::blank_is_on_the_right::it_returns_the_expected_true_false_values ... ok [INFO] [stdout] test base::test::blank_is_on_the_x::blank_is_on_the_bottom::it_returns_the_expected_true_false_values ... ok [INFO] [stdout] test base::test::blank_is_on_the_x::blank_is_on_the_left::it_returns_the_expected_true_false_values ... ok [INFO] [stdout] test base::test::from_decimal::it_constructs_a_puzzle_from_the_factorial_base_number_in_general ... ok [INFO] [stdout] test base::test::from_decimal::it_errors_if_columns_is_zero ... ok [INFO] [stdout] test base::test::from_decimal::it_errors_if_n_is_too_large ... ok [INFO] [stdout] test base::test::from_decimal_unchecked::it_constructs_a_puzzle_from_the_factorial_base_number_in_general ... ok [INFO] [stdout] test base::test::from_decimal_unchecked::it_constructs_a_puzzle_with_sequential_tiles_for_zero ... ok [INFO] [stdout] test base::test::get::it_gets_the_tile_at_x_y_position ... ok [INFO] [stdout] test base::test::in_bounds::it_returns_true_if_the_x_y_position_is_in_bounds ... ok [INFO] [stdout] test base::test::move_is_valid::it_returns_whether_the_move_can_be_made_in_the_puzzle ... ok [INFO] [stdout] test base::test::get::it_returns_none_if_out_of_bounds ... ok [INFO] [stdout] test base::test::from_decimal::it_errors_if_the_puzzle_contains_more_than_twenty_tiles ... ok [INFO] [stdout] test base::test::moves::it_returns_four_directions_when_the_blank_is_in_the_middle ... ok [INFO] [stdout] test base::test::moves::it_returns_three_directions_when_the_blank_is_at_an_edge ... ok [INFO] [stdout] test base::test::moves::it_returns_two_directions_when_the_blank_is_in_a_corner ... ok [INFO] [stdout] test base::test::new::it_can_be_used_in_a_generic_way ... ok [INFO] [stdout] test base::test::new::it_errors_if_the_puzzle_contains_more_than_one_blank ... ok [INFO] [stdout] test base::test::new::it_errors_if_the_puzzle_doesnt_contain_a_blank ... ok [INFO] [stdout] test base::test::new::it_errors_if_the_puzzle_has_no_columns ... ok [INFO] [stdout] test base::test::from_decimal::it_errors_if_rows_is_zero ... ok [INFO] [stdout] test base::test::new::it_errors_if_the_puzzle_has_no_rows ... ok [INFO] [stdout] test base::test::new::it_errors_if_the_puzzle_isnt_rectangular ... ok [INFO] [stdout] test base::test::new::it_initializes_correctly_when_theres_a_single_row ... ok [INFO] [stdout] test base::test::new::it_is_initialized_with_a_2d_slice ... ok [INFO] [stdout] test base::test::position::it_finds_the_x_y_position_of_the_tile ... ok [INFO] [stdout] test base::test::position::it_returns_none_if_the_tile_cant_be_found ... ok [INFO] [stdout] test base::test::slide::it_does_not_mutate_the_subject ... ok [INFO] [stdout] test base::test::slide::it_errors_if_the_move_is_invalid ... ok [INFO] [stdout] test base::test::slide::it_slides_a_tile_in_the_direction_of_the_blank ... ok [INFO] [stdout] test base::test::slide_mut::it_does_not_mutate_the_puzzle_if_the_move_is_invalid ... ok [INFO] [stdout] test base::test::slide_mut::it_errors_if_the_move_is_invalid ... ok [INFO] [stdout] test base::test::slide_mut::it_slides_a_tile_in_the_direction_of_the_blank ... ok [INFO] [stdout] test base::test::slide_mut_unchecked::it_can_be_chained_for_convenience ... ok [INFO] [stdout] test base::test::slide_mut_unchecked::it_might_not_panic_if_the_move_is_invalid ... ok [INFO] [stdout] test base::test::scramble::it_does_not_immediately_double_back_on_itself ... ok [INFO] [stdout] test base::test::slide_mut_unchecked::it_slides_a_tile_in_the_direction_of_the_blank ... ok [INFO] [stdout] test base::test::slide_unchecked::it_can_be_chained_for_convenience ... ok [INFO] [stdout] test base::test::slide_unchecked::it_might_not_panic_if_the_move_is_invalid ... ok [INFO] [stdout] test base::test::slide_unchecked::it_does_not_mutate_the_subject ... ok [INFO] [stdout] test base::test::slide_unchecked::it_slides_a_tile_in_the_direction_of_the_blank ... ok [INFO] [stdout] test base::test::tiles::it_reconstructs_the_2d_representation_of_the_puzzle ... ok [INFO] [stdout] test base::test::to_decimal::it_returns_the_factorial_base_number_in_general ... ok [INFO] [stdout] test direction::test::opposite::it_returns_the_opposite_direction ... ok [INFO] [stdout] test direction::test::x::it_returns_the_x_offset_relative_to_the_blank_for_the_moving_tile ... ok [INFO] [stdout] test direction::test::y::it_returns_the_y_offset_relative_to_the_blank_for_the_moving_tile ... ok [INFO] [stdout] test error::test::fmt::it_formats_the_error ... ok [INFO] [stdout] test error::test::new::it_is_initialized_with_a_description ... ok [INFO] [stdout] test base::test::to_decimal::it_errors_if_the_puzzle_doesnt_contain_zero_through_n_minus_one ... ok [INFO] [stdout] test base::test::scramble::it_slides_in_a_random_direction_a_number_of_times ... ok [INFO] [stdout] test base::test::to_decimal_unchecked::it_returns_the_factorial_base_number_in_general ... ok [INFO] [stdout] test base::test::to_decimal_unchecked::it_returns_zero_if_the_tiles_are_in_sequence ... ok [INFO] [stdout] test base::test::slide_unchecked::it_might_panic_if_the_move_is_invalid ... ok [INFO] [stdout] test base::test::slide_mut_unchecked::it_might_panic_if_the_move_is_invalid ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 55 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/crater/target/debug/deps/search-17b83dca5f20b77a [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/crater/target/debug/deps/sliding_puzzle_test-67180062f9b51c88 [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test it_works_for_the_example_in_the_readme ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests sliding_puzzle [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "e306b37d83332104c28fb83e4498dd7e45499412edbe5bdba71ab6386a7da287"` [INFO] running `"docker" "rm" "-f" "e306b37d83332104c28fb83e4498dd7e45499412edbe5bdba71ab6386a7da287"` [INFO] [stdout] e306b37d83332104c28fb83e4498dd7e45499412edbe5bdba71ab6386a7da287