[INFO] cloning repository https://github.com/tulku/roslaunchd
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tulku/roslaunchd" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftulku%2Froslaunchd", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftulku%2Froslaunchd'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6da593244f13d4fb8fca5592b3f9aa9dfd5a6d73
[INFO] testing tulku/roslaunchd against nightly-2025-01-18 for randomize-layout-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftulku%2Froslaunchd" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/tulku/roslaunchd on toolchain nightly-2025-01-18
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2025-01-18" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/tulku/roslaunchd
[INFO] finished tweaking git repo https://github.com/tulku/roslaunchd
[INFO] tweaked toml for git repo https://github.com/tulku/roslaunchd written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/tulku/roslaunchd 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" "+nightly-2025-01-18" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded xml-rs v0.8.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 29fd496741e23f93acc666f3ee1e661adaf24148ec6897bc99374646353b046c
[INFO] running `Command { std: "docker" "start" "-a" "29fd496741e23f93acc666f3ee1e661adaf24148ec6897bc99374646353b046c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "29fd496741e23f93acc666f3ee1e661adaf24148ec6897bc99374646353b046c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "29fd496741e23f93acc666f3ee1e661adaf24148ec6897bc99374646353b046c", kill_on_drop: false }`
[INFO] [stdout] 29fd496741e23f93acc666f3ee1e661adaf24148ec6897bc99374646353b046c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4584e387249cfe1301b3cf4caea7c60b9a23c995ca3a51f30abf98733461c447
[INFO] running `Command { std: "docker" "start" "-a" "4584e387249cfe1301b3cf4caea7c60b9a23c995ca3a51f30abf98733461c447", kill_on_drop: false }`
[INFO] [stderr]    Compiling xml-rs v0.8.0
[INFO] [stderr]    Compiling roslaunchd v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `content` is never read
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Arena<T> {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 12 |     content: Vec<T>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tag` is never read
[INFO] [stdout]   --> src/lib.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Tree{
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 18 |     tag: Tag,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]    --> src/lib.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | struct Node {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/lib.rs:203:8
[INFO] [stdout]     |
[INFO] [stdout] 202 | impl Node {
[INFO] [stdout]     | --------- associated function in this implementation
[INFO] [stdout] 203 |     fn new(package: &str, node_type: &str, name: &str, respawn: bool) -> Node {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getAttributeByName` should have a snake case name
[INFO] [stdout]   --> src/lib.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn getAttributeByName(attribute_name: &str, attributes: &Vec<xml::attribute::OwnedAttribute>) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_attribute_by_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newGroup` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn newGroup(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_group`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newInclude` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:124:8
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn newInclude(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `new_include`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newRemap` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:131:8
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn newRemap(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_remap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newRosparam` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:140:8
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn newRosparam(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^ help: convert the identifier to snake case: `new_rosparam`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newParam` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 149 |     fn newParam(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_param`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newNode` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 158 |     fn newNode(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `new_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_parent`
[INFO] [stdout]   --> src/main.rs:31:25
[INFO] [stdout]    |
[INFO] [stdout] 31 |                     let new_parent = current_node.add_child(Tree::new(opening_tag));
[INFO] [stdout]    |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_parent`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]   --> src/main.rs:35:39
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Ok(XmlEvent::EndElement { name }) => {
[INFO] [stdout]    |                                       ^^^^ help: try ignoring the field: `name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.74s
[INFO] running `Command { std: "docker" "inspect" "4584e387249cfe1301b3cf4caea7c60b9a23c995ca3a51f30abf98733461c447", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4584e387249cfe1301b3cf4caea7c60b9a23c995ca3a51f30abf98733461c447", kill_on_drop: false }`
[INFO] [stdout] 4584e387249cfe1301b3cf4caea7c60b9a23c995ca3a51f30abf98733461c447
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1b8f4fecbd4a6cf42aaaec265b730e03ad49f9b59b057c598c4ed5928b247b06
[INFO] running `Command { std: "docker" "start" "-a" "1b8f4fecbd4a6cf42aaaec265b730e03ad49f9b59b057c598c4ed5928b247b06", kill_on_drop: false }`
[INFO] [stdout] warning: field `content` is never read
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Arena<T> {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 12 |     content: Vec<T>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tag` is never read
[INFO] [stdout]   --> src/lib.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Tree{
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 18 |     tag: Tag,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]    --> src/lib.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | struct Node {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/lib.rs:203:8
[INFO] [stdout]     |
[INFO] [stdout] 202 | impl Node {
[INFO] [stdout]     | --------- associated function in this implementation
[INFO] [stdout] 203 |     fn new(package: &str, node_type: &str, name: &str, respawn: bool) -> Node {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling roslaunchd v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `getAttributeByName` should have a snake case name
[INFO] [stdout]   --> src/lib.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn getAttributeByName(attribute_name: &str, attributes: &Vec<xml::attribute::OwnedAttribute>) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_attribute_by_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newGroup` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn newGroup(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_group`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newInclude` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:124:8
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn newInclude(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `new_include`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newRemap` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:131:8
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn newRemap(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_remap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newRosparam` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:140:8
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn newRosparam(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^ help: convert the identifier to snake case: `new_rosparam`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newParam` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 149 |     fn newParam(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_param`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newNode` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 158 |     fn newNode(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `new_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `content` is never read
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Arena<T> {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 12 |     content: Vec<T>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tag` is never read
[INFO] [stdout]   --> src/lib.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Tree{
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 18 |     tag: Tag,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]    --> src/lib.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | struct Node {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/lib.rs:203:8
[INFO] [stdout]     |
[INFO] [stdout] 202 | impl Node {
[INFO] [stdout]     | --------- associated function in this implementation
[INFO] [stdout] 203 |     fn new(package: &str, node_type: &str, name: &str, respawn: bool) -> Node {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getAttributeByName` should have a snake case name
[INFO] [stdout]   --> src/lib.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn getAttributeByName(attribute_name: &str, attributes: &Vec<xml::attribute::OwnedAttribute>) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_attribute_by_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newGroup` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn newGroup(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_group`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newInclude` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:124:8
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn newInclude(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `new_include`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newRemap` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:131:8
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn newRemap(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_remap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newRosparam` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:140:8
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn newRosparam(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^ help: convert the identifier to snake case: `new_rosparam`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newParam` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 149 |     fn newParam(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_param`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newNode` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 158 |     fn newNode(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `new_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_parent`
[INFO] [stdout]   --> src/main.rs:31:25
[INFO] [stdout]    |
[INFO] [stdout] 31 |                     let new_parent = current_node.add_child(Tree::new(opening_tag));
[INFO] [stdout]    |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_parent`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]   --> src/main.rs:35:39
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Ok(XmlEvent::EndElement { name }) => {
[INFO] [stdout]    |                                       ^^^^ help: try ignoring the field: `name: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.41s
[INFO] running `Command { std: "docker" "inspect" "1b8f4fecbd4a6cf42aaaec265b730e03ad49f9b59b057c598c4ed5928b247b06", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1b8f4fecbd4a6cf42aaaec265b730e03ad49f9b59b057c598c4ed5928b247b06", kill_on_drop: false }`
[INFO] [stdout] 1b8f4fecbd4a6cf42aaaec265b730e03ad49f9b59b057c598c4ed5928b247b06
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 1c1f52aca8564b82fab1c54b0416282bfb6ee3c380549489679fa4837613c66a
[INFO] running `Command { std: "docker" "start" "-a" "1c1f52aca8564b82fab1c54b0416282bfb6ee3c380549489679fa4837613c66a", kill_on_drop: false }`
[INFO] [stderr] warning: field `content` is never read
[INFO] [stdout] 
[INFO] [stderr]   --> src/lib.rs:12:5
[INFO] [stdout] running 0 tests
[INFO] [stderr]    |
[INFO] [stdout] 
[INFO] [stderr] 11 | pub struct Arena<T> {
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]    |            ----- field in this struct
[INFO] [stdout] 
[INFO] [stderr] 12 |     content: Vec<T>,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `tag` is never read
[INFO] [stderr]   --> src/lib.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct Tree{
[INFO] [stderr]    |            ---- field in this struct
[INFO] [stderr] 18 |     tag: Tag,
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Tree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Node` is never constructed
[INFO] [stderr]    --> src/lib.rs:171:8
[INFO] [stderr]     |
[INFO] [stderr] 171 | struct Node {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/lib.rs:203:8
[INFO] [stderr]     |
[INFO] [stderr] 202 | impl Node {
[INFO] [stderr]     | --------- associated function in this implementation
[INFO] [stderr] 203 |     fn new(package: &str, node_type: &str, name: &str, respawn: bool) -> Node {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `getAttributeByName` should have a snake case name
[INFO] [stderr]   --> src/lib.rs:81:4
[INFO] [stderr]    |
[INFO] [stderr] 81 | fn getAttributeByName(attribute_name: &str, attributes: &Vec<xml::attribute::OwnedAttribute>) -> String {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_attribute_by_name`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `newGroup` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:117:8
[INFO] [stderr]     |
[INFO] [stderr] 117 |     fn newGroup(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stderr]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_group`
[INFO] [stderr] 
[INFO] [stderr] warning: method `newInclude` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:124:8
[INFO] [stderr]     |
[INFO] [stderr] 124 |     fn newInclude(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stderr]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `new_include`
[INFO] [stderr] 
[INFO] [stderr] warning: method `newRemap` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:131:8
[INFO] [stderr]     |
[INFO] [stderr] 131 |     fn newRemap(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stderr]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_remap`
[INFO] [stderr] 
[INFO] [stderr] warning: method `newRosparam` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:140:8
[INFO] [stderr]     |
[INFO] [stderr] 140 |     fn newRosparam(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stderr]     |        ^^^^^^^^^^^ help: convert the identifier to snake case: `new_rosparam`
[INFO] [stderr] 
[INFO] [stderr] warning: method `newParam` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:149:8
[INFO] [stderr]     |
[INFO] [stderr] 149 |     fn newParam(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stderr]     |        ^^^^^^^^ help: convert the identifier to snake case: `new_param`
[INFO] [stderr] 
[INFO] [stderr] warning: method `newNode` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:158:8
[INFO] [stderr]     |
[INFO] [stderr] 158 |     fn newNode(attributes: &Vec<xml::attribute::OwnedAttribute>) -> Self {
[INFO] [stderr]     |        ^^^^^^^ help: convert the identifier to snake case: `new_node`
[INFO] [stderr] 
[INFO] [stderr] warning: `roslaunchd` (lib) generated 11 warnings
[INFO] [stderr] warning: unused variable: `new_parent`
[INFO] [stderr]   --> src/main.rs:31:25
[INFO] [stderr]    |
[INFO] [stderr] 31 |                     let new_parent = current_node.add_child(Tree::new(opening_tag));
[INFO] [stderr]    |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_parent`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `name`
[INFO] [stderr]   --> src/main.rs:35:39
[INFO] [stderr]    |
[INFO] [stderr] 35 |             Ok(XmlEvent::EndElement { name }) => {
[INFO] [stderr]    |                                       ^^^^ help: try ignoring the field: `name: _`
[INFO] [stderr] 
[INFO] [stderr] warning: `roslaunchd` (bin "roslaunchd" test) generated 2 warnings
[INFO] [stderr] warning: `roslaunchd` (lib test) generated 11 warnings (11 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/roslaunchd-5603f6aa6aa35369)
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/roslaunchd-3114e4a251b3221e)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests roslaunchd
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "1c1f52aca8564b82fab1c54b0416282bfb6ee3c380549489679fa4837613c66a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1c1f52aca8564b82fab1c54b0416282bfb6ee3c380549489679fa4837613c66a", kill_on_drop: false }`
[INFO] [stdout] 1c1f52aca8564b82fab1c54b0416282bfb6ee3c380549489679fa4837613c66a
