[INFO] fetching crate rpg-dice-roller 0.2.0...
[INFO] testing rpg-dice-roller-0.2.0 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate rpg-dice-roller 0.2.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate rpg-dice-roller 0.2.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate rpg-dice-roller 0.2.0
[INFO] tweaked toml for crates.io crate rpg-dice-roller 0.2.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rpg-dice-roller 0.2.0 on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 69 packages to latest compatible versions
[INFO] [stderr]       Adding criterion v0.5.1 (available: v0.8.2)
[INFO] [stderr]       Adding rand v0.8.6 (available: v0.10.1)
[INFO] [stderr]       Adding winnow v0.6.26 (available: v1.0.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7383920f28fb0f649ccdb2ae15b840de9b26c5387965775742b58790e224e14d
[INFO] running `Command { std: "docker" "start" "-a" "7383920f28fb0f649ccdb2ae15b840de9b26c5387965775742b58790e224e14d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7383920f28fb0f649ccdb2ae15b840de9b26c5387965775742b58790e224e14d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7383920f28fb0f649ccdb2ae15b840de9b26c5387965775742b58790e224e14d", kill_on_drop: false }`
[INFO] [stdout] 7383920f28fb0f649ccdb2ae15b840de9b26c5387965775742b58790e224e14d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ce97f021c0e3985c7772684ad52560df71f9fa85b8034c78b43accebfead7ec9
[INFO] running `Command { std: "docker" "start" "-a" "ce97f021c0e3985c7772684ad52560df71f9fa85b8034c78b43accebfead7ec9", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling winnow v0.6.26
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling rpg-dice-roller v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]  --> src/parse/dice.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     PResult, Parser,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/dice.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn parse_dice_standard(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/dice.rs:85:47
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn parse_dice_fudge1(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/dice.rs:94:47
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn parse_dice_fudge2(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:103:51
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn parse_dice_percentile(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:112:45
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn parse_dice_quantity(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:121:42
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn parse_dice_sides(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:139:42
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn non_zero_u32(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:147:42
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub fn non_zero_i32(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:155:44
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub fn parse_modifier(input: &mut &str) -> PResult<Modifier> {
[INFO] [stdout]     |                                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:215:35
[INFO] [stdout]     |
[INFO] [stdout] 215 | fn exploding(input: &mut &str) -> PResult<Modifier> {
[INFO] [stdout]     |                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:228:50
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub fn parse_group_modifier(input: &mut &str) -> PResult<Modifier> {
[INFO] [stdout]     |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:246:39
[INFO] [stdout]     |
[INFO] [stdout] 246 | fn compare_point(input: &mut &str) -> PResult<ComparePoint> {
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]  --> src/parse/expression.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     PResult, Parser,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:35:40
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn parse_expr(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:48:36
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn parse_term(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:61:38
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn parse_factor(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:90:42
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn parse_parens(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:96:43
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn parse_roll_groups(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:109:50
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn low_precendence_operator(input: &mut &str) -> PResult<Operator> {
[INFO] [stdout]     |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:118:51
[INFO] [stdout]     |
[INFO] [stdout] 118 | fn high_precendence_operator(input: &mut &str) -> PResult<Operator> {
[INFO] [stdout]     |                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:138:40
[INFO] [stdout]     |
[INFO] [stdout] 138 | fn parse_fn1_name(input: &mut &str) -> PResult<MathFn1> {
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:156:40
[INFO] [stdout]     |
[INFO] [stdout] 156 | fn parse_fn2_name(input: &mut &str) -> PResult<MathFn2> {
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:165:39
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub fn parse_fn1(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:176:39
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub fn parse_fn2(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.77s
[INFO] running `Command { std: "docker" "inspect" "ce97f021c0e3985c7772684ad52560df71f9fa85b8034c78b43accebfead7ec9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce97f021c0e3985c7772684ad52560df71f9fa85b8034c78b43accebfead7ec9", kill_on_drop: false }`
[INFO] [stdout] ce97f021c0e3985c7772684ad52560df71f9fa85b8034c78b43accebfead7ec9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cf78a8df8e14411a596d8c5829aba90613eff858abf1b7826db13097f2ec1d2e
[INFO] running `Command { std: "docker" "start" "-a" "cf78a8df8e14411a596d8c5829aba90613eff858abf1b7826db13097f2ec1d2e", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling rpg-dice-roller v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]  --> src/parse/dice.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     PResult, Parser,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/dice.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn parse_dice_standard(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/dice.rs:85:47
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn parse_dice_fudge1(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/dice.rs:94:47
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn parse_dice_fudge2(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:103:51
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn parse_dice_percentile(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:112:45
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn parse_dice_quantity(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:121:42
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn parse_dice_sides(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:139:42
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn non_zero_u32(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:147:42
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub fn non_zero_i32(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:155:44
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub fn parse_modifier(input: &mut &str) -> PResult<Modifier> {
[INFO] [stdout]     |                                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:215:35
[INFO] [stdout]     |
[INFO] [stdout] 215 | fn exploding(input: &mut &str) -> PResult<Modifier> {
[INFO] [stdout]     |                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:228:50
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub fn parse_group_modifier(input: &mut &str) -> PResult<Modifier> {
[INFO] [stdout]     |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:246:39
[INFO] [stdout]     |
[INFO] [stdout] 246 | fn compare_point(input: &mut &str) -> PResult<ComparePoint> {
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]  --> src/parse/expression.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     PResult, Parser,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:35:40
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn parse_expr(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:48:36
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn parse_term(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:61:38
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn parse_factor(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:90:42
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn parse_parens(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:96:43
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn parse_roll_groups(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:109:50
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn low_precendence_operator(input: &mut &str) -> PResult<Operator> {
[INFO] [stdout]     |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:118:51
[INFO] [stdout]     |
[INFO] [stdout] 118 | fn high_precendence_operator(input: &mut &str) -> PResult<Operator> {
[INFO] [stdout]     |                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:138:40
[INFO] [stdout]     |
[INFO] [stdout] 138 | fn parse_fn1_name(input: &mut &str) -> PResult<MathFn1> {
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:156:40
[INFO] [stdout]     |
[INFO] [stdout] 156 | fn parse_fn2_name(input: &mut &str) -> PResult<MathFn2> {
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:165:39
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub fn parse_fn1(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:176:39
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub fn parse_fn2(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]  --> src/parse/dice.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     PResult, Parser,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/dice.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn parse_dice_standard(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/dice.rs:85:47
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn parse_dice_fudge1(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/dice.rs:94:47
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn parse_dice_fudge2(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:103:51
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn parse_dice_percentile(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:112:45
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn parse_dice_quantity(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:121:42
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn parse_dice_sides(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:139:42
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn non_zero_u32(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:147:42
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub fn non_zero_i32(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:155:44
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub fn parse_modifier(input: &mut &str) -> PResult<Modifier> {
[INFO] [stdout]     |                                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:215:35
[INFO] [stdout]     |
[INFO] [stdout] 215 | fn exploding(input: &mut &str) -> PResult<Modifier> {
[INFO] [stdout]     |                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:228:50
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub fn parse_group_modifier(input: &mut &str) -> PResult<Modifier> {
[INFO] [stdout]     |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/dice.rs:246:39
[INFO] [stdout]     |
[INFO] [stdout] 246 | fn compare_point(input: &mut &str) -> PResult<ComparePoint> {
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]  --> src/parse/expression.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     PResult, Parser,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:35:40
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn parse_expr(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:48:36
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn parse_term(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:61:38
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn parse_factor(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:90:42
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn parse_parens(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]   --> src/parse/expression.rs:96:43
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn parse_roll_groups(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:109:50
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn low_precendence_operator(input: &mut &str) -> PResult<Operator> {
[INFO] [stdout]     |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:118:51
[INFO] [stdout]     |
[INFO] [stdout] 118 | fn high_precendence_operator(input: &mut &str) -> PResult<Operator> {
[INFO] [stdout]     |                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:138:40
[INFO] [stdout]     |
[INFO] [stdout] 138 | fn parse_fn1_name(input: &mut &str) -> PResult<MathFn1> {
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:156:40
[INFO] [stdout]     |
[INFO] [stdout] 156 | fn parse_fn2_name(input: &mut &str) -> PResult<MathFn2> {
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:165:39
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub fn parse_fn1(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stdout]    --> src/parse/expression.rs:176:39
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub fn parse_fn2(input: &mut &str) -> PResult<Expression> {
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 22.21s
[INFO] running `Command { std: "docker" "inspect" "cf78a8df8e14411a596d8c5829aba90613eff858abf1b7826db13097f2ec1d2e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf78a8df8e14411a596d8c5829aba90613eff858abf1b7826db13097f2ec1d2e", kill_on_drop: false }`
[INFO] [stdout] cf78a8df8e14411a596d8c5829aba90613eff858abf1b7826db13097f2ec1d2e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ffdff7c0f0d315c414b9ee2e03b12926d65a8e23c7beeed468a0c5876e48a068
[INFO] running `Command { std: "docker" "start" "-a" "ffdff7c0f0d315c414b9ee2e03b12926d65a8e23c7beeed468a0c5876e48a068", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]  --> src/parse/dice.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     PResult, Parser,
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]   --> src/parse/dice.rs:74:49
[INFO] [stderr]    |
[INFO] [stderr] 74 | pub fn parse_dice_standard(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]    |                                                 ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]   --> src/parse/dice.rs:85:47
[INFO] [stderr]    |
[INFO] [stderr] 85 | pub fn parse_dice_fudge1(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]    |                                               ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]   --> src/parse/dice.rs:94:47
[INFO] [stderr]    |
[INFO] [stderr] 94 | pub fn parse_dice_fudge2(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]    |                                               ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/dice.rs:103:51
[INFO] [stderr]     |
[INFO] [stderr] 103 | pub fn parse_dice_percentile(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]     |                                                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/dice.rs:112:45
[INFO] [stderr]     |
[INFO] [stderr] 112 | fn parse_dice_quantity(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]     |                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/dice.rs:121:42
[INFO] [stderr]     |
[INFO] [stderr] 121 | fn parse_dice_sides(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]     |                                          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/dice.rs:139:42
[INFO] [stderr]     |
[INFO] [stderr] 139 | pub fn non_zero_u32(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]     |                                          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/dice.rs:147:42
[INFO] [stderr]     |
[INFO] [stderr] 147 | pub fn non_zero_i32(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]     |                                          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/dice.rs:155:44
[INFO] [stderr]     |
[INFO] [stderr] 155 | pub fn parse_modifier(input: &mut &str) -> PResult<Modifier> {
[INFO] [stderr]     |                                            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/dice.rs:215:35
[INFO] [stderr]     |
[INFO] [stderr] 215 | fn exploding(input: &mut &str) -> PResult<Modifier> {
[INFO] [stderr]     |                                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/dice.rs:228:50
[INFO] [stderr]     |
[INFO] [stderr] 228 | pub fn parse_group_modifier(input: &mut &str) -> PResult<Modifier> {
[INFO] [stderr]     |                                                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/dice.rs:246:39
[INFO] [stderr]     |
[INFO] [stderr] 246 | fn compare_point(input: &mut &str) -> PResult<ComparePoint> {
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]  --> src/parse/expression.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     PResult, Parser,
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]   --> src/parse/expression.rs:35:40
[INFO] [stderr]    |
[INFO] [stderr] 35 | pub fn parse_expr(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]    |                                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]   --> src/parse/expression.rs:48:36
[INFO] [stderr]    |
[INFO] [stderr] 48 | fn parse_term(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]    |                                    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]   --> src/parse/expression.rs:61:38
[INFO] [stderr]    |
[INFO] [stderr] 61 | fn parse_factor(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]    |                                      ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]   --> src/parse/expression.rs:90:42
[INFO] [stderr]    |
[INFO] [stderr] 90 | pub fn parse_parens(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]    |                                          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]   --> src/parse/expression.rs:96:43
[INFO] [stderr]    |
[INFO] [stderr] 96 | fn parse_roll_groups(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]    |                                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/expression.rs:109:50
[INFO] [stderr]     |
[INFO] [stderr] 109 | fn low_precendence_operator(input: &mut &str) -> PResult<Operator> {
[INFO] [stderr]     |                                                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/expression.rs:118:51
[INFO] [stderr]     |
[INFO] [stderr] 118 | fn high_precendence_operator(input: &mut &str) -> PResult<Operator> {
[INFO] [stderr]     |                                                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/expression.rs:138:40
[INFO] [stderr]     |
[INFO] [stderr] 138 | fn parse_fn1_name(input: &mut &str) -> PResult<MathFn1> {
[INFO] [stderr]     |                                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/expression.rs:156:40
[INFO] [stderr]     |
[INFO] [stderr] 156 | fn parse_fn2_name(input: &mut &str) -> PResult<MathFn2> {
[INFO] [stderr]     |                                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/expression.rs:165:39
[INFO] [stderr]     |
[INFO] [stderr] 165 | pub fn parse_fn1(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated type alias `winnow::PResult`: Replaced with ModalResult
[INFO] [stderr]    --> src/parse/expression.rs:176:39
[INFO] [stderr]     |
[INFO] [stderr] 176 | pub fn parse_fn2(input: &mut &str) -> PResult<Expression> {
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `rpg-dice-roller` (lib) generated 25 warnings
[INFO] [stderr] warning: `rpg-dice-roller` (lib test) generated 25 warnings (25 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rpg_dice_roller-e07f7a3a7e09c405)
[INFO] [stdout] 
[INFO] [stdout] running 126 tests
[INFO] [stdout] test evaluate::dice_roll::tests::test_dice_can_pass_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_critical_success ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_critical_failure_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_critical_failure_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_drop ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_drop_lowest_not_ordered ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_drop_not_ordered ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_compare_point_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_compounding ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_compounding_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_compounding_compare_point_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_penetrating_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_penetrating_compounding ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_penetrating_compare_point_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_keep ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_keep_not_ordered ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_penetrating_compounding_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_max ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_max_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_min ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_min_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_reroll ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_penetrating ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_reroll_compare_point_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_reroll_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_exploding_penetrating_compounding_compare_point_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_reroll_once_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_sort_ascending ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_reroll_once_compare_point_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_sort_descending ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_target_failure ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_target_failure_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_target_failure_success_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_reroll_once ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_critical_success_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_target_success ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_target_success_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_unique ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_unique_once ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_unique_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_unique_compare_point_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_unique_once_compare_point ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_unique_compare_point_not_applied_because_unique ... ok
[INFO] [stdout] test evaluate::expression::tests::test_greater_than_i32_max_sides_dice_max_is_i32_max ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_rolling ... ok
[INFO] [stdout] test evaluate::roll::tests::test_output_sum ... ok
[INFO] [stdout] test evaluate::roll::tests::test_output_sum_ignores_dropped ... ok
[INFO] [stdout] test evaluate::expression::tests::test_divide_by_zero_max_is_i32_max ... ok
[INFO] [stdout] test evaluate::roll::tests::test_output_sum_regardless_of_kind ... ok
[INFO] [stdout] test evaluate::roll::tests::test_output_target_failure ... ok
[INFO] [stdout] test evaluate::roll::tests::test_output_target_success_ignores_dropped ... ok
[INFO] [stdout] test parse::dice::tests::test_compare_point_greater_than_or_equal ... ok
[INFO] [stdout] test parse::dice::tests::test_compare_point_less_than_or_equal ... ok
[INFO] [stdout] test parse::dice::tests::test_compare_point_less_than ... ok
[INFO] [stdout] test parse::dice::tests::test_compare_point_not_equals ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_critical_failure ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_compounding_standard ... ok
[INFO] [stdout] test parse::dice::tests::test_compare_point_greater_than ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_compounding_standard_greater_than ... ok
[INFO] [stdout] test evaluate::roll::tests::test_output_target_failure_ignores_dropped ... ok
[INFO] [stdout] test evaluate::roll::tests::test_output_target_success ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_critical_failure_greater_than_or_equal ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_critical_failure ... ok
[INFO] [stdout] test evaluate::roll::tests::test_output_target_failure_sums_success_rolls ... ok
[INFO] [stdout] test evaluate::roll::tests::test_output_target_success_ignores_failed_rolls ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_drop_default ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_drop_highest ... ok
[INFO] [stdout] test parse::dice::tests::test_compare_point_equals ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_exploding_standard_not_equal ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_critical_success ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_keep_default ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_keep_default_missing_amount ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_drop_highest_missing_amount ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_drop_lowest ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_keep_highest_missing_amount ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_keep_lowest_missing_amount ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_exploding_standard ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_keep_lowest ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_min ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_max_missing_amount ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_penetrating_compounding_standard ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_penetrating_compounding_standard_greater_or_equal ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_keep_highest ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_max ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_penetrating_standard ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_reroll ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_penetrating_standard_less_than ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_min_missing_amount ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_reroll_equals ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_sort_ascending ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_reroll_once ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_sort_descending ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_reroll_once_less_than ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_sort_default ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_unique ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_unique_once ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_unique_once_greater ... ok
[INFO] [stdout] test parse::dice::tests::test_nine_nine_nine_quantity_if_over ... ok
[INFO] [stdout] test parse::dice::tests::test_one_standard_d6_with_one_min_modifier ... ok
[INFO] [stdout] test parse::dice::tests::test_one_standard_d6_without_quantity ... ok
[INFO] [stdout] test parse::dice::tests::test_one_standard_d6_with_min_max_modifiers ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_unique_equals ... ok
[INFO] [stdout] test parse::dice::tests::test_one_standard_d6 ... ok
[INFO] [stdout] test parse::dice::tests::test_zero_quantity_is_one ... ok
[INFO] [stdout] test parse::dice::tests::test_one_standard_fudge_die_dot_notation ... ok
[INFO] [stdout] test parse::dice::tests::test_one_variant_fudge_die ... ok
[INFO] [stdout] test parse::dice::tests::test_zero_sides_dice ... ok
[INFO] [stdout] test parse::dice::tests::test_zero_quantity_dices ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_critical_success_less_than_or_equal ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_drop_default_missing_amount ... ok
[INFO] [stdout] test parse::dice::tests::test_modifier_drop_lowest_missing_amount ... ok
[INFO] [stdout] test parse::expression::tests::test_fn2_expressions ... ok
[INFO] [stdout] test parse::expression::tests::test_expression ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_keep_lowest_not_ordered ... ok
[INFO] [stdout] test evaluate::expression::tests::test_infinity_sides_dice_max_is_i32_max ... ok
[INFO] [stdout] test parse::expression::tests::test_infix_expressions ... ok
[INFO] [stdout] test parse::expression::tests::test_group_expressions ... ok
[INFO] [stdout] test parse::expression::tests::test_fn1_expressions ... ok
[INFO] [stdout] test parse::expression::tests::test_infix_pow_variant_expression ... ok
[INFO] [stdout] test parse::expression::tests::test_parens_expressions ... ok
[INFO] [stdout] test parse::dice::tests::test_one_percentile_dice ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_unique_once_compare_point_not_applied ... ok
[INFO] [stdout] test evaluate::dice_roll::tests::test_modifier_critical_success_compare_point ... ok
[INFO] [stdout] test parse::dice::tests::test_one_standard_fudge_die ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 126 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/single_dice_rolls_test.rs (/opt/rustwide/target/debug/deps/single_dice_rolls_test-3a8e0b4c8135195c)
[INFO] [stdout] 
[INFO] [stdout] running 44 tests
[INFO] [stdout] test test_critical_failure_cmp ... ok
[INFO] [stdout] test test_critical_failure ... ok
[INFO] [stdout] test test_critical_success_cmp ... ok
[INFO] [stdout] test test_drop ... ok
[INFO] [stdout] test test_drop_highest ... ok
[INFO] [stdout] test test_drop_highest_three ... ok
[INFO] [stdout] test test_exploding_compounding ... ok
[INFO] [stdout] test test_drop_lowest ... ok
[INFO] [stdout] test test_exploding_penetrating ... ok
[INFO] [stdout] test test_exploding_penetrating_cmp ... ok
[INFO] [stdout] test test_exploding_penetrating_compounding ... ok
[INFO] [stdout] test test_drop_lowest_two ... ok
[INFO] [stdout] test test_exploding_compounding_cmp ... ok
[INFO] [stdout] test test_exploding_standard ... ok
[INFO] [stdout] test test_exploding_standard_cmp ... ok
[INFO] [stdout] test test_five_d6 ... ok
[INFO] [stdout] test test_keep_lowest_two ... ok
[INFO] [stdout] test test_max_last_applied ... ok
[INFO] [stdout] test test_min_and_max ... ok
[INFO] [stdout] test test_keep_drop ... ok
[INFO] [stdout] test test_negative_expression_sides ... ok
[INFO] [stdout] test test_min_35 ... ok
[INFO] [stdout] test test_min_last_applied ... ok
[INFO] [stdout] test test_negative_dice_sides ... ok
[INFO] [stdout] test test_keep_highest ... ok
[INFO] [stdout] test test_keep_highest_three ... ok
[INFO] [stdout] test test_keep_lowest ... ok
[INFO] [stdout] test test_max ... ok
[INFO] [stdout] test test_reroll_cmp ... ok
[INFO] [stdout] test test_one_d6 ... ok
[INFO] [stdout] test test_reroll ... ok
[INFO] [stdout] test test_sort ... ok
[INFO] [stdout] test test_target_success ... ok
[INFO] [stdout] test test_critical_success ... ok
[INFO] [stdout] test test_unique_once_cmp ... ok
[INFO] [stdout] test test_exploding_penetrating_compounding_cmp ... ok
[INFO] [stdout] test test_sort_ascending ... ok
[INFO] [stdout] test test_sort_descending ... ok
[INFO] [stdout] test test_target_failure ... ok
[INFO] [stdout] test test_unique_cmp ... ok
[INFO] [stdout] test test_unique_once ... ok
[INFO] [stdout] test test_reroll_impossible_cmp ... ok
[INFO] [stdout] test test_unique ... ok
[INFO] [stderr]    Doc-tests rpg_dice_roller
[INFO] [stdout] test test_keep ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 44 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/lib.rs - (line 3) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.36s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ffdff7c0f0d315c414b9ee2e03b12926d65a8e23c7beeed468a0c5876e48a068", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ffdff7c0f0d315c414b9ee2e03b12926d65a8e23c7beeed468a0c5876e48a068", kill_on_drop: false }`
[INFO] [stdout] ffdff7c0f0d315c414b9ee2e03b12926d65a8e23c7beeed468a0c5876e48a068
