[INFO] fetching crate pacman 0.1.3...
[INFO] testing pacman-0.1.3 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate pacman 0.1.3 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate pacman 0.1.3
[INFO] finished tweaking crates.io crate pacman 0.1.3
[INFO] tweaked toml for crates.io crate pacman 0.1.3 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate pacman 0.1.3 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 348fbbbcb86147f078fa94d94c39a5f100afdeeac9a89a6a0c812eca5b018d6a
[INFO] running `Command { std: "docker" "start" "-a" "348fbbbcb86147f078fa94d94c39a5f100afdeeac9a89a6a0c812eca5b018d6a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "348fbbbcb86147f078fa94d94c39a5f100afdeeac9a89a6a0c812eca5b018d6a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "348fbbbcb86147f078fa94d94c39a5f100afdeeac9a89a6a0c812eca5b018d6a", kill_on_drop: false }`
[INFO] [stdout] 348fbbbcb86147f078fa94d94c39a5f100afdeeac9a89a6a0c812eca5b018d6a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ddeaa55b70cd993814142c81f859921eed8c359b997b4188e3ba29a1866d57f4
[INFO] running `Command { std: "docker" "start" "-a" "ddeaa55b70cd993814142c81f859921eed8c359b997b4188e3ba29a1866d57f4", kill_on_drop: false }`
[INFO] [stderr]    Compiling pacman v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `OpenOptions`
[INFO] [stdout]   --> src/ini.rs:35:21
[INFO] [stdout]    |
[INFO] [stdout] 35 | use std::fs::{File, OpenOptions};
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::num::ParseIntError`
[INFO] [stdout]   --> src/ini.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use std::num::ParseIntError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/ini.rs:92:26
[INFO] [stdout]    |
[INFO] [stdout] 92 |             '\\' | '\x00'...'\x1f' | '\x7f'...'\u{00ff}' => self.escape_basics(),
[INFO] [stdout]    |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/ini.rs:92:44
[INFO] [stdout]    |
[INFO] [stdout] 92 |             '\\' | '\x00'...'\x1f' | '\x7f'...'\u{00ff}' => self.escape_basics(),
[INFO] [stdout]    |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/ini.rs:94:23
[INFO] [stdout]    |
[INFO] [stdout] 94 |             '\u{0080}'...'\u{FFFF}' => self.escape_unicode(),
[INFO] [stdout]    |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:129:19
[INFO] [stdout]     |
[INFO] [stdout] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stdout]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:129:37
[INFO] [stdout]     |
[INFO] [stdout] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stdout]     |                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:129:55
[INFO] [stdout]     |
[INFO] [stdout] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stdout]     |                                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:139:23
[INFO] [stdout]     |
[INFO] [stdout] 139 |             '\u{0080}'...'\u{FFFF}' => escaped.push_str(&format!("\\x{:04x}", c as isize)[..]),
[INFO] [stdout]     |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ini.rs:635:32
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ini.rs:663:32
[INFO] [stdout]     |
[INFO] [stdout] 663 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 663 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/ini.rs:658:39
[INFO] [stdout]     |
[INFO] [stdout] 658 |             Error::Io(ref err) => err.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/ini.rs:659:42
[INFO] [stdout]     |
[INFO] [stdout] 659 |             Error::Parse(ref err) => err.description(),
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/ini.rs:665:39
[INFO] [stdout]     |
[INFO] [stdout] 665 |             Error::Io(ref err) => err.cause(),
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/ini.rs:666:42
[INFO] [stdout]     |
[INFO] [stdout] 666 |             Error::Parse(ref err) => err.cause(),
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/ini.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 37 | use std::io::{self, Read, Write};
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/config.rs:86:17
[INFO] [stdout]    |
[INFO] [stdout] 86 |             let mut section : String;
[INFO] [stdout]    |                 ----^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `escape_str` is never used
[INFO] [stdout]    --> src/ini.rs:116:4
[INFO] [stdout]     |
[INFO] [stdout] 116 | fn escape_str(s: &str, policy: EscapePolicy) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:268:17
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn iter(&self) -> std::slice::Iter<String> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn iter(&self) -> std::slice::Iter<'_, String> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:335:28
[INFO] [stdout]     |
[INFO] [stdout] 335 |     pub fn with_section<S>(&mut self, section: Option<S>) -> SectionSetter
[INFO] [stdout]     |                            ^^^^^^^^^                         ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 335 |     pub fn with_section<S>(&mut self, section: Option<S>) -> SectionSetter<'_>
[INFO] [stdout]     |                                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:366:18
[INFO] [stdout]     |
[INFO] [stdout] 366 |     pub fn entry(&mut self, name: Option<String>) -> Entry<Option<String>, Properties> {
[INFO] [stdout]     |                  ^^^^^^^^^                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 366 |     pub fn entry(&mut self, name: Option<String>) -> Entry<'_, Option<String>, Properties> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:376:21
[INFO] [stdout]     |
[INFO] [stdout] 376 |     pub fn sections(&self) -> Keys<Option<String>, Properties> {
[INFO] [stdout]     |                     ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 376 |     pub fn sections(&self) -> Keys<'_, Option<String>, Properties> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.52s
[INFO] running `Command { std: "docker" "inspect" "ddeaa55b70cd993814142c81f859921eed8c359b997b4188e3ba29a1866d57f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ddeaa55b70cd993814142c81f859921eed8c359b997b4188e3ba29a1866d57f4", kill_on_drop: false }`
[INFO] [stdout] ddeaa55b70cd993814142c81f859921eed8c359b997b4188e3ba29a1866d57f4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 13aff996e5a085a5dac03e637b965491acd1ec30f997babbf0e04b5fbe53d702
[INFO] running `Command { std: "docker" "start" "-a" "13aff996e5a085a5dac03e637b965491acd1ec30f997babbf0e04b5fbe53d702", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `OpenOptions`
[INFO] [stdout]   --> src/ini.rs:35:21
[INFO] [stdout]    |
[INFO] [stdout] 35 | use std::fs::{File, OpenOptions};
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::num::ParseIntError`
[INFO] [stdout]   --> src/ini.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use std::num::ParseIntError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/ini.rs:92:26
[INFO] [stdout]    |
[INFO] [stdout] 92 |             '\\' | '\x00'...'\x1f' | '\x7f'...'\u{00ff}' => self.escape_basics(),
[INFO] [stdout]    |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/ini.rs:92:44
[INFO] [stdout]    |
[INFO] [stdout] 92 |             '\\' | '\x00'...'\x1f' | '\x7f'...'\u{00ff}' => self.escape_basics(),
[INFO] [stdout]    |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/ini.rs:94:23
[INFO] [stdout]    |
[INFO] [stdout] 94 |             '\u{0080}'...'\u{FFFF}' => self.escape_unicode(),
[INFO] [stdout]    |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:129:19
[INFO] [stdout]     |
[INFO] [stdout] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stdout]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pacman v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:129:37
[INFO] [stdout]     |
[INFO] [stdout] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stdout]     |                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:129:55
[INFO] [stdout]     |
[INFO] [stdout] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stdout]     |                                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:139:23
[INFO] [stdout]     |
[INFO] [stdout] 139 |             '\u{0080}'...'\u{FFFF}' => escaped.push_str(&format!("\\x{:04x}", c as isize)[..]),
[INFO] [stdout]     |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ini.rs:635:32
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ini.rs:663:32
[INFO] [stdout]     |
[INFO] [stdout] 663 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 663 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/ini.rs:658:39
[INFO] [stdout]     |
[INFO] [stdout] 658 |             Error::Io(ref err) => err.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/ini.rs:659:42
[INFO] [stdout]     |
[INFO] [stdout] 659 |             Error::Parse(ref err) => err.description(),
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/ini.rs:665:39
[INFO] [stdout]     |
[INFO] [stdout] 665 |             Error::Io(ref err) => err.cause(),
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/ini.rs:666:42
[INFO] [stdout]     |
[INFO] [stdout] 666 |             Error::Parse(ref err) => err.cause(),
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/ini.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 37 | use std::io::{self, Read, Write};
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/config.rs:86:17
[INFO] [stdout]    |
[INFO] [stdout] 86 |             let mut section : String;
[INFO] [stdout]    |                 ----^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `escape_str` is never used
[INFO] [stdout]    --> src/ini.rs:116:4
[INFO] [stdout]     |
[INFO] [stdout] 116 | fn escape_str(s: &str, policy: EscapePolicy) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:268:17
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn iter(&self) -> std::slice::Iter<String> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn iter(&self) -> std::slice::Iter<'_, String> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:335:28
[INFO] [stdout]     |
[INFO] [stdout] 335 |     pub fn with_section<S>(&mut self, section: Option<S>) -> SectionSetter
[INFO] [stdout]     |                            ^^^^^^^^^                         ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 335 |     pub fn with_section<S>(&mut self, section: Option<S>) -> SectionSetter<'_>
[INFO] [stdout]     |                                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:366:18
[INFO] [stdout]     |
[INFO] [stdout] 366 |     pub fn entry(&mut self, name: Option<String>) -> Entry<Option<String>, Properties> {
[INFO] [stdout]     |                  ^^^^^^^^^                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 366 |     pub fn entry(&mut self, name: Option<String>) -> Entry<'_, Option<String>, Properties> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:376:21
[INFO] [stdout]     |
[INFO] [stdout] 376 |     pub fn sections(&self) -> Keys<Option<String>, Properties> {
[INFO] [stdout]     |                     ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 376 |     pub fn sections(&self) -> Keys<'_, Option<String>, Properties> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OpenOptions`
[INFO] [stdout]   --> src/ini.rs:35:21
[INFO] [stdout]    |
[INFO] [stdout] 35 | use std::fs::{File, OpenOptions};
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::num::ParseIntError`
[INFO] [stdout]   --> src/ini.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use std::num::ParseIntError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/ini.rs:92:26
[INFO] [stdout]    |
[INFO] [stdout] 92 |             '\\' | '\x00'...'\x1f' | '\x7f'...'\u{00ff}' => self.escape_basics(),
[INFO] [stdout]    |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/ini.rs:92:44
[INFO] [stdout]    |
[INFO] [stdout] 92 |             '\\' | '\x00'...'\x1f' | '\x7f'...'\u{00ff}' => self.escape_basics(),
[INFO] [stdout]    |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/ini.rs:94:23
[INFO] [stdout]    |
[INFO] [stdout] 94 |             '\u{0080}'...'\u{FFFF}' => self.escape_unicode(),
[INFO] [stdout]    |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:129:19
[INFO] [stdout]     |
[INFO] [stdout] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stdout]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:129:37
[INFO] [stdout]     |
[INFO] [stdout] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stdout]     |                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:129:55
[INFO] [stdout]     |
[INFO] [stdout] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stdout]     |                                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ini.rs:139:23
[INFO] [stdout]     |
[INFO] [stdout] 139 |             '\u{0080}'...'\u{FFFF}' => escaped.push_str(&format!("\\x{:04x}", c as isize)[..]),
[INFO] [stdout]     |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ini.rs:635:32
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ini.rs:663:32
[INFO] [stdout]     |
[INFO] [stdout] 663 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 663 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/ini.rs:658:39
[INFO] [stdout]     |
[INFO] [stdout] 658 |             Error::Io(ref err) => err.description(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/ini.rs:659:42
[INFO] [stdout]     |
[INFO] [stdout] 659 |             Error::Parse(ref err) => err.description(),
[INFO] [stdout]     |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/ini.rs:665:39
[INFO] [stdout]     |
[INFO] [stdout] 665 |             Error::Io(ref err) => err.cause(),
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/ini.rs:666:42
[INFO] [stdout]     |
[INFO] [stdout] 666 |             Error::Parse(ref err) => err.cause(),
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/ini.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 37 | use std::io::{self, Read, Write};
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/config.rs:86:17
[INFO] [stdout]    |
[INFO] [stdout] 86 |             let mut section : String;
[INFO] [stdout]    |                 ----^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `escape_str` is never used
[INFO] [stdout]    --> src/ini.rs:116:4
[INFO] [stdout]     |
[INFO] [stdout] 116 | fn escape_str(s: &str, policy: EscapePolicy) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:268:17
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn iter(&self) -> std::slice::Iter<String> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn iter(&self) -> std::slice::Iter<'_, String> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:335:28
[INFO] [stdout]     |
[INFO] [stdout] 335 |     pub fn with_section<S>(&mut self, section: Option<S>) -> SectionSetter
[INFO] [stdout]     |                            ^^^^^^^^^                         ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 335 |     pub fn with_section<S>(&mut self, section: Option<S>) -> SectionSetter<'_>
[INFO] [stdout]     |                                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:366:18
[INFO] [stdout]     |
[INFO] [stdout] 366 |     pub fn entry(&mut self, name: Option<String>) -> Entry<Option<String>, Properties> {
[INFO] [stdout]     |                  ^^^^^^^^^                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 366 |     pub fn entry(&mut self, name: Option<String>) -> Entry<'_, Option<String>, Properties> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/ini.rs:376:21
[INFO] [stdout]     |
[INFO] [stdout] 376 |     pub fn sections(&self) -> Keys<Option<String>, Properties> {
[INFO] [stdout]     |                     ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 376 |     pub fn sections(&self) -> Keys<'_, Option<String>, Properties> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.61s
[INFO] running `Command { std: "docker" "inspect" "13aff996e5a085a5dac03e637b965491acd1ec30f997babbf0e04b5fbe53d702", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "13aff996e5a085a5dac03e637b965491acd1ec30f997babbf0e04b5fbe53d702", kill_on_drop: false }`
[INFO] [stdout] 13aff996e5a085a5dac03e637b965491acd1ec30f997babbf0e04b5fbe53d702
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 34051d2d2ebb111468348ed2a61f19d07eebae06f78c8c888f9ff0dafdc2e88b
[INFO] running `Command { std: "docker" "start" "-a" "34051d2d2ebb111468348ed2a61f19d07eebae06f78c8c888f9ff0dafdc2e88b", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `OpenOptions`
[INFO] [stderr]   --> src/ini.rs:35:21
[INFO] [stderr]    |
[INFO] [stderr] 35 | use std::fs::{File, OpenOptions};
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::num::ParseIntError`
[INFO] [stderr]   --> src/ini.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 | use std::num::ParseIntError;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/ini.rs:92:26
[INFO] [stderr]    |
[INFO] [stderr] 92 |             '\\' | '\x00'...'\x1f' | '\x7f'...'\u{00ff}' => self.escape_basics(),
[INFO] [stderr]    |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/ini.rs:92:44
[INFO] [stderr]    |
[INFO] [stderr] 92 |             '\\' | '\x00'...'\x1f' | '\x7f'...'\u{00ff}' => self.escape_basics(),
[INFO] [stderr]    |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/ini.rs:94:23
[INFO] [stderr]    |
[INFO] [stderr] 94 |             '\u{0080}'...'\u{FFFF}' => self.escape_unicode(),
[INFO] [stderr]    |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ini.rs:129:19
[INFO] [stderr]     |
[INFO] [stderr] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ini.rs:129:37
[INFO] [stderr]     |
[INFO] [stderr] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stderr]     |                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ini.rs:129:55
[INFO] [stderr]     |
[INFO] [stderr] 129 |             '\x01'...'\x06' | '\x0e'...'\x1f' | '\x7f'...'\u{00ff}' => {
[INFO] [stderr]     |                                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ini.rs:139:23
[INFO] [stderr]     |
[INFO] [stderr] 139 |             '\u{0080}'...'\u{FFFF}' => escaped.push_str(&format!("\\x{:04x}", c as isize)[..]),
[INFO] [stderr]     |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ini.rs:635:32
[INFO] [stderr]     |
[INFO] [stderr] 635 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stderr]     |                                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stderr]     |
[INFO] [stdout] running 0 tests
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout] 
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 635 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ini.rs:663:32
[INFO] [stderr]     |
[INFO] [stderr] 663 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stderr]     |                                ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 663 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/ini.rs:658:39
[INFO] [stderr]     |
[INFO] [stderr] 658 |             Error::Io(ref err) => err.description(),
[INFO] [stderr]     |                                       ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/ini.rs:659:42
[INFO] [stderr]     |
[INFO] [stderr] 659 |             Error::Parse(ref err) => err.description(),
[INFO] [stderr]     |                                          ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stderr]    --> src/ini.rs:665:39
[INFO] [stderr]     |
[INFO] [stderr] 665 |             Error::Io(ref err) => err.cause(),
[INFO] [stderr]     |                                       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stderr]    --> src/ini.rs:666:42
[INFO] [stderr]     |
[INFO] [stderr] 666 |             Error::Parse(ref err) => err.cause(),
[INFO] [stderr]     |                                          ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Write`
[INFO] [stderr]   --> src/ini.rs:37:27
[INFO] [stderr]    |
[INFO] [stderr] 37 | use std::io::{self, Read, Write};
[INFO] [stderr]    |                           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/config.rs:86:17
[INFO] [stderr]    |
[INFO] [stderr] 86 |             let mut section : String;
[INFO] [stderr]    |                 ----^^^^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `escape_str` is never used
[INFO] [stderr]    --> src/ini.rs:116:4
[INFO] [stderr]     |
[INFO] [stderr] 116 | fn escape_str(s: &str, policy: EscapePolicy) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stderr]     |
[INFO] [stdout] running 2 tests
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/ini.rs:268:17
[INFO] [stderr]     |
[INFO] [stderr] 268 |     pub fn iter(&self) -> std::slice::Iter<String> {
[INFO] [stderr]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 268 |     pub fn iter(&self) -> std::slice::Iter<'_, String> {
[INFO] [stderr]     |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/ini.rs:335:28
[INFO] [stderr]     |
[INFO] [stderr] 335 |     pub fn with_section<S>(&mut self, section: Option<S>) -> SectionSetter
[INFO] [stderr]     |                            ^^^^^^^^^                         ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 335 |     pub fn with_section<S>(&mut self, section: Option<S>) -> SectionSetter<'_>
[INFO] [stderr]     |                                                                           ++++
[INFO] [stderr] 
[INFO] [stdout] test pacman_cfg_parse ... ok
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/ini.rs:366:18
[INFO] [stderr]     |
[INFO] [stderr] 366 |     pub fn entry(&mut self, name: Option<String>) -> Entry<Option<String>, Properties> {
[INFO] [stderr]     |                  ^^^^^^^^^                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 366 |     pub fn entry(&mut self, name: Option<String>) -> Entry<'_, Option<String>, Properties> {
[INFO] [stderr]     |                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/ini.rs:376:21
[INFO] [stderr]     |
[INFO] [stderr] 376 |     pub fn sections(&self) -> Keys<Option<String>, Properties> {
[INFO] [stderr]     |                     ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 376 |     pub fn sections(&self) -> Keys<'_, Option<String>, Properties> {
[INFO] [stderr]     |                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: `pacman` (lib) generated 22 warnings (run `cargo fix --lib -p pacman` to apply 16 suggestions)
[INFO] [stderr] warning: `pacman` (lib test) generated 22 warnings (22 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pacman-47020acd0edaefc9)
[INFO] [stderr]      Running tests/config.rs (/opt/rustwide/target/debug/deps/config-e3e1e02479a67dc5)
[INFO] [stdout] test pacman_conf ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- pacman_conf stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'pacman_conf' (27) panicked at src/pacman_conf.rs:7:10:
[INFO] [stdout] failed to launch pacman-conf: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x564b0d522992 - std::backtrace_rs::backtrace::libunwind::trace::ha50a1f28c7a10cf8
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x564b0d522992 - std::backtrace_rs::backtrace::trace_unsynchronized::h34f8c4ec82a320bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x564b0d522992 - std::sys::backtrace::_print_fmt::h2d23e84e13d343bc
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x564b0d522992 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hde21067283f7e82e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x564b0d53286f - core::fmt::rt::Argument::fmt::he65307037dca33c6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x564b0d53286f - core::fmt::write::h24186904251c31cb
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x564b0d4f0593 - std::io::default_write_fmt::h4e8d11c5c4b9cafe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x564b0d4f0593 - std::io::Write::write_fmt::ha849be0824d095ef
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x564b0d4fc202 - std::sys::backtrace::BacktraceLock::print::he038489aba5894a6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x564b0d500cdf - std::panicking::default_hook::{{closure}}::h80a26d916c49679b
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x564b0d500b71 - std::panicking::default_hook::he2e9efee79b3dce9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x564b0d4ac4ce - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h202f496763929329
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x564b0d4ac4ce - test::test_main_with_exit_callback::{{closure}}::h805a6913adddaea3
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x564b0d5012ef - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h2883c9d2dbd4e81c
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x564b0d5012ef - std::panicking::panic_with_hook::hf5648b7cec6bc73e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x564b0d50114a - std::panicking::panic_handler::{{closure}}::h1b2ed3864ba94359
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:707:13
[INFO] [stderr] error: test failed, to rerun pass `--test config`
[INFO] [stdout]   16:     0x564b0d4fc339 - std::sys::backtrace::__rust_end_short_backtrace::hd0186b2b27f5aaa7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x564b0d4e4c2d - __rustc[f7dae8b92efe1d7a]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x564b0d53b740 - core::panicking::panic_fmt::hb5d6b83773432920
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x564b0d53ae36 - core::result::unwrap_failed::h427ee4a8bb06d8af
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x564b0d4d551c - core::result::Result<T,E>::expect::h8f2f874d48acdb7a
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/result.rs:1185:23
[INFO] [stdout]   21:     0x564b0d4deeca - pacman::pacman_conf::get_config::h17444c7df859469a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/pacman_conf.rs:7:10
[INFO] [stdout]   22:     0x564b0d48b64a - config::pacman_conf::h1f13e8417fa4c22b
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/config.rs:5:15
[INFO] [stdout]   23:     0x564b0d48b727 - config::pacman_conf::{{closure}}::hd2dfdcf386c4ad2c
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/config.rs:4:17
[INFO] [stdout]   24:     0x564b0d48b1a6 - core::ops::function::FnOnce::call_once::he3d11096fef2e8d4
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x564b0d4ac33b - core::ops::function::FnOnce::call_once::h3a2d82edd1a9b770
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x564b0d4ac33b - test::__rust_begin_short_backtrace::h85d4fe5033219107
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x564b0d4c032d - test::run_test_in_process::{{closure}}::h67b48a81b9c9d7b6
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x564b0d4c032d - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h7680585480377cb5
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   29:     0x564b0d4c032d - std::panicking::catch_unwind::do_call::hf71351b2657d4002
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   30:     0x564b0d4c032d - std::panicking::catch_unwind::h7fcb5c0312d9e172
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   31:     0x564b0d4c032d - std::panic::catch_unwind::h5cf3c9bdee894ebe
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x564b0d4c032d - test::run_test_in_process::h1469cb85193a3a25
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x564b0d4c032d - test::run_test::{{closure}}::h59d45b3cd6453d69
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x564b0d499874 - test::run_test::{{closure}}::h9baa0c3d443f28c9
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x564b0d499874 - std::sys::backtrace::__rust_begin_short_backtrace::h97ea8cee4828663e
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   36:     0x564b0d49d0ca - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h5d7539d5f78cee61
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   37:     0x564b0d49d0ca - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::he4c551e23c5e9b22
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   38:     0x564b0d49d0ca - std::panicking::catch_unwind::do_call::h522b41a6c157aaba
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:590:40
[INFO] [stdout]   39:     0x564b0d49d0ca - std::panicking::catch_unwind::h0efbf72006b8e365
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panicking.rs:553:19
[INFO] [stdout]   40:     0x564b0d49d0ca - std::panic::catch_unwind::h3b081041e6c97066
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x564b0d49d0ca - std::thread::Builder::spawn_unchecked_::{{closure}}::ha751309815d5d8cf
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   42:     0x564b0d49d0ca - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2084b887a5fe25a7
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x564b0d4f773f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3adbd6ccf5f737af
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   44:     0x564b0d4f773f - std::sys::thread::unix::Thread::new::thread_start::hb3dc6483caa1b987
[INFO] [stdout]                                at /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   45:     0x77d6b37d8aa4 - <unknown>
[INFO] [stdout]   46:     0x77d6b3865a64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     pacman_conf
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "34051d2d2ebb111468348ed2a61f19d07eebae06f78c8c888f9ff0dafdc2e88b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "34051d2d2ebb111468348ed2a61f19d07eebae06f78c8c888f9ff0dafdc2e88b", kill_on_drop: false }`
[INFO] [stdout] 34051d2d2ebb111468348ed2a61f19d07eebae06f78c8c888f9ff0dafdc2e88b
