[INFO] fetching crate ansi-str-forked 0.8.0...
[INFO] testing ansi-str-forked-0.8.0 against 1.83.0 for beta-1.84.0-4-retry
[INFO] extracting crate ansi-str-forked 0.8.0 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate ansi-str-forked 0.8.0 on toolchain 1.83.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.83.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ansi-str-forked 0.8.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate ansi-str-forked 0.8.0
[INFO] tweaked toml for crates.io crate ansi-str-forked 0.8.0 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate crates.io crate ansi-str-forked 0.8.0 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.83.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ansitok-forked v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 174962230cb14c399497956b6d006979c101a51bca4b4f279da469b7053836ad
[INFO] running `Command { std: "docker" "start" "-a" "174962230cb14c399497956b6d006979c101a51bca4b4f279da469b7053836ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "174962230cb14c399497956b6d006979c101a51bca4b4f279da469b7053836ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "174962230cb14c399497956b6d006979c101a51bca4b4f279da469b7053836ad", kill_on_drop: false }`
[INFO] [stdout] 174962230cb14c399497956b6d006979c101a51bca4b4f279da469b7053836ad
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 24bea1d06a048afc82c686039ba02ed55e07136835f94f8e33213aff073e9940
[INFO] running `Command { std: "docker" "start" "-a" "24bea1d06a048afc82c686039ba02ed55e07136835f94f8e33213aff073e9940", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling arrayvec v0.5.2
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling vte_generate_state_changes v0.1.2
[INFO] [stderr]    Compiling vte v0.10.1
[INFO] [stderr]    Compiling ansitok-forked v0.2.0
[INFO] [stderr]    Compiling ansi-str-forked v0.8.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.00s
[INFO] running `Command { std: "docker" "inspect" "24bea1d06a048afc82c686039ba02ed55e07136835f94f8e33213aff073e9940", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "24bea1d06a048afc82c686039ba02ed55e07136835f94f8e33213aff073e9940", kill_on_drop: false }`
[INFO] [stdout] 24bea1d06a048afc82c686039ba02ed55e07136835f94f8e33213aff073e9940
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e3169c05690c78cd605d0e69e653b9c3706c7e953451ad415e01ec23b4d90469
[INFO] running `Command { std: "docker" "start" "-a" "e3169c05690c78cd605d0e69e653b9c3706c7e953451ad415e01ec23b4d90469", kill_on_drop: false }`
[INFO] [stderr]    Compiling owo-colors v3.5.0
[INFO] [stderr]    Compiling ansi-str-forked v0.8.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.55s
[INFO] running `Command { std: "docker" "inspect" "e3169c05690c78cd605d0e69e653b9c3706c7e953451ad415e01ec23b4d90469", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e3169c05690c78cd605d0e69e653b9c3706c7e953451ad415e01ec23b4d90469", kill_on_drop: false }`
[INFO] [stdout] e3169c05690c78cd605d0e69e653b9c3706c7e953451ad415e01ec23b4d90469
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 9b6c79d91a04d6238f851fe67979051eb4740ea788b032f8e4cf5d6c00af317c
[INFO] running `Command { std: "docker" "start" "-a" "9b6c79d91a04d6238f851fe67979051eb4740ea788b032f8e4cf5d6c00af317c", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ansi_str_forked-e4686a31b0d3f1e6)
[INFO] [stdout] 
[INFO] [stdout] running 34 tests
[INFO] [stdout] test tests::ansi_get_test ... ok
[INFO] [stdout] test tests::ansi_get_test_1 ... ok
[INFO] [stdout] test tests::ansi_split4_test_hide ... ok
[INFO] [stdout] test tests::ansi_split2_test ... ok
[INFO] [stdout] test tests::ansi_get_test_0 ... ok
[INFO] [stdout] test tests::cut_colored_bg_fg_test ... ok
[INFO] [stdout] test tests::cut_colored_bg_test ... ok
[INFO] [stdout] test tests::cut_colored_x_x_test ... ok
[INFO] [stdout] test tests::cut_colored_fg_test ... ok
[INFO] [stdout] test tests::ansi_split3_test_reverse ... ok
[INFO] [stdout] test tests::cut_emojies_test ... ok
[INFO] [stdout] test tests::cut_keep_general_color_test ... ok
[INFO] [stdout] test tests::cut_no_colored_str ... ok
[INFO] [stdout] test tests::cut_partially_colored_str_test ... ok
[INFO] [stdout] test tests::ends_with_test ... ok
[INFO] [stdout] test tests::ends_with_uses_chars_so_dont_panic_test ... ok
[INFO] [stdout] test tests::find_test ... ok
[INFO] [stdout] test tests::cut_dont_panic_on_exceeding_lower_bound ... ok
[INFO] [stdout] test tests::cut_dont_panic_on_exceeding_upper_bound ... ok
[INFO] [stdout] test tests::split_at_color_preservation_test ... ok
[INFO] [stdout] test tests::split_at_test ... ok
[INFO] [stdout] test tests::split_dont_panic_on_exceeding_mid ... ok
[INFO] [stdout] test tests::split_test ... ok
[INFO] [stdout] test tests::font_usage_test ... ok
[INFO] [stdout] test tests::starts_with_test ... ok
[INFO] [stdout] test tests::starts_with_uses_chars_so_dont_panic_test ... ok
[INFO] [stdout] test tests::strip_prefix_test ... ok
[INFO] [stdout] test tests::strip_suffix_test ... ok
[INFO] [stdout] test tests::trim_test ... ok
[INFO] [stdout] test tests::get_blocks_test ... ok
[INFO] [stdout] test tests::cut_a_mid_of_emojie_0_test - should panic ... ok
[INFO] [stdout] test tests::cut_a_mid_of_emojie_1_test - should panic ... ok
[INFO] [stdout] test tests::split_of_emojie_test - should panic ... ok
[INFO] [stdout] test tests::cut_a_mid_of_emojie_2_test - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests ansi_str_forked
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test src/lib.rs - (line 33) ... ignored
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_ends_with (line 354) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_cut (line 124) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_cut (line 136) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_get (line 96) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_get (line 77) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 13) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_has_any (line 406) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_find (line 183) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_split_at (line 301) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_strip_prefix (line 206) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_starts_with (line 334) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_strip (line 388) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_split_at (line 315) ... FAILED
[INFO] [stdout] test src/lib.rs - get_blocks (line 1084) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_is_char_boundary (line 155) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_split (line 253) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_strip_suffix (line 236) ... FAILED
[INFO] [stdout] test src/lib.rs - AnsiStr::ansi_trim (line 372) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_ends_with (line 354) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:356:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_ends_with` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:360:17
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert!(bananas.ansi_ends_with("anas"));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:363:8
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn ansi_ends_with(&self, pat: &str) -> bool;
[INFO] [stdout]     |        -------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_ends_with` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ends_with` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert!(bananas.ends_with("anas"));
[INFO] [stdout]     |                 ~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_ends_with` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:361:18
[INFO] [stdout]     |
[INFO] [stdout] 9   | assert!(!bananas.ansi_ends_with("nana"));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:363:8
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn ansi_ends_with(&self, pat: &str) -> bool;
[INFO] [stdout]     |        -------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_ends_with` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ends_with` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 9   | assert!(!bananas.ends_with("nana"));
[INFO] [stdout]     |                  ~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_cut (line 124) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:126:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_cut` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:129:19
[INFO] [stdout]     |
[INFO] [stdout] 7   | assert_eq!("🗻", v.ansi_cut(0..4).ansi_strip());
[INFO] [stdout]     |                    ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:143:8
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn ansi_cut<I>(&self, i: I) -> Cow<'_, str>
[INFO] [stdout]     |        -------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_cut` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_get` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 7   | assert_eq!("🗻", v.ansi_get(0..4).ansi_strip());
[INFO] [stdout]     |                    ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_cut` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:130:22
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!("🗻 on", v.ansi_cut(..7).ansi_strip());
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:143:8
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn ansi_cut<I>(&self, i: I) -> Cow<'_, str>
[INFO] [stdout]     |        -------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_cut` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_get` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!("🗻 on", v.ansi_get(..7).ansi_strip());
[INFO] [stdout]     |                       ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_cut` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:131:23
[INFO] [stdout]     |
[INFO] [stdout] 9   | assert_eq!("the 🌏", v.ansi_cut(8..).ansi_strip());
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:143:8
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn ansi_cut<I>(&self, i: I) -> Cow<'_, str>
[INFO] [stdout]     |        -------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_cut` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_get` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 9   | assert_eq!("the 🌏", v.ansi_get(8..).ansi_strip());
[INFO] [stdout]     |                        ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_cut (line 136) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:138:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_cut` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:141:3
[INFO] [stdout]     |
[INFO] [stdout] 7   | v.ansi_cut(1..);
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:143:8
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn ansi_cut<I>(&self, i: I) -> Cow<'_, str>
[INFO] [stdout]     |        -------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_cut` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_get` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 7   | v.ansi_get(1..);
[INFO] [stdout]     |   ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_get (line 96) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:97:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_get` found for reference `&str` in the current scope
[INFO] [stdout]  --> src/lib.rs:101:39
[INFO] [stdout]   |
[INFO] [stdout] 7 | assert_eq!(Some("on the 🌏".into()), v.ansi_get(5..));
[INFO] [stdout]   |                                        ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_get` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]   |
[INFO] [stdout] 2 + use ansi_str_forked::AnsiStr;
[INFO] [stdout]   |
[INFO] [stdout] help: there is a method `ansi_cut` with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 7 | assert_eq!(Some("on the 🌏".into()), v.ansi_cut(5..));
[INFO] [stdout]   |                                        ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_get (line 77) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:79:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_get` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:83:53
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!(Some("🗻 on".red().to_string().into()), v.ansi_get(0..7));
[INFO] [stdout]     |                                                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn ansi_get<I>(&self, i: I) -> Option<Cow<'_, str>>
[INFO] [stdout]     |        -------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_get` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_cut` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!(Some("🗻 on".red().to_string().into()), v.ansi_cut(0..7));
[INFO] [stdout]     |                                                      ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_get` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:86:11
[INFO] [stdout]     |
[INFO] [stdout] 11  | assert!(v.ansi_get(1..).is_none());
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn ansi_get<I>(&self, i: I) -> Option<Cow<'_, str>>
[INFO] [stdout]     |        -------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_get` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_cut` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 11  | assert!(v.ansi_cut(1..).is_none());
[INFO] [stdout]     |           ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_get` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:87:11
[INFO] [stdout]     |
[INFO] [stdout] 12  | assert!(v.ansi_get(..13).is_none());
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn ansi_get<I>(&self, i: I) -> Option<Cow<'_, str>>
[INFO] [stdout]     |        -------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_get` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_cut` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 12  | assert!(v.ansi_cut(..13).is_none());
[INFO] [stdout]     |           ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_get` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:90:11
[INFO] [stdout]     |
[INFO] [stdout] 15  | assert!(v.ansi_get(..std::usize::MAX).is_some());
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn ansi_get<I>(&self, i: I) -> Option<Cow<'_, str>>
[INFO] [stdout]     |        -------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_get` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_cut` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 15  | assert!(v.ansi_cut(..std::usize::MAX).is_some());
[INFO] [stdout]     |           ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_get` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:91:11
[INFO] [stdout]     |
[INFO] [stdout] 16  | assert!(v.ansi_get(std::usize::MAX..).is_some());
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn ansi_get<I>(&self, i: I) -> Option<Cow<'_, str>>
[INFO] [stdout]     |        -------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_get` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_cut` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 16  | assert!(v.ansi_cut(std::usize::MAX..).is_some());
[INFO] [stdout]     |           ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 13) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:15:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_split_at` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:18:28
[INFO] [stdout]     |
[INFO] [stdout] 7   | let (hello, world) = hello.ansi_split_at(6);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:323:8
[INFO] [stdout]     |
[INFO] [stdout] 323 |     fn ansi_split_at(&self, mid: usize) -> (Cow<'_, str>, Cow<'_, str>);
[INFO] [stdout]     |        ------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_split_at` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_split` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 7   | let (hello, world) = hello.ansi_split(6);
[INFO] [stdout]     |                            ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_has_any (line 406) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:408:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_has_any` found for reference `&'static str` in the current scope
[INFO] [stdout]  --> src/lib.rs:410:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | assert!(!"Hi".ansi_has_any());
[INFO] [stdout]   |               ^^^^^^^^^^^^ method not found in `&str`
[INFO] [stdout]   |
[INFO] [stdout]   = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_has_any` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]   |
[INFO] [stdout] 2 + use ansi_str_forked::AnsiStr;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_has_any` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:411:32
[INFO] [stdout]     |
[INFO] [stdout] 7   | assert!("Hi".red().to_string().ansi_has_any());
[INFO] [stdout]     |                                ^^^^^^^^^^^^ method not found in `String`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:413:8
[INFO] [stdout]     |
[INFO] [stdout] 413 |     fn ansi_has_any(&self) -> bool;
[INFO] [stdout]     |        ------------ the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_has_any` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_find (line 183) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:185:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_find` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:189:14
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!(s.ansi_find("L"), Some(0));
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 |     fn ansi_find(&self, pat: &str) -> Option<usize>;
[INFO] [stdout]     |        --------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_find` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rfind` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!(s.rfind("L"), Some(0));
[INFO] [stdout]     |              ~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_find` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:190:14
[INFO] [stdout]     |
[INFO] [stdout] 9   | assert_eq!(s.ansi_find("é"), Some(14));
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 |     fn ansi_find(&self, pat: &str) -> Option<usize>;
[INFO] [stdout]     |        --------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_find` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rfind` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 9   | assert_eq!(s.rfind("é"), Some(14));
[INFO] [stdout]     |              ~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_find` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:191:14
[INFO] [stdout]     |
[INFO] [stdout] 10  | assert_eq!(s.ansi_find("pard"), Some(17));
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 |     fn ansi_find(&self, pat: &str) -> Option<usize>;
[INFO] [stdout]     |        --------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_find` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rfind` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 10  | assert_eq!(s.rfind("pard"), Some(17));
[INFO] [stdout]     |              ~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_split_at (line 301) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:303:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_split_at` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:307:23
[INFO] [stdout]     |
[INFO] [stdout] 8   | let (first, last) = s.ansi_split_at(3);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:323:8
[INFO] [stdout]     |
[INFO] [stdout] 323 |     fn ansi_split_at(&self, mid: usize) -> (Cow<'_, str>, Cow<'_, str>);
[INFO] [stdout]     |        ------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_split_at` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_split` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | let (first, last) = s.ansi_split(3);
[INFO] [stdout]     |                       ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_strip_prefix (line 206) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:208:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_strip_prefix` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:211:33
[INFO] [stdout]     |
[INFO] [stdout] 7   |     "foo:bar".red().to_string().ansi_strip_prefix("foo:"),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:223:8
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn ansi_strip_prefix(&self, prefix: &str) -> Option<Cow<'_, str>>;
[INFO] [stdout]     |        ----------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_strip_prefix` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `strip_prefix` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 7   |     "foo:bar".red().to_string().strip_prefix("foo:"),
[INFO] [stdout]     |                                 ~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_strip_prefix` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:215:33
[INFO] [stdout]     |
[INFO] [stdout] 11  |     "foo:bar".red().to_string().ansi_strip_prefix("bar"),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:223:8
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn ansi_strip_prefix(&self, prefix: &str) -> Option<Cow<'_, str>>;
[INFO] [stdout]     |        ----------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_strip_prefix` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `strip_prefix` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 11  |     "foo:bar".red().to_string().strip_prefix("bar"),
[INFO] [stdout]     |                                 ~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_strip_prefix` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:219:32
[INFO] [stdout]     |
[INFO] [stdout] 15  |     "foofoo".red().to_string().ansi_strip_prefix("foo"),
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:223:8
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn ansi_strip_prefix(&self, prefix: &str) -> Option<Cow<'_, str>>;
[INFO] [stdout]     |        ----------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_strip_prefix` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `strip_prefix` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 15  |     "foofoo".red().to_string().strip_prefix("foo"),
[INFO] [stdout]     |                                ~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_starts_with (line 334) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:336:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_starts_with` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:340:17
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert!(bananas.ansi_starts_with("bana"));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:343:8
[INFO] [stdout]     |
[INFO] [stdout] 343 |     fn ansi_starts_with(&self, pat: &str) -> bool;
[INFO] [stdout]     |        ---------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_starts_with` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `starts_with` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert!(bananas.starts_with("bana"));
[INFO] [stdout]     |                 ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_starts_with` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:341:18
[INFO] [stdout]     |
[INFO] [stdout] 9   | assert!(!bananas.ansi_starts_with("nana"));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:343:8
[INFO] [stdout]     |
[INFO] [stdout] 343 |     fn ansi_starts_with(&self, pat: &str) -> bool;
[INFO] [stdout]     |        ---------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_starts_with` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `starts_with` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 9   | assert!(!bananas.starts_with("nana"));
[INFO] [stdout]     |                  ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_strip (line 388) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:390:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_strip` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:394:18
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!(hello.ansi_strip(), "Hello World!");
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:396:8
[INFO] [stdout]     |
[INFO] [stdout] 396 |     fn ansi_strip(&self) -> Cow<'_, str>;
[INFO] [stdout]     |        ---------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_strip` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `as_str` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!(hello.as_str(), "Hello World!");
[INFO] [stdout]     |                  ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_split_at (line 315) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:316:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_split_at` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:321:3
[INFO] [stdout]     |
[INFO] [stdout] 8   | s.ansi_split_at(13);
[INFO] [stdout]     |   ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:323:8
[INFO] [stdout]     |
[INFO] [stdout] 323 |     fn ansi_split_at(&self, mid: usize) -> (Cow<'_, str>, Cow<'_, str>);
[INFO] [stdout]     |        ------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_split_at` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_split` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | s.ansi_split(13);
[INFO] [stdout]     |   ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - get_blocks (line 1084) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:1086:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::get_blocks;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_is_char_boundary (line 155) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:157:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_is_char_boundary` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:161:11
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert!(s.ansi_is_char_boundary(0));
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn ansi_is_char_boundary(&self, index: usize) -> bool;
[INFO] [stdout]     |        --------------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_is_char_boundary` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `is_char_boundary` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert!(s.is_char_boundary(0));
[INFO] [stdout]     |           ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_is_char_boundary` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:163:11
[INFO] [stdout]     |
[INFO] [stdout] 10  | assert!(s.ansi_is_char_boundary(6));
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn ansi_is_char_boundary(&self, index: usize) -> bool;
[INFO] [stdout]     |        --------------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_is_char_boundary` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `is_char_boundary` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 10  | assert!(s.is_char_boundary(6));
[INFO] [stdout]     |           ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_is_char_boundary` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 11  | assert!(s.ansi_is_char_boundary(s.ansi_strip().len()));
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn ansi_is_char_boundary(&self, index: usize) -> bool;
[INFO] [stdout]     |        --------------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_is_char_boundary` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `is_char_boundary` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 11  | assert!(s.is_char_boundary(s.ansi_strip().len()));
[INFO] [stdout]     |           ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_strip` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:164:35
[INFO] [stdout]     |
[INFO] [stdout] 11  | assert!(s.ansi_is_char_boundary(s.ansi_strip().len()));
[INFO] [stdout]     |                                   ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:396:8
[INFO] [stdout]     |
[INFO] [stdout] 396 |     fn ansi_strip(&self) -> Cow<'_, str>;
[INFO] [stdout]     |        ---------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_strip` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `as_str` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 11  | assert!(s.ansi_is_char_boundary(s.as_str().len()));
[INFO] [stdout]     |                                   ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_is_char_boundary` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 14  | assert!(!s.ansi_is_char_boundary(2));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn ansi_is_char_boundary(&self, index: usize) -> bool;
[INFO] [stdout]     |        --------------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_is_char_boundary` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `is_char_boundary` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 14  | assert!(!s.is_char_boundary(2));
[INFO] [stdout]     |            ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_is_char_boundary` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:170:12
[INFO] [stdout]     |
[INFO] [stdout] 17  | assert!(!s.ansi_is_char_boundary(8));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn ansi_is_char_boundary(&self, index: usize) -> bool;
[INFO] [stdout]     |        --------------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_is_char_boundary` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `is_char_boundary` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 17  | assert!(!s.is_char_boundary(8));
[INFO] [stdout]     |            ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_split (line 253) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:255:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_split` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:259:26
[INFO] [stdout]     |
[INFO] [stdout] 8   | let words: Vec<_> = text.ansi_split(" ").collect();
[INFO] [stdout]     |                          ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 283 |     fn ansi_split<'a>(&'a self, pat: &'a str) -> AnsiSplit<'a>;
[INFO] [stdout]     |        ---------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_split` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_split_at` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | let words: Vec<_> = text.ansi_split_at(" ").collect();
[INFO] [stdout]     |                          ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_split` found for reference `&'static str` in the current scope
[INFO] [stdout]   --> src/lib.rs:272:20
[INFO] [stdout]    |
[INFO] [stdout] 21 | let v: Vec<_> = "".ansi_split("X").collect();
[INFO] [stdout]    |                    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_split` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout] 2  + use ansi_str_forked::AnsiStr;
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `ansi_split_at` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 21 | let v: Vec<_> = "".ansi_split_at("X").collect();
[INFO] [stdout]    |                    ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_split` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:276:22
[INFO] [stdout]     |
[INFO] [stdout] 25  | let v: Vec<_> = text.ansi_split("X").collect();
[INFO] [stdout]     |                      ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 283 |     fn ansi_split<'a>(&'a self, pat: &'a str) -> AnsiSplit<'a>;
[INFO] [stdout]     |        ---------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_split` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_split_at` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 25  | let v: Vec<_> = text.ansi_split_at("X").collect();
[INFO] [stdout]     |                      ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_split` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:280:22
[INFO] [stdout]     |
[INFO] [stdout] 29  | let v: Vec<_> = text.ansi_split("::").collect();
[INFO] [stdout]     |                      ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 283 |     fn ansi_split<'a>(&'a self, pat: &'a str) -> AnsiSplit<'a>;
[INFO] [stdout]     |        ---------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_split` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_split_at` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 29  | let v: Vec<_> = text.ansi_split_at("::").collect();
[INFO] [stdout]     |                      ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_strip_suffix (line 236) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:238:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_strip_suffix` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:240:40
[INFO] [stdout]     |
[INFO] [stdout] 6   | assert_eq!("bar:foo".red().to_string().ansi_strip_suffix(":foo"), Some("bar".red().to_string().into()));
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:244:8
[INFO] [stdout]     |
[INFO] [stdout] 244 |     fn ansi_strip_suffix(&self, pat: &str) -> Option<Cow<'_, str>>;
[INFO] [stdout]     |        ----------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_strip_suffix` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `strip_suffix` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 6   | assert_eq!("bar:foo".red().to_string().strip_suffix(":foo"), Some("bar".red().to_string().into()));
[INFO] [stdout]     |                                        ~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_strip_suffix` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:241:40
[INFO] [stdout]     |
[INFO] [stdout] 7   | assert_eq!("bar:foo".red().to_string().ansi_strip_suffix("bar"), None);
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:244:8
[INFO] [stdout]     |
[INFO] [stdout] 244 |     fn ansi_strip_suffix(&self, pat: &str) -> Option<Cow<'_, str>>;
[INFO] [stdout]     |        ----------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_strip_suffix` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `strip_suffix` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 7   | assert_eq!("bar:foo".red().to_string().strip_suffix("bar"), None);
[INFO] [stdout]     |                                        ~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_strip_suffix` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:242:39
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!("foofoo".red().to_string().ansi_strip_suffix("foo"), Some("foo".red().to_string().into()));
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:244:8
[INFO] [stdout]     |
[INFO] [stdout] 244 |     fn ansi_strip_suffix(&self, pat: &str) -> Option<Cow<'_, str>>;
[INFO] [stdout]     |        ----------------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_strip_suffix` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `strip_suffix` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!("foofoo".red().to_string().strip_suffix("foo"), Some("foo".red().to_string().into()));
[INFO] [stdout]     |                                       ~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - AnsiStr::ansi_trim (line 372) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `ansi_str`
[INFO] [stdout]  --> src/lib.rs:374:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ansi_str::AnsiStr;
[INFO] [stdout]   |     ^^^^^^^^ use of undeclared crate or module `ansi_str`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ansi_trim` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:378:48
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!("Hello\tworld".red().to_string(), s.ansi_trim());
[INFO] [stdout]     |                                                ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/lib.rs:380:8
[INFO] [stdout]     |
[INFO] [stdout] 380 |     fn ansi_trim(&self) -> Cow<'_, str>;
[INFO] [stdout]     |        --------- the method is available for `String` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `AnsiStr` which provides `ansi_trim` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout] 2   + use ansi_str_forked::AnsiStr;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `ansi_strip` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 8   | assert_eq!("Hello\tworld".red().to_string(), s.ansi_strip());
[INFO] [stdout]     |                                                ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - (line 13)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_cut (line 124)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_cut (line 136)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_ends_with (line 354)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_find (line 183)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_get (line 77)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_get (line 96)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_has_any (line 406)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_is_char_boundary (line 155)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_split (line 253)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_split_at (line 301)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_split_at (line 315)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_starts_with (line 334)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_strip (line 388)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_strip_prefix (line 206)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_strip_suffix (line 236)
[INFO] [stdout]     src/lib.rs - AnsiStr::ansi_trim (line 372)
[INFO] [stdout]     src/lib.rs - get_blocks (line 1084)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 18 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.84s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "9b6c79d91a04d6238f851fe67979051eb4740ea788b032f8e4cf5d6c00af317c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b6c79d91a04d6238f851fe67979051eb4740ea788b032f8e4cf5d6c00af317c", kill_on_drop: false }`
[INFO] [stdout] 9b6c79d91a04d6238f851fe67979051eb4740ea788b032f8e4cf5d6c00af317c
