[INFO] cloning repository https://github.com/arloor/nftables-nat-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/arloor/nftables-nat-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farloor%2Fnftables-nat-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farloor%2Fnftables-nat-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 632c4ab2f9085844cddffaa977e7b620faf9061a
[INFO] testing arloor/nftables-nat-rust against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farloor%2Fnftables-nat-rust" "/workspace/builds/worker-9/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/arloor/nftables-nat-rust on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/arloor/nftables-nat-rust
[INFO] finished tweaking git repo https://github.com/arloor/nftables-nat-rust
[INFO] tweaked toml for git repo https://github.com/arloor/nftables-nat-rust written to /workspace/builds/worker-9/source/Cargo.toml
[INFO] crate git repo https://github.com/arloor/nftables-nat-rust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 45a6bff50760c9d8e1254af63fc3a259654abbb1b5ee9b8c0852e06bdc746cce
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "45a6bff50760c9d8e1254af63fc3a259654abbb1b5ee9b8c0852e06bdc746cce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "45a6bff50760c9d8e1254af63fc3a259654abbb1b5ee9b8c0852e06bdc746cce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "45a6bff50760c9d8e1254af63fc3a259654abbb1b5ee9b8c0852e06bdc746cce", kill_on_drop: false }`
[INFO] [stdout] 45a6bff50760c9d8e1254af63fc3a259654abbb1b5ee9b8c0852e06bdc746cce
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ded2f90fbc85c1c6d8cb59c8bee07e31a0ddae8c166639a35db82ae05f37bf2c
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "ded2f90fbc85c1c6d8cb59c8bee07e31a0ddae8c166639a35db82ae05f37bf2c", kill_on_drop: false }`
[INFO] [stderr]    Compiling dnat v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `nat_cell` should have an upper camel case name
[INFO] [stdout]  --> src/config.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum nat_cell {
[INFO] [stdout]   |          ^^^^^^^^ help: convert the identifier to upper camel case: `NatCell`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `exit`
[INFO] [stdout]  --> src/main.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::process::{exit, Command};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::IP::remote_ip`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::IP::remote_ip;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SystemTime`
[INFO] [stdout]   --> src/main.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/main.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |         Ok(s)=>{println!("kernel ip_forward config enabled!\n")}
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `domain`
[INFO] [stdout]   --> src/main.rs:48:18
[INFO] [stdout]    |
[INFO] [stdout] 48 |             let (domain, ip) = x.get_target_ip();
[INFO] [stdout]    |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_domain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ip`
[INFO] [stdout]   --> src/main.rs:48:26
[INFO] [stdout]    |
[INFO] [stdout] 48 |             let (domain, ip) = x.get_target_ip();
[INFO] [stdout]    |                          ^^ help: if this is intentional, prefix it with an underscore: `_ip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/config.rs:89:13
[INFO] [stdout]    |
[INFO] [stdout] 89 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port_start`
[INFO] [stdout]   --> src/config.rs:63:31
[INFO] [stdout]    |
[INFO] [stdout] 63 |             nat_cell::RANGE { port_start, port_end, remote_domain } =>
[INFO] [stdout]    |                               ^^^^^^^^^^ help: try ignoring the field: `port_start: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port_end`
[INFO] [stdout]   --> src/config.rs:63:43
[INFO] [stdout]    |
[INFO] [stdout] 63 |             nat_cell::RANGE { port_start, port_end, remote_domain } =>
[INFO] [stdout]    |                                           ^^^^^^^^ help: try ignoring the field: `port_end: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_port`
[INFO] [stdout]   --> src/config.rs:69:32
[INFO] [stdout]    |
[INFO] [stdout] 69 |             nat_cell::SINGLE { local_port, remote_port, remote_domain } =>
[INFO] [stdout]    |                                ^^^^^^^^^^ help: try ignoring the field: `local_port: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remote_port`
[INFO] [stdout]   --> src/config.rs:69:44
[INFO] [stdout]    |
[INFO] [stdout] 69 |             nat_cell::SINGLE { local_port, remote_port, remote_domain } =>
[INFO] [stdout]    |                                            ^^^^^^^^^^^ help: try ignoring the field: `remote_port: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:58:21
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 let mut f = File::create("/etc/nftables/nat-diy.nft");
[INFO] [stdout]    |                     ----^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `IP` should have a snake case name
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod IP;
[INFO] [stdout]   |     ^^ help: convert the identifier to snake case: `ip`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     std::fs::create_dir_all("/etc/nftables");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1.70s
[INFO] running `Command { std: "docker" "inspect" "ded2f90fbc85c1c6d8cb59c8bee07e31a0ddae8c166639a35db82ae05f37bf2c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ded2f90fbc85c1c6d8cb59c8bee07e31a0ddae8c166639a35db82ae05f37bf2c", kill_on_drop: false }`
[INFO] [stdout] ded2f90fbc85c1c6d8cb59c8bee07e31a0ddae8c166639a35db82ae05f37bf2c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 65feb90f7aa89ac41a18c931e0e22cc34ae67215b0d19e365f52473cd423b86f
[INFO] running `Command { std: "docker" "start" "-a" "65feb90f7aa89ac41a18c931e0e22cc34ae67215b0d19e365f52473cd423b86f", kill_on_drop: false }`
[INFO] [stderr]    Compiling dnat v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `nat_cell` should have an upper camel case name
[INFO] [stdout]  --> src/config.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum nat_cell {
[INFO] [stdout]   |          ^^^^^^^^ help: convert the identifier to upper camel case: `NatCell`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `exit`
[INFO] [stdout]  --> src/main.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::process::{exit, Command};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::IP::remote_ip`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::IP::remote_ip;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SystemTime`
[INFO] [stdout]   --> src/main.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/main.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |         Ok(s)=>{println!("kernel ip_forward config enabled!\n")}
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `domain`
[INFO] [stdout]   --> src/main.rs:48:18
[INFO] [stdout]    |
[INFO] [stdout] 48 |             let (domain, ip) = x.get_target_ip();
[INFO] [stdout]    |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_domain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ip`
[INFO] [stdout]   --> src/main.rs:48:26
[INFO] [stdout]    |
[INFO] [stdout] 48 |             let (domain, ip) = x.get_target_ip();
[INFO] [stdout]    |                          ^^ help: if this is intentional, prefix it with an underscore: `_ip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/config.rs:89:13
[INFO] [stdout]    |
[INFO] [stdout] 89 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port_start`
[INFO] [stdout]   --> src/config.rs:63:31
[INFO] [stdout]    |
[INFO] [stdout] 63 |             nat_cell::RANGE { port_start, port_end, remote_domain } =>
[INFO] [stdout]    |                               ^^^^^^^^^^ help: try ignoring the field: `port_start: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port_end`
[INFO] [stdout]   --> src/config.rs:63:43
[INFO] [stdout]    |
[INFO] [stdout] 63 |             nat_cell::RANGE { port_start, port_end, remote_domain } =>
[INFO] [stdout]    |                                           ^^^^^^^^ help: try ignoring the field: `port_end: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_port`
[INFO] [stdout]   --> src/config.rs:69:32
[INFO] [stdout]    |
[INFO] [stdout] 69 |             nat_cell::SINGLE { local_port, remote_port, remote_domain } =>
[INFO] [stdout]    |                                ^^^^^^^^^^ help: try ignoring the field: `local_port: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remote_port`
[INFO] [stdout]   --> src/config.rs:69:44
[INFO] [stdout]    |
[INFO] [stdout] 69 |             nat_cell::SINGLE { local_port, remote_port, remote_domain } =>
[INFO] [stdout]    |                                            ^^^^^^^^^^^ help: try ignoring the field: `remote_port: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:58:21
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 let mut f = File::create("/etc/nftables/nat-diy.nft");
[INFO] [stdout]    |                     ----^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `IP` should have a snake case name
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod IP;
[INFO] [stdout]   |     ^^ help: convert the identifier to snake case: `ip`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     std::fs::create_dir_all("/etc/nftables");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.96s
[INFO] running `Command { std: "docker" "inspect" "65feb90f7aa89ac41a18c931e0e22cc34ae67215b0d19e365f52473cd423b86f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "65feb90f7aa89ac41a18c931e0e22cc34ae67215b0d19e365f52473cd423b86f", kill_on_drop: false }`
[INFO] [stdout] 65feb90f7aa89ac41a18c931e0e22cc34ae67215b0d19e365f52473cd423b86f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] d1403869643734c684b6cfcb6d8d72f9f87d3205fac30b18a39371f6ec670a4f
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "d1403869643734c684b6cfcb6d8d72f9f87d3205fac30b18a39371f6ec670a4f", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::fs::File`
[INFO] [stderr]  --> src/config.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::fs::File;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `nat_cell` should have an upper camel case name
[INFO] [stderr]  --> src/config.rs:9:10
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub enum nat_cell {
[INFO] [stderr]   |          ^^^^^^^^ help: convert the identifier to upper camel case: `NatCell`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/main.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `exit`
[INFO] [stderr]  --> src/main.rs:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::process::{exit, Command};
[INFO] [stderr]   |                    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::IP::remote_ip`
[INFO] [stderr]  --> src/main.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::IP::remote_ip;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `SystemTime`
[INFO] [stderr]   --> src/main.rs:11:27
[INFO] [stderr]    |
[INFO] [stderr] 11 | use std::time::{Duration, SystemTime};
[INFO] [stderr]    |                           ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `s`
[INFO] [stderr]   --> src/main.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 16 |         Ok(s)=>{println!("kernel ip_forward config enabled!\n")}
[INFO] [stderr]    |            ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `domain`
[INFO] [stderr]   --> src/main.rs:48:18
[INFO] [stderr]    |
[INFO] [stderr] 48 |             let (domain, ip) = x.get_target_ip();
[INFO] [stderr]    |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_domain`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ip`
[INFO] [stderr]   --> src/main.rs:48:26
[INFO] [stderr]    |
[INFO] [stderr] 48 |             let (domain, ip) = x.get_target_ip();
[INFO] [stderr]    |                          ^^ help: if this is intentional, prefix it with an underscore: `_ip`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/config.rs:89:13
[INFO] [stderr]    |
[INFO] [stderr] 89 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `port_start`
[INFO] [stderr]   --> src/config.rs:63:31
[INFO] [stderr]    |
[INFO] [stderr] 63 |             nat_cell::RANGE { port_start, port_end, remote_domain } =>
[INFO] [stderr]    |                               ^^^^^^^^^^ help: try ignoring the field: `port_start: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `port_end`
[INFO] [stderr]   --> src/config.rs:63:43
[INFO] [stderr]    |
[INFO] [stderr] 63 |             nat_cell::RANGE { port_start, port_end, remote_domain } =>
[INFO] [stderr]    |                                           ^^^^^^^^ help: try ignoring the field: `port_end: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `local_port`
[INFO] [stderr]   --> src/config.rs:69:32
[INFO] [stderr]    |
[INFO] [stderr] 69 |             nat_cell::SINGLE { local_port, remote_port, remote_domain } =>
[INFO] [stderr]    |                                ^^^^^^^^^^ help: try ignoring the field: `local_port: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `remote_port`
[INFO] [stderr]   --> src/config.rs:69:44
[INFO] [stderr]    |
[INFO] [stderr] 69 |             nat_cell::SINGLE { local_port, remote_port, remote_domain } =>
[INFO] [stderr]    |                                            ^^^^^^^^^^^ help: try ignoring the field: `remote_port: _`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:58:21
[INFO] [stderr]    |
[INFO] [stderr] 58 |                 let mut f = File::create("/etc/nftables/nat-diy.nft");
[INFO] [stderr]    |                     ----^
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: module `IP` should have a snake case name
[INFO] [stderr]  --> src/main.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | mod IP;
[INFO] [stderr]   |     ^^ help: convert the identifier to snake case: `ip`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]   --> src/main.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     std::fs::create_dir_all("/etc/nftables");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: 17 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/dnat-7f43540de9a7110e
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "d1403869643734c684b6cfcb6d8d72f9f87d3205fac30b18a39371f6ec670a4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1403869643734c684b6cfcb6d8d72f9f87d3205fac30b18a39371f6ec670a4f", kill_on_drop: false }`
[INFO] [stdout] d1403869643734c684b6cfcb6d8d72f9f87d3205fac30b18a39371f6ec670a4f
