[INFO] fetching crate perl-path-security 0.12.1... [INFO] testing perl-path-security-0.12.1 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-1 [INFO] extracting crate perl-path-security 0.12.1 into /workspace/builds/worker-7-tc1/source [INFO] started tweaking crates.io crate perl-path-security 0.12.1 [INFO] finished tweaking crates.io crate perl-path-security 0.12.1 [INFO] tweaked toml for crates.io crate perl-path-security 0.12.1 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate perl-path-security 0.12.1 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate perl-path-security 0.12.1 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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded perl-path-normalize v0.12.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d51812fdca9515bf2c8c56a0e7bb6bb484fa35413db9a42273d4878687afa422 [INFO] running `Command { std: "docker" "start" "-a" "d51812fdca9515bf2c8c56a0e7bb6bb484fa35413db9a42273d4878687afa422", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d51812fdca9515bf2c8c56a0e7bb6bb484fa35413db9a42273d4878687afa422", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d51812fdca9515bf2c8c56a0e7bb6bb484fa35413db9a42273d4878687afa422", kill_on_drop: false }` [INFO] [stdout] d51812fdca9515bf2c8c56a0e7bb6bb484fa35413db9a42273d4878687afa422 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7632aaf32eb658a8b3b6e61270a643ce762f23c571c5c85385ef7b5251bf330b [INFO] running `Command { std: "docker" "start" "-a" "7632aaf32eb658a8b3b6e61270a643ce762f23c571c5c85385ef7b5251bf330b", kill_on_drop: false }` [INFO] [stderr] Compiling perl-path-normalize v0.12.1 [INFO] [stderr] Compiling perl-path-security v0.12.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.52s [INFO] running `Command { std: "docker" "inspect" "7632aaf32eb658a8b3b6e61270a643ce762f23c571c5c85385ef7b5251bf330b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7632aaf32eb658a8b3b6e61270a643ce762f23c571c5c85385ef7b5251bf330b", kill_on_drop: false }` [INFO] [stdout] 7632aaf32eb658a8b3b6e61270a643ce762f23c571c5c85385ef7b5251bf330b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4a58de9a67d6ed022487b81cd99a1e45904644f66011e0680217056d56f2f2eb [INFO] running `Command { std: "docker" "start" "-a" "4a58de9a67d6ed022487b81cd99a1e45904644f66011e0680217056d56f2f2eb", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling perl-path-security v0.12.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 4.09s [INFO] running `Command { std: "docker" "inspect" "4a58de9a67d6ed022487b81cd99a1e45904644f66011e0680217056d56f2f2eb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4a58de9a67d6ed022487b81cd99a1e45904644f66011e0680217056d56f2f2eb", kill_on_drop: false }` [INFO] [stdout] 4a58de9a67d6ed022487b81cd99a1e45904644f66011e0680217056d56f2f2eb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 79bc0c417a435f76c84450f2cd2e93eba98934134f0dffebc86ae69926d113c5 [INFO] running `Command { std: "docker" "start" "-a" "79bc0c417a435f76c84450f2cd2e93eba98934134f0dffebc86ae69926d113c5", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/perl_path_security-9398b500a66488e8) [INFO] [stdout] [INFO] [stdout] running 79 tests [INFO] [stdout] test tests::completion_path_helpers_work ... ok [INFO] [stdout] test tests::mixed_separator_behavior_matches_platform_rules ... ok [INFO] [stdout] test tests::completion_path_sanitization_blocks_traversal ... ok [INFO] [stdout] test tests::test_build_completion_path_directory_trailing_slash ... ok [INFO] [stdout] test tests::test_build_completion_path_dot_dir_directory ... ok [INFO] [stdout] test tests::test_build_completion_path_dot_dir ... ok [INFO] [stdout] test tests::test_build_completion_path_file_no_trailing_slash ... ok [INFO] [stdout] test tests::test_build_completion_path_strips_trailing_slash_on_dir_part ... ok [INFO] [stdout] test tests::allows_dot_files_inside_workspace ... ok [INFO] [stdout] test tests::test_absolute_path_inside_workspace_accepted ... ok [INFO] [stdout] test tests::test_absolute_path_outside_workspace_rejected ... ok [INFO] [stdout] test tests::test_chained_symlinks_escaping_workspace ... ok [INFO] [stdout] test tests::supports_current_directory_component ... ok [INFO] [stdout] test tests::test_completion_sanitize_allows_valid_paths ... ok [INFO] [stdout] test tests::test_completion_sanitize_blocks_absolute_paths ... ok [INFO] [stdout] test tests::test_completion_sanitize_blocks_parent_dir_various_forms ... ok [INFO] [stdout] test tests::test_completion_sanitize_blocks_windows_backslash_traversal ... ok [INFO] [stdout] test tests::test_completion_sanitize_null_byte ... ok [INFO] [stdout] test tests::test_control_char_backspace ... ok [INFO] [stdout] test tests::test_control_chars_in_safe_filename ... ok [INFO] [stdout] test tests::rejects_null_byte_injection ... ok [INFO] [stdout] test tests::test_double_dot_is_not_flagged_as_hidden ... ok [INFO] [stdout] test tests::test_control_char_bell ... ok [INFO] [stdout] test tests::test_empty_filename_rejected ... ok [INFO] [stdout] test tests::test_filename_exactly_255_chars ... ok [INFO] [stdout] test tests::test_filename_exactly_256_chars ... ok [INFO] [stdout] test tests::test_null_byte_at_end ... ok [INFO] [stdout] test tests::test_forbidden_directories ... ok [INFO] [stdout] test tests::test_non_hidden_entries_pass ... ok [INFO] [stdout] test tests::test_nonexistent_workspace_root_returns_error ... ok [INFO] [stdout] test tests::test_hidden_dotfile_detection ... ok [INFO] [stdout] test tests::test_control_char_newline_in_path ... ok [INFO] [stdout] test tests::test_completion_sanitize_normalizes_backslashes ... ok [INFO] [stdout] test tests::test_null_byte_in_safe_filename_check ... ok [INFO] [stdout] test tests::test_resolve_completion_base_nonexistent_returns_none ... ok [INFO] [stdout] test tests::test_resolve_completion_base_rejects_absolute ... ok [INFO] [stdout] test tests::test_null_byte_with_extension_truncation_attack ... ok [INFO] [stdout] test tests::test_split_completion_path_bare_filename ... ok [INFO] [stdout] test tests::test_control_char_carriage_return ... ok [INFO] [stdout] test tests::test_null_byte_at_start ... ok [INFO] [stdout] test tests::test_completion_sanitize_allows_root_slash ... ok [INFO] [stdout] test tests::test_split_completion_path_nested ... ok [INFO] [stdout] test tests::test_split_completion_path_trailing_slash ... ok [INFO] [stdout] test tests::test_null_byte_in_middle ... ok [INFO] [stdout] test tests::test_null_byte_in_completion_sanitize ... ok [INFO] [stdout] test tests::test_traversal_encoded_dot_segments_completion ... ok [INFO] [stdout] test tests::test_tab_is_allowed ... ok [INFO] [stdout] test tests::test_traversal_deeply_nested_escape ... ok [INFO] [stdout] test tests::test_unicode_bidi_override_in_filename ... ok [INFO] [stdout] test tests::test_symlink_within_workspace_is_allowed ... ok [INFO] [stdout] test tests::test_unicode_normalization_forms_treated_as_distinct ... ok [INFO] [stdout] test tests::test_traversal_windows_backslash_style ... ok [INFO] [stdout] test tests::test_traversal_parent_after_valid_descent ... ok [INFO] [stdout] test tests::test_unicode_arabic_filename_is_safe ... ok [INFO] [stdout] test tests::test_unicode_path_in_workspace_validation ... ok [INFO] [stdout] test tests::test_unicode_zero_width_space_in_filename ... ok [INFO] [stdout] test tests::test_very_long_filename_rejected ... ok [INFO] [stdout] test tests::test_windows_reserved_aux ... ok [INFO] [stdout] test tests::test_very_long_path_completion_sanitize ... ok [INFO] [stdout] test tests::test_windows_reserved_lpt_ports ... ok [INFO] [stdout] test tests::test_windows_reserved_partial_match_should_pass ... ok [INFO] [stdout] test tests::test_windows_reserved_com_ports ... ok [INFO] [stdout] test tests::test_unicode_emoji_filename_is_safe ... ok [INFO] [stdout] test tests::test_unicode_cjk_filename_is_safe ... ok [INFO] [stdout] test tests::test_windows_reserved_nul ... ok [INFO] [stdout] test tests::test_very_long_path_traversal_via_workspace_validation ... ok [INFO] [stdout] test tests::test_windows_reserved_con ... ok [INFO] [stdout] test tests::test_windows_reserved_prn ... ok [INFO] [stdout] test tests::test_windows_reserved_with_extension ... ok [INFO] [stdout] test tests::test_workspace_root_itself_is_valid ... ok [INFO] [stdout] test tests::validates_safe_relative_path ... ok [INFO] [stdout] test tests::test_resolve_completion_base_allows_dot ... ok [INFO] [stdout] test tests::test_single_dot_is_not_hidden ... ok [INFO] [stdout] test tests::test_symlink_escape_outside_workspace ... ok [INFO] [stdout] test tests::test_traversal_etc_passwd_unix ... ok [INFO] [stdout] test tests::test_traversal_mixed_forward_back_slash ... ok [INFO] [stdout] test tests::test_traversal_single_parent_at_root ... ok [INFO] [stdout] test tests::rejects_parent_directory_escape ... ok [INFO] [stdout] test tests::completion_filename_and_visibility_checks_work ... ok [INFO] [stderr] Doc-tests perl_path_security [INFO] [stdout] [INFO] [stdout] test result: ok. 79 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [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; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "79bc0c417a435f76c84450f2cd2e93eba98934134f0dffebc86ae69926d113c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "79bc0c417a435f76c84450f2cd2e93eba98934134f0dffebc86ae69926d113c5", kill_on_drop: false }` [INFO] [stdout] 79bc0c417a435f76c84450f2cd2e93eba98934134f0dffebc86ae69926d113c5