[INFO] cloning repository https://github.com/wzhd/kseqi
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/wzhd/kseqi" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwzhd%2Fkseqi", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwzhd%2Fkseqi'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8cf7804ed7ee5f57884b9d6d4a101a7563f9ec6a
[INFO] testing wzhd/kseqi against master#1ef7943ee607160a564655b6596f83670ef95df5 for pr-146098-6
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwzhd%2Fkseqi" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/wzhd/kseqi
[INFO] finished tweaking git repo https://github.com/wzhd/kseqi
[INFO] tweaked toml for git repo https://github.com/wzhd/kseqi written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/wzhd/kseqi on toolchain 1ef7943ee607160a564655b6596f83670ef95df5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/wzhd/kseqi 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" "+1ef7943ee607160a564655b6596f83670ef95df5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded x11-dl v2.20.1
[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" "+1ef7943ee607160a564655b6596f83670ef95df5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 231bf1d79db9bf05f503d0e4d2d5797ed5a4069abdf0a14784ee86ec9a9b7b50
[INFO] running `Command { std: "docker" "start" "-a" "231bf1d79db9bf05f503d0e4d2d5797ed5a4069abdf0a14784ee86ec9a9b7b50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "231bf1d79db9bf05f503d0e4d2d5797ed5a4069abdf0a14784ee86ec9a9b7b50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "231bf1d79db9bf05f503d0e4d2d5797ed5a4069abdf0a14784ee86ec9a9b7b50", kill_on_drop: false }`
[INFO] [stdout] 231bf1d79db9bf05f503d0e4d2d5797ed5a4069abdf0a14784ee86ec9a9b7b50
[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" "+1ef7943ee607160a564655b6596f83670ef95df5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fba552248477642eed7bbe40c87187d2ec765baf3935d33cb44237d09836eb3a
[INFO] running `Command { std: "docker" "start" "-a" "fba552248477642eed7bbe40c87187d2ec765baf3935d33cb44237d09836eb3a", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.137
[INFO] [stderr]    Compiling pkg-config v0.3.26
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling env_logger v0.10.0
[INFO] [stderr]    Compiling x11-dl v2.20.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling mio v0.8.5
[INFO] [stderr]    Compiling kseqi-desktop v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/xdl/xinput2.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 |     Ok((xip2))
[INFO] [stdout]    |        ^    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 28 -     Ok((xip2))
[INFO] [stdout] 28 +     Ok(xip2 )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/xdl/xinput2.rs:294:22
[INFO] [stdout]     |
[INFO] [stdout] 294 |         let attach = (self.xidi.attachment );
[INFO] [stdout]     |                      ^                    ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 294 -         let attach = (self.xidi.attachment );
[INFO] [stdout] 294 +         let attach = self.xidi.attachment ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/xdl/mod.rs:115:21
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let event = (&*event);
[INFO] [stdout]     |                     ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 115 -         let event = (&*event);
[INFO] [stdout] 115 +         let event = &*event;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/xdl/mod.rs:527:20
[INFO] [stdout]     |
[INFO] [stdout] 527 |             kbs ^= (1 << b1p);
[INFO] [stdout]     |                    ^        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 527 -             kbs ^= (1 << b1p);
[INFO] [stdout] 527 +             kbs ^= 1 << b1p;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/conf/mod.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for (a) in self.acts.iter() {
[INFO] [stdout]     |             ^ ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 118 -         for (a) in self.acts.iter() {
[INFO] [stdout] 118 +         for a  in self.acts.iter() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/conf/mod.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |             let a = if (&self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0) { "↘"}else {"↗"};
[INFO] [stdout]     |                        ^                                                       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 173 -             let a = if (&self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0) { "↘"}else {"↗"};
[INFO] [stdout] 173 +             let a = if &self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0  { "↘"}else {"↗"};
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/conf/mod.rs:213:43
[INFO] [stdout]     |
[INFO] [stdout] 213 |             Ok((input, a)) => if let Some((sqa)) = a {
[INFO] [stdout]     |                                           ^   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 213 -             Ok((input, a)) => if let Some((sqa)) = a {
[INFO] [stdout] 213 +             Ok((input, a)) => if let Some(sqa ) = a {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]   --> src/signal.rs:23:47
[INFO] [stdout]    |
[INFO] [stdout] 23 |         let os_handler = os_handler as *const extern fn(libc::c_int) as _;
[INFO] [stdout]    |                                               ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/signal.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 |     Ok((r))
[INFO] [stdout]    |        ^ ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 32 -     Ok((r))
[INFO] [stdout] 32 +     Ok(r )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/lib.rs:192:22
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 Some((de)) => {
[INFO] [stdout]     |                      ^  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 192 -                 Some((de)) => {
[INFO] [stdout] 192 +                 Some(de) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `XFreer` is never constructed
[INFO] [stdout]   --> src/xdl/util.rs:85:19
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub(crate) struct XFreer<'a> {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HierarchyInfo` is never used
[INFO] [stdout]   --> src/xdl/data.rs:71:7
[INFO] [stdout]    |
[INFO] [stdout] 71 | trait HierarchyInfo {
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_HierarchyChanged` should have an upper case name
[INFO] [stdout]    --> src/xdl/mod.rs:288:17
[INFO] [stdout]     |
[INFO] [stdout] 288 |                 XI_HierarchyChanged  => {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_HIERARCHY_CHANGED`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_DeviceChanged` should have an upper case name
[INFO] [stdout]    --> src/xdl/mod.rs:295:17
[INFO] [stdout]     |
[INFO] [stdout] 295 |                 XI_DeviceChanged  => Some(Event::XIDeviceChange(*(xcookie.data as *mut _))),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_DEVICE_CHANGED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/xdl/mod.rs:361:21
[INFO] [stdout]     |
[INFO] [stdout] 361 |     pub fn ext_list(&self) -> Extensions {
[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] 361 |     pub fn ext_list(&self) -> Extensions<'_> {
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/xdl/mod.rs:454:27
[INFO] [stdout]     |
[INFO] [stdout] 454 |     pub fn modifier_codes(&self) -> ModifierCodes  {
[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] 454 |     pub fn modifier_codes(&self) -> ModifierCodes<'_>  {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `BadAccess` should have an upper case name
[INFO] [stdout]   --> src/xdl/err.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         BadAccess => XlibErr::Access,
[INFO] [stdout]    |         ^^^^^^^^^ help: convert the identifier to upper case: `BAD_ACCESS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `BadValue` should have an upper case name
[INFO] [stdout]   --> src/xdl/err.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         BadValue  => XlibErr::Value,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to upper case: `BAD_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `BadWindow` should have an upper case name
[INFO] [stdout]   --> src/xdl/err.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         BadWindow  => XlibErr::Window,
[INFO] [stdout]    |         ^^^^^^^^^ help: convert the identifier to upper case: `BAD_WINDOW`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/xdl/xinput2.rs:33:25
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn query_device(&self, dev: Option<i32>) -> DeviceInfos {
[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] 33 |     pub fn query_device(&self, dev: Option<i32>) -> DeviceInfos<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/xdl/xinput2.rs:201:24
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub(crate) fn iter(&self)-> impl Iterator<Item = DeviceInfo> {
[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] 201 |     pub(crate) fn iter(&self)-> impl Iterator<Item = DeviceInfo<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIKeyClass` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:236:17
[INFO] [stdout]     |
[INFO] [stdout] 236 |                 XIKeyClass => {
[INFO] [stdout]     |                 ^^^^^^^^^^ help: convert the identifier to upper case: `XIKEY_CLASS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIMasterPointer` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:338:13
[INFO] [stdout]     |
[INFO] [stdout] 338 |             XIMasterPointer => Self::MasterPointer,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIMASTER_POINTER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIMasterKeyboard` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:339:13
[INFO] [stdout]     |
[INFO] [stdout] 339 |             XIMasterKeyboard => Self::MasterKeyboard,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIMASTER_KEYBOARD`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XISlavePointer` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:340:13
[INFO] [stdout]     |
[INFO] [stdout] 340 |             XISlavePointer => Self::SlavePointer,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XISLAVE_POINTER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XISlaveKeyboard` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:341:13
[INFO] [stdout]     |
[INFO] [stdout] 341 |             XISlaveKeyboard => Self::SlaveKeyboard,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XISLAVE_KEYBOARD`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIFloatingSlave` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             XIFloatingSlave => Self::FloatingSlave,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIFLOATING_SLAVE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_KeyPress` should have an upper case name
[INFO] [stdout]    --> src/xdl/data.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 178 |             XI_KeyPress => {
[INFO] [stdout]     |             ^^^^^^^^^^^ help: convert the identifier to upper case: `XI_KEY_PRESS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_KeyRelease` should have an upper case name
[INFO] [stdout]    --> src/xdl/data.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             XI_KeyRelease => {
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_KEY_RELEASE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn lit_or_esc(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                      ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                      |                |
[INFO] [stdout]    |                      |                the same lifetime is elided here
[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] 53 | fn lit_or_esc(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:62:31
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn content_with_escape(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                               ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |                |
[INFO] [stdout]    |                               |                the same lifetime is elided here
[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] 62 | fn content_with_escape(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:74:18
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn quoted(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                  ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |                |
[INFO] [stdout]    |                  |                the same lifetime is elided here
[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] 74 | fn quoted(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:80:27
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn quoted_or_plain(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                           ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |                |
[INFO] [stdout]    |                           |                the same lifetime is elided here
[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] 80 | fn quoted_or_plain(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:86:16
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn varg(input: &str) -> IResult<&str, Vec<Cow<str>>> {
[INFO] [stdout]    |                ^^^^             ^^^^      ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                |                |
[INFO] [stdout]    |                |                the same lifetime is elided here
[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] 86 | fn varg(input: &str) -> IResult<&str, Vec<Cow<'_, str>>> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/conf/parse.rs:104:27
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn action_text_arg(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]     |                           ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |                |
[INFO] [stdout]     |                           |                the same lifetime is elided here
[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] 104 | fn action_text_arg(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/bin/keyv.rs:22:23
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let Some(e) = ( x.recv_timeout(None)) else {
[INFO] [stdout]    |                       ^^                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 22 -         let Some(e) = ( x.recv_timeout(None)) else {
[INFO] [stdout] 22 +         let Some(e) = x.recv_timeout(None)  else {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.55s
[INFO] running `Command { std: "docker" "inspect" "fba552248477642eed7bbe40c87187d2ec765baf3935d33cb44237d09836eb3a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fba552248477642eed7bbe40c87187d2ec765baf3935d33cb44237d09836eb3a", kill_on_drop: false }`
[INFO] [stdout] fba552248477642eed7bbe40c87187d2ec765baf3935d33cb44237d09836eb3a
[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" "+1ef7943ee607160a564655b6596f83670ef95df5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b9caf0f3b3b579723880520141cb65ccc4495f30de68be8b23fdf0164b072fbc
[INFO] running `Command { std: "docker" "start" "-a" "b9caf0f3b3b579723880520141cb65ccc4495f30de68be8b23fdf0164b072fbc", kill_on_drop: false }`
[INFO] [stderr]    Compiling kseqi-desktop v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/xdl/xinput2.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 |     Ok((xip2))
[INFO] [stdout]    |        ^    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 28 -     Ok((xip2))
[INFO] [stdout] 28 +     Ok(xip2 )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/xdl/xinput2.rs:294:22
[INFO] [stdout]     |
[INFO] [stdout] 294 |         let attach = (self.xidi.attachment );
[INFO] [stdout]     |                      ^                    ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 294 -         let attach = (self.xidi.attachment );
[INFO] [stdout] 294 +         let attach = self.xidi.attachment ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/xdl/mod.rs:115:21
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let event = (&*event);
[INFO] [stdout]     |                     ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 115 -         let event = (&*event);
[INFO] [stdout] 115 +         let event = &*event;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/xdl/mod.rs:527:20
[INFO] [stdout]     |
[INFO] [stdout] 527 |             kbs ^= (1 << b1p);
[INFO] [stdout]     |                    ^        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 527 -             kbs ^= (1 << b1p);
[INFO] [stdout] 527 +             kbs ^= 1 << b1p;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/conf/mod.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for (a) in self.acts.iter() {
[INFO] [stdout]     |             ^ ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 118 -         for (a) in self.acts.iter() {
[INFO] [stdout] 118 +         for a  in self.acts.iter() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/conf/mod.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |             let a = if (&self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0) { "↘"}else {"↗"};
[INFO] [stdout]     |                        ^                                                       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 173 -             let a = if (&self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0) { "↘"}else {"↗"};
[INFO] [stdout] 173 +             let a = if &self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0  { "↘"}else {"↗"};
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/conf/mod.rs:213:43
[INFO] [stdout]     |
[INFO] [stdout] 213 |             Ok((input, a)) => if let Some((sqa)) = a {
[INFO] [stdout]     |                                           ^   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 213 -             Ok((input, a)) => if let Some((sqa)) = a {
[INFO] [stdout] 213 +             Ok((input, a)) => if let Some(sqa ) = a {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]   --> src/signal.rs:23:47
[INFO] [stdout]    |
[INFO] [stdout] 23 |         let os_handler = os_handler as *const extern fn(libc::c_int) as _;
[INFO] [stdout]    |                                               ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/signal.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 |     Ok((r))
[INFO] [stdout]    |        ^ ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 32 -     Ok((r))
[INFO] [stdout] 32 +     Ok(r )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/lib.rs:192:22
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 Some((de)) => {
[INFO] [stdout]     |                      ^  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 192 -                 Some((de)) => {
[INFO] [stdout] 192 +                 Some(de) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `XFreer` is never constructed
[INFO] [stdout]   --> src/xdl/util.rs:85:19
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub(crate) struct XFreer<'a> {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HierarchyInfo` is never used
[INFO] [stdout]   --> src/xdl/data.rs:71:7
[INFO] [stdout]    |
[INFO] [stdout] 71 | trait HierarchyInfo {
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_HierarchyChanged` should have an upper case name
[INFO] [stdout]    --> src/xdl/mod.rs:288:17
[INFO] [stdout]     |
[INFO] [stdout] 288 |                 XI_HierarchyChanged  => {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_HIERARCHY_CHANGED`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_DeviceChanged` should have an upper case name
[INFO] [stdout]    --> src/xdl/mod.rs:295:17
[INFO] [stdout]     |
[INFO] [stdout] 295 |                 XI_DeviceChanged  => Some(Event::XIDeviceChange(*(xcookie.data as *mut _))),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_DEVICE_CHANGED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/xdl/mod.rs:361:21
[INFO] [stdout]     |
[INFO] [stdout] 361 |     pub fn ext_list(&self) -> Extensions {
[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] 361 |     pub fn ext_list(&self) -> Extensions<'_> {
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/xdl/mod.rs:454:27
[INFO] [stdout]     |
[INFO] [stdout] 454 |     pub fn modifier_codes(&self) -> ModifierCodes  {
[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] 454 |     pub fn modifier_codes(&self) -> ModifierCodes<'_>  {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `BadAccess` should have an upper case name
[INFO] [stdout]   --> src/xdl/err.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         BadAccess => XlibErr::Access,
[INFO] [stdout]    |         ^^^^^^^^^ help: convert the identifier to upper case: `BAD_ACCESS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `BadValue` should have an upper case name
[INFO] [stdout]   --> src/xdl/err.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         BadValue  => XlibErr::Value,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to upper case: `BAD_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `BadWindow` should have an upper case name
[INFO] [stdout]   --> src/xdl/err.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         BadWindow  => XlibErr::Window,
[INFO] [stdout]    |         ^^^^^^^^^ help: convert the identifier to upper case: `BAD_WINDOW`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/xdl/xinput2.rs:33:25
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn query_device(&self, dev: Option<i32>) -> DeviceInfos {
[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] 33 |     pub fn query_device(&self, dev: Option<i32>) -> DeviceInfos<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/xdl/xinput2.rs:201:24
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub(crate) fn iter(&self)-> impl Iterator<Item = DeviceInfo> {
[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] 201 |     pub(crate) fn iter(&self)-> impl Iterator<Item = DeviceInfo<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIKeyClass` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:236:17
[INFO] [stdout]     |
[INFO] [stdout] 236 |                 XIKeyClass => {
[INFO] [stdout]     |                 ^^^^^^^^^^ help: convert the identifier to upper case: `XIKEY_CLASS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIMasterPointer` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:338:13
[INFO] [stdout]     |
[INFO] [stdout] 338 |             XIMasterPointer => Self::MasterPointer,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIMASTER_POINTER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIMasterKeyboard` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:339:13
[INFO] [stdout]     |
[INFO] [stdout] 339 |             XIMasterKeyboard => Self::MasterKeyboard,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIMASTER_KEYBOARD`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XISlavePointer` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:340:13
[INFO] [stdout]     |
[INFO] [stdout] 340 |             XISlavePointer => Self::SlavePointer,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XISLAVE_POINTER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XISlaveKeyboard` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:341:13
[INFO] [stdout]     |
[INFO] [stdout] 341 |             XISlaveKeyboard => Self::SlaveKeyboard,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XISLAVE_KEYBOARD`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIFloatingSlave` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             XIFloatingSlave => Self::FloatingSlave,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIFLOATING_SLAVE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_KeyPress` should have an upper case name
[INFO] [stdout]    --> src/xdl/data.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 178 |             XI_KeyPress => {
[INFO] [stdout]     |             ^^^^^^^^^^^ help: convert the identifier to upper case: `XI_KEY_PRESS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_KeyRelease` should have an upper case name
[INFO] [stdout]    --> src/xdl/data.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             XI_KeyRelease => {
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_KEY_RELEASE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn lit_or_esc(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                      ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                      |                |
[INFO] [stdout]    |                      |                the same lifetime is elided here
[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] 53 | fn lit_or_esc(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:62:31
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn content_with_escape(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                               ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |                |
[INFO] [stdout]    |                               |                the same lifetime is elided here
[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] 62 | fn content_with_escape(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:74:18
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn quoted(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                  ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |                |
[INFO] [stdout]    |                  |                the same lifetime is elided here
[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] 74 | fn quoted(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:80:27
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn quoted_or_plain(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                           ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |                |
[INFO] [stdout]    |                           |                the same lifetime is elided here
[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] 80 | fn quoted_or_plain(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:86:16
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn varg(input: &str) -> IResult<&str, Vec<Cow<str>>> {
[INFO] [stdout]    |                ^^^^             ^^^^      ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                |                |
[INFO] [stdout]    |                |                the same lifetime is elided here
[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] 86 | fn varg(input: &str) -> IResult<&str, Vec<Cow<'_, str>>> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/conf/parse.rs:104:27
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn action_text_arg(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]     |                           ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |                |
[INFO] [stdout]     |                           |                the same lifetime is elided here
[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] 104 | fn action_text_arg(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/bin/keyv.rs:22:23
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let Some(e) = ( x.recv_timeout(None)) else {
[INFO] [stdout]    |                       ^^                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 22 -         let Some(e) = ( x.recv_timeout(None)) else {
[INFO] [stdout] 22 +         let Some(e) = x.recv_timeout(None)  else {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/xdl/xinput2.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 |     Ok((xip2))
[INFO] [stdout]    |        ^    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 28 -     Ok((xip2))
[INFO] [stdout] 28 +     Ok(xip2 )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/xdl/xinput2.rs:294:22
[INFO] [stdout]     |
[INFO] [stdout] 294 |         let attach = (self.xidi.attachment );
[INFO] [stdout]     |                      ^                    ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 294 -         let attach = (self.xidi.attachment );
[INFO] [stdout] 294 +         let attach = self.xidi.attachment ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/xdl/mod.rs:115:21
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let event = (&*event);
[INFO] [stdout]     |                     ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 115 -         let event = (&*event);
[INFO] [stdout] 115 +         let event = &*event;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/xdl/mod.rs:527:20
[INFO] [stdout]     |
[INFO] [stdout] 527 |             kbs ^= (1 << b1p);
[INFO] [stdout]     |                    ^        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 527 -             kbs ^= (1 << b1p);
[INFO] [stdout] 527 +             kbs ^= 1 << b1p;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/conf/mod.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for (a) in self.acts.iter() {
[INFO] [stdout]     |             ^ ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 118 -         for (a) in self.acts.iter() {
[INFO] [stdout] 118 +         for a  in self.acts.iter() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/conf/mod.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |             let a = if (&self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0) { "↘"}else {"↗"};
[INFO] [stdout]     |                        ^                                                       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 173 -             let a = if (&self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0) { "↘"}else {"↗"};
[INFO] [stdout] 173 +             let a = if &self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0  { "↘"}else {"↗"};
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/conf/mod.rs:213:43
[INFO] [stdout]     |
[INFO] [stdout] 213 |             Ok((input, a)) => if let Some((sqa)) = a {
[INFO] [stdout]     |                                           ^   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 213 -             Ok((input, a)) => if let Some((sqa)) = a {
[INFO] [stdout] 213 +             Ok((input, a)) => if let Some(sqa ) = a {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/conf/mod.rs:378:36
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let sv = SmoVec::from_iter((0..10)).unwrap();
[INFO] [stdout]     |                                    ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 378 -         let sv = SmoVec::from_iter((0..10)).unwrap();
[INFO] [stdout] 378 +         let sv = SmoVec::from_iter(0..10 ).unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/conf/mod.rs:380:36
[INFO] [stdout]     |
[INFO] [stdout] 380 |         let sv = SmoVec::from_iter((0..6)).unwrap();
[INFO] [stdout]     |                                    ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 380 -         let sv = SmoVec::from_iter((0..6)).unwrap();
[INFO] [stdout] 380 +         let sv = SmoVec::from_iter(0..6 ).unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/conf/mod.rs:382:36
[INFO] [stdout]     |
[INFO] [stdout] 382 |         let sv = SmoVec::from_iter((0..8)).unwrap();
[INFO] [stdout]     |                                    ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 382 -         let sv = SmoVec::from_iter((0..8)).unwrap();
[INFO] [stdout] 382 +         let sv = SmoVec::from_iter(0..8 ).unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/conf/mod.rs:384:36
[INFO] [stdout]     |
[INFO] [stdout] 384 |         let sv = SmoVec::from_iter((0..7));
[INFO] [stdout]     |                                    ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 384 -         let sv = SmoVec::from_iter((0..7));
[INFO] [stdout] 384 +         let sv = SmoVec::from_iter(0..7 );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]   --> src/signal.rs:23:47
[INFO] [stdout]    |
[INFO] [stdout] 23 |         let os_handler = os_handler as *const extern fn(libc::c_int) as _;
[INFO] [stdout]    |                                               ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/signal.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 |     Ok((r))
[INFO] [stdout]    |        ^ ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 32 -     Ok((r))
[INFO] [stdout] 32 +     Ok(r )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/lib.rs:192:22
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 Some((de)) => {
[INFO] [stdout]     |                      ^  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 192 -                 Some((de)) => {
[INFO] [stdout] 192 +                 Some(de) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `XFreer` is never constructed
[INFO] [stdout]   --> src/xdl/util.rs:85:19
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub(crate) struct XFreer<'a> {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HierarchyInfo` is never used
[INFO] [stdout]   --> src/xdl/data.rs:71:7
[INFO] [stdout]    |
[INFO] [stdout] 71 | trait HierarchyInfo {
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_HierarchyChanged` should have an upper case name
[INFO] [stdout]    --> src/xdl/mod.rs:288:17
[INFO] [stdout]     |
[INFO] [stdout] 288 |                 XI_HierarchyChanged  => {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_HIERARCHY_CHANGED`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_DeviceChanged` should have an upper case name
[INFO] [stdout]    --> src/xdl/mod.rs:295:17
[INFO] [stdout]     |
[INFO] [stdout] 295 |                 XI_DeviceChanged  => Some(Event::XIDeviceChange(*(xcookie.data as *mut _))),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_DEVICE_CHANGED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/xdl/mod.rs:361:21
[INFO] [stdout]     |
[INFO] [stdout] 361 |     pub fn ext_list(&self) -> Extensions {
[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] 361 |     pub fn ext_list(&self) -> Extensions<'_> {
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/xdl/mod.rs:454:27
[INFO] [stdout]     |
[INFO] [stdout] 454 |     pub fn modifier_codes(&self) -> ModifierCodes  {
[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] 454 |     pub fn modifier_codes(&self) -> ModifierCodes<'_>  {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `BadAccess` should have an upper case name
[INFO] [stdout]   --> src/xdl/err.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         BadAccess => XlibErr::Access,
[INFO] [stdout]    |         ^^^^^^^^^ help: convert the identifier to upper case: `BAD_ACCESS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `BadValue` should have an upper case name
[INFO] [stdout]   --> src/xdl/err.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         BadValue  => XlibErr::Value,
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to upper case: `BAD_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `BadWindow` should have an upper case name
[INFO] [stdout]   --> src/xdl/err.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         BadWindow  => XlibErr::Window,
[INFO] [stdout]    |         ^^^^^^^^^ help: convert the identifier to upper case: `BAD_WINDOW`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/xdl/xinput2.rs:33:25
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn query_device(&self, dev: Option<i32>) -> DeviceInfos {
[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] 33 |     pub fn query_device(&self, dev: Option<i32>) -> DeviceInfos<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/xdl/xinput2.rs:201:24
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub(crate) fn iter(&self)-> impl Iterator<Item = DeviceInfo> {
[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] 201 |     pub(crate) fn iter(&self)-> impl Iterator<Item = DeviceInfo<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIKeyClass` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:236:17
[INFO] [stdout]     |
[INFO] [stdout] 236 |                 XIKeyClass => {
[INFO] [stdout]     |                 ^^^^^^^^^^ help: convert the identifier to upper case: `XIKEY_CLASS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIMasterPointer` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:338:13
[INFO] [stdout]     |
[INFO] [stdout] 338 |             XIMasterPointer => Self::MasterPointer,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIMASTER_POINTER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIMasterKeyboard` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:339:13
[INFO] [stdout]     |
[INFO] [stdout] 339 |             XIMasterKeyboard => Self::MasterKeyboard,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIMASTER_KEYBOARD`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XISlavePointer` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:340:13
[INFO] [stdout]     |
[INFO] [stdout] 340 |             XISlavePointer => Self::SlavePointer,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XISLAVE_POINTER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XISlaveKeyboard` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:341:13
[INFO] [stdout]     |
[INFO] [stdout] 341 |             XISlaveKeyboard => Self::SlaveKeyboard,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XISLAVE_KEYBOARD`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XIFloatingSlave` should have an upper case name
[INFO] [stdout]    --> src/xdl/xinput2.rs:342:13
[INFO] [stdout]     |
[INFO] [stdout] 342 |             XIFloatingSlave => Self::FloatingSlave,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIFLOATING_SLAVE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_KeyPress` should have an upper case name
[INFO] [stdout]    --> src/xdl/data.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 178 |             XI_KeyPress => {
[INFO] [stdout]     |             ^^^^^^^^^^^ help: convert the identifier to upper case: `XI_KEY_PRESS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant in pattern `XI_KeyRelease` should have an upper case name
[INFO] [stdout]    --> src/xdl/data.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             XI_KeyRelease => {
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_KEY_RELEASE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn lit_or_esc(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                      ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                      |                |
[INFO] [stdout]    |                      |                the same lifetime is elided here
[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] 53 | fn lit_or_esc(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:62:31
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn content_with_escape(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                               ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |                |
[INFO] [stdout]    |                               |                the same lifetime is elided here
[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] 62 | fn content_with_escape(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:74:18
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn quoted(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                  ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |                |
[INFO] [stdout]    |                  |                the same lifetime is elided here
[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] 74 | fn quoted(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:80:27
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn quoted_or_plain(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]    |                           ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |                |
[INFO] [stdout]    |                           |                the same lifetime is elided here
[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] 80 | fn quoted_or_plain(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/conf/parse.rs:86:16
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn varg(input: &str) -> IResult<&str, Vec<Cow<str>>> {
[INFO] [stdout]    |                ^^^^             ^^^^      ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                |                |
[INFO] [stdout]    |                |                the same lifetime is elided here
[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] 86 | fn varg(input: &str) -> IResult<&str, Vec<Cow<'_, str>>> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/conf/parse.rs:104:27
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn action_text_arg(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stdout]     |                           ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |                |
[INFO] [stdout]     |                           |                the same lifetime is elided here
[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] 104 | fn action_text_arg(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.10s
[INFO] running `Command { std: "docker" "inspect" "b9caf0f3b3b579723880520141cb65ccc4495f30de68be8b23fdf0164b072fbc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b9caf0f3b3b579723880520141cb65ccc4495f30de68be8b23fdf0164b072fbc", kill_on_drop: false }`
[INFO] [stdout] b9caf0f3b3b579723880520141cb65ccc4495f30de68be8b23fdf0164b072fbc
[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" "+1ef7943ee607160a564655b6596f83670ef95df5" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 630a368b2ece5be46089257b27325ce2d3b3de76605720f6502eb57e3da3d878
[INFO] running `Command { std: "docker" "start" "-a" "630a368b2ece5be46089257b27325ce2d3b3de76605720f6502eb57e3da3d878", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]   --> src/xdl/xinput2.rs:28:8
[INFO] [stderr]    |
[INFO] [stderr] 28 |     Ok((xip2))
[INFO] [stderr]    |        ^    ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 28 -     Ok((xip2))
[INFO] [stderr] 28 +     Ok(xip2 )
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/xdl/xinput2.rs:294:22
[INFO] [stderr]     |
[INFO] [stderr] 294 |         let attach = (self.xidi.attachment );
[INFO] [stderr]     |                      ^                    ^^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 294 -         let attach = (self.xidi.attachment );
[INFO] [stderr] 294 +         let attach = self.xidi.attachment ;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/xdl/mod.rs:115:21
[INFO] [stderr]     |
[INFO] [stderr] 115 |         let event = (&*event);
[INFO] [stderr]     |                     ^       ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 115 -         let event = (&*event);
[INFO] [stderr] 115 +         let event = &*event;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/xdl/mod.rs:527:20
[INFO] [stderr]     |
[INFO] [stderr] 527 |             kbs ^= (1 << b1p);
[INFO] [stderr]     |                    ^        ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 527 -             kbs ^= (1 << b1p);
[INFO] [stderr] 527 +             kbs ^= 1 << b1p;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around pattern
[INFO] [stderr]    --> src/conf/mod.rs:118:13
[INFO] [stderr]     |
[INFO] [stderr] 118 |         for (a) in self.acts.iter() {
[INFO] [stderr]     |             ^ ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 118 -         for (a) in self.acts.iter() {
[INFO] [stderr] 118 +         for a  in self.acts.iter() {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/conf/mod.rs:173:24
[INFO] [stderr]     |
[INFO] [stderr] 173 |             let a = if (&self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0) { "↘"}else {"↗"};
[INFO] [stderr]     |                        ^                                                       ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 173 -             let a = if (&self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0) { "↘"}else {"↗"};
[INFO] [stderr] 173 +             let a = if &self.sq[..i].iter().filter(|&a| a == k).count() %2 ==0  { "↘"}else {"↗"};
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around pattern
[INFO] [stderr]    --> src/conf/mod.rs:213:43
[INFO] [stderr]     |
[INFO] [stderr] 213 |             Ok((input, a)) => if let Some((sqa)) = a {
[INFO] [stderr]     |                                           ^   ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 213 -             Ok((input, a)) => if let Some((sqa)) = a {
[INFO] [stderr] 213 +             Ok((input, a)) => if let Some(sqa ) = a {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stderr]   --> src/signal.rs:23:47
[INFO] [stderr]    |
[INFO] [stderr] 23 |         let os_handler = os_handler as *const extern fn(libc::c_int) as _;
[INFO] [stderr]    |                                               ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(missing_abi)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]   --> src/signal.rs:32:8
[INFO] [stderr]    |
[INFO] [stderr] 32 |     Ok((r))
[INFO] [stderr]    |        ^ ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 32 -     Ok((r))
[INFO] [stderr] 32 +     Ok(r )
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around pattern
[INFO] [stderr]    --> src/lib.rs:192:22
[INFO] [stderr]     |
[INFO] [stderr] 192 |                 Some((de)) => {
[INFO] [stderr]     |                      ^  ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 192 -                 Some((de)) => {
[INFO] [stderr] 192 +                 Some(de) => {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: struct `XFreer` is never constructed
[INFO] [stderr]   --> src/xdl/util.rs:85:19
[INFO] [stderr]    |
[INFO] [stderr] 85 | pub(crate) struct XFreer<'a> {
[INFO] [stderr]    |                   ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait `HierarchyInfo` is never used
[INFO] [stderr]   --> src/xdl/data.rs:71:7
[INFO] [stderr]    |
[INFO] [stderr] 71 | trait HierarchyInfo {
[INFO] [stderr]    |       ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XI_HierarchyChanged` should have an upper case name
[INFO] [stderr]    --> src/xdl/mod.rs:288:17
[INFO] [stderr]     |
[INFO] [stderr] 288 |                 XI_HierarchyChanged  => {
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_HIERARCHY_CHANGED`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XI_DeviceChanged` should have an upper case name
[INFO] [stderr]    --> src/xdl/mod.rs:295:17
[INFO] [stderr]     |
[INFO] [stderr] 295 |                 XI_DeviceChanged  => Some(Event::XIDeviceChange(*(xcookie.data as *mut _))),
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_DEVICE_CHANGED`
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/xdl/mod.rs:361:21
[INFO] [stderr]     |
[INFO] [stderr] 361 |     pub fn ext_list(&self) -> Extensions {
[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] 361 |     pub fn ext_list(&self) -> Extensions<'_> {
[INFO] [stderr]     |                                         ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/xdl/mod.rs:454:27
[INFO] [stderr]     |
[INFO] [stderr] 454 |     pub fn modifier_codes(&self) -> ModifierCodes  {
[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] 454 |     pub fn modifier_codes(&self) -> ModifierCodes<'_>  {
[INFO] [stderr]     |                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `BadAccess` should have an upper case name
[INFO] [stderr]   --> src/xdl/err.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 |         BadAccess => XlibErr::Access,
[INFO] [stderr]    |         ^^^^^^^^^ help: convert the identifier to upper case: `BAD_ACCESS`
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `BadValue` should have an upper case name
[INFO] [stderr]   --> src/xdl/err.rs:35:9
[INFO] [stderr]    |
[INFO] [stderr] 35 |         BadValue  => XlibErr::Value,
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to upper case: `BAD_VALUE`
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `BadWindow` should have an upper case name
[INFO] [stderr]   --> src/xdl/err.rs:36:9
[INFO] [stderr]    |
[INFO] [stderr] 36 |         BadWindow  => XlibErr::Window,
[INFO] [stderr]    |         ^^^^^^^^^ help: convert the identifier to upper case: `BAD_WINDOW`
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/xdl/xinput2.rs:33:25
[INFO] [stderr]    |
[INFO] [stderr] 33 |     pub fn query_device(&self, dev: Option<i32>) -> DeviceInfos {
[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] 33 |     pub fn query_device(&self, dev: Option<i32>) -> DeviceInfos<'_> {
[INFO] [stderr]    |                                                                ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/xdl/xinput2.rs:201:24
[INFO] [stderr]     |
[INFO] [stderr] 201 |     pub(crate) fn iter(&self)-> impl Iterator<Item = DeviceInfo> {
[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] 201 |     pub(crate) fn iter(&self)-> impl Iterator<Item = DeviceInfo<'_>> {
[INFO] [stderr]     |                                                                ++++
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XIKeyClass` should have an upper case name
[INFO] [stderr]    --> src/xdl/xinput2.rs:236:17
[INFO] [stderr]     |
[INFO] [stderr] 236 |                 XIKeyClass => {
[INFO] [stderr]     |                 ^^^^^^^^^^ help: convert the identifier to upper case: `XIKEY_CLASS`
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XIMasterPointer` should have an upper case name
[INFO] [stderr]    --> src/xdl/xinput2.rs:338:13
[INFO] [stderr]     |
[INFO] [stderr] 338 |             XIMasterPointer => Self::MasterPointer,
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIMASTER_POINTER`
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XIMasterKeyboard` should have an upper case name
[INFO] [stderr]    --> src/xdl/xinput2.rs:339:13
[INFO] [stderr]     |
[INFO] [stderr] 339 |             XIMasterKeyboard => Self::MasterKeyboard,
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIMASTER_KEYBOARD`
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XISlavePointer` should have an upper case name
[INFO] [stderr]    --> src/xdl/xinput2.rs:340:13
[INFO] [stderr]     |
[INFO] [stderr] 340 |             XISlavePointer => Self::SlavePointer,
[INFO] [stderr]     |             ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XISLAVE_POINTER`
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XISlaveKeyboard` should have an upper case name
[INFO] [stderr]    --> src/xdl/xinput2.rs:341:13
[INFO] [stderr]     |
[INFO] [stderr] 341 |             XISlaveKeyboard => Self::SlaveKeyboard,
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XISLAVE_KEYBOARD`
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XIFloatingSlave` should have an upper case name
[INFO] [stderr]    --> src/xdl/xinput2.rs:342:13
[INFO] [stderr]     |
[INFO] [stderr] 342 |             XIFloatingSlave => Self::FloatingSlave,
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `XIFLOATING_SLAVE`
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XI_KeyPress` should have an upper case name
[INFO] [stderr]    --> src/xdl/data.rs:178:13
[INFO] [stderr]     |
[INFO] [stderr] 178 |             XI_KeyPress => {
[INFO] [stderr]     |             ^^^^^^^^^^^ help: convert the identifier to upper case: `XI_KEY_PRESS`
[INFO] [stderr] 
[INFO] [stderr] warning: constant in pattern `XI_KeyRelease` should have an upper case name
[INFO] [stderr]    --> src/xdl/data.rs:184:13
[INFO] [stderr]     |
[INFO] [stderr] 184 |             XI_KeyRelease => {
[INFO] [stderr]     |             ^^^^^^^^^^^^^ help: convert the identifier to upper case: `XI_KEY_RELEASE`
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/conf/parse.rs:53:22
[INFO] [stderr]    |
[INFO] [stderr] 53 | fn lit_or_esc(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stderr]    |                      ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                      |                |
[INFO] [stderr]    |                      |                the same lifetime is elided here
[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] 53 | fn lit_or_esc(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stderr]    |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/conf/parse.rs:62:31
[INFO] [stderr]    |
[INFO] [stderr] 62 | fn content_with_escape(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stderr]    |                               ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                               |                |
[INFO] [stderr]    |                               |                the same lifetime is elided here
[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] 62 | fn content_with_escape(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stderr]    |                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/conf/parse.rs:74:18
[INFO] [stderr]    |
[INFO] [stderr] 74 | fn quoted(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stderr]    |                  ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                  |                |
[INFO] [stderr]    |                  |                the same lifetime is elided here
[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] 74 | fn quoted(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stderr]    |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/conf/parse.rs:80:27
[INFO] [stderr]    |
[INFO] [stderr] 80 | fn quoted_or_plain(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stderr]    |                           ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                           |                |
[INFO] [stderr]    |                           |                the same lifetime is elided here
[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] 80 | fn quoted_or_plain(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stderr]    |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/conf/parse.rs:86:16
[INFO] [stderr]    |
[INFO] [stderr] 86 | fn varg(input: &str) -> IResult<&str, Vec<Cow<str>>> {
[INFO] [stderr]    |                ^^^^             ^^^^      ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                |                |
[INFO] [stderr]    |                |                the same lifetime is elided here
[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] 86 | fn varg(input: &str) -> IResult<&str, Vec<Cow<'_, str>>> {
[INFO] [stderr]    |                                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/conf/parse.rs:104:27
[INFO] [stderr]     |
[INFO] [stderr] 104 | fn action_text_arg(input: &str) -> IResult<&str, Cow<str>> {
[INFO] [stderr]     |                           ^^^^             ^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                           |                |
[INFO] [stderr]     |                           |                the same lifetime is elided here
[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] 104 | fn action_text_arg(input: &str) -> IResult<&str, Cow<'_, str>> {
[INFO] [stderr]     |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]    --> src/conf/mod.rs:378:36
[INFO] [stderr]     |
[INFO] [stderr] 378 |         let sv = SmoVec::from_iter((0..10)).unwrap();
[INFO] [stderr]     |                                    ^     ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 378 -         let sv = SmoVec::from_iter((0..10)).unwrap();
[INFO] [stderr] 378 +         let sv = SmoVec::from_iter(0..10 ).unwrap();
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]    --> src/conf/mod.rs:380:36
[INFO] [stderr]     |
[INFO] [stderr] 380 |         let sv = SmoVec::from_iter((0..6)).unwrap();
[INFO] [stderr]     |                                    ^    ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 380 -         let sv = SmoVec::from_iter((0..6)).unwrap();
[INFO] [stderr] 380 +         let sv = SmoVec::from_iter(0..6 ).unwrap();
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]    --> src/conf/mod.rs:382:36
[INFO] [stderr]     |
[INFO] [stderr] 382 |         let sv = SmoVec::from_iter((0..8)).unwrap();
[INFO] [stderr]     |                                    ^    ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 382 -         let sv = SmoVec::from_iter((0..8)).unwrap();
[INFO] [stderr] 382 +         let sv = SmoVec::from_iter(0..8 ).unwrap();
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]    --> src/conf/mod.rs:384:36
[INFO] [stderr]     |
[INFO] [stderr] 384 |         let sv = SmoVec::from_iter((0..7));
[INFO] [stderr]     |                                    ^    ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 384 -         let sv = SmoVec::from_iter((0..7));
[INFO] [stderr] 384 +         let sv = SmoVec::from_iter(0..7 );
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `kseqi-desktop` (lib) generated 35 warnings (run `cargo fix --lib -p kseqi-desktop` to apply 20 suggestions)
[INFO] [stderr] warning: `kseqi-desktop` (lib test) generated 39 warnings (35 duplicates) (run `cargo fix --lib -p kseqi-desktop --tests` to apply 4 suggestions)
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/bin/keyv.rs:22:23
[INFO] [stderr]    |
[INFO] [stderr] 22 |         let Some(e) = ( x.recv_timeout(None)) else {
[INFO] [stderr]    |                       ^^                    ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 22 -         let Some(e) = ( x.recv_timeout(None)) else {
[INFO] [stderr] 22 +         let Some(e) = x.recv_timeout(None)  else {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: `kseqi-desktop` (bin "keyv" test) generated 1 warning (run `cargo fix --bin "keyv" -p kseqi-desktop --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kseqi_desktop-6d1436e6dcede3cc)
[INFO] [stdout] 
[INFO] [stdout] running 25 tests
[INFO] [stdout] test conf::parse::tests::nom1 ... ok
[INFO] [stdout] test conf::parse::tests::nom10 ... ok
[INFO] [stdout] test conf::parse::tests::nom11 ... ok
[INFO] [stdout] test conf::parse::tests::nom12 ... ok
[INFO] [stdout] test conf::parse::tests::nom13 ... ok
[INFO] [stdout] test conf::parse::tests::nom14 ... ok
[INFO] [stdout] test conf::parse::tests::nom3 ... ok
[INFO] [stdout] test conf::parse::tests::nom2 ... ok
[INFO] [stdout] test conf::parse::tests::nom4 ... ok
[INFO] [stdout] test conf::parse::tests::nom15 ... ok
[INFO] [stdout] test conf::parse::tests::nom7 ... ok
[INFO] [stdout] test conf::parse::tests::nom5 ... ok
[INFO] [stdout] test conf::parse::tests::nom8 ... ok
[INFO] [stdout] test conf::parse::tests::nom6 ... ok
[INFO] [stdout] test conf::parse::tests::nome ... ok
[INFO] [stdout] test dispatch::key_changer::tests::knu ... ok
[INFO] [stderr] 
[INFO] [stderr] thread 'xdl::keysym::tests::kes' (45) panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/x11-dl-2.20.1/src/xlib.rs:25:1:
[INFO] [stderr] null pointer dereference occurred
[INFO] [stderr] stack backtrace:
[INFO] [stderr]    0:     0x5d3fc0d184d2 - std::backtrace_rs::backtrace::libunwind::trace::h786de35fecf3582f
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stderr]    1:     0x5d3fc0d184d2 - std::backtrace_rs::backtrace::trace_unsynchronized::h4a7da1a2a64387f1
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stderr]    2:     0x5d3fc0d184d2 - std::sys::backtrace::_print_fmt::h6bd7d500070c788c
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:66:9
[INFO] [stderr]    3:     0x5d3fc0d184d2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h6d82c1afff976903
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:39:26
[INFO] [stderr]    4:     0x5d3fc0d2889f - core::fmt::rt::Argument::fmt::hc4ce6d643d397690
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/fmt/rt.rs:173:76
[INFO] [stderr]    5:     0x5d3fc0d2889f - core::fmt::write::hb1e7ca88b6a3936e
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/fmt/mod.rs:1469:25
[INFO] [stderr]    6:     0x5d3fc0ce5de3 - std::io::default_write_fmt::hd5a9ffaa98f14929
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/io/mod.rs:639:11
[INFO] [stderr]    7:     0x5d3fc0ce5de3 - std::io::Write::write_fmt::hc04a1e5003ed78ae
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/io/mod.rs:1954:13
[INFO] [stderr]    8:     0x5d3fc0cf1a52 - std::sys::backtrace::BacktraceLock::print::ha2430613ee79d059
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:42:9
[INFO] [stderr]    9:     0x5d3fc0cf670f - std::panicking::default_hook::{{closure}}::hdbd2db9e5c303cf6
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:301:27
[INFO] [stderr]   10:     0x5d3fc0cf6569 - std::panicking::default_hook::hed93c70cba5fdcf0
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:328:9
[INFO] [stderr]   11:     0x5d3fc0cad19e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd0ee8b569efc6a07
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/alloc/src/boxed.rs:2099:9
[INFO] [stderr]   12:     0x5d3fc0cad19e - test::test_main_with_exit_callback::{{closure}}::hf10864b576ecd15d
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:145:21
[INFO] [stderr]   13:     0x5d3fc0cf6d1f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3a55ca34534c0d00
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/alloc/src/boxed.rs:2099:9
[INFO] [stderr]   14:     0x5d3fc0cf6d1f - std::panicking::panic_with_hook::h3862d766c2cec19b
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:842:13
[INFO] [stderr]   15:     0x5d3fc0cf6b46 - std::panicking::panic_handler::{{closure}}::hb95eb402b5e28ee1
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:700:13
[INFO] [stderr]   16:     0x5d3fc0cf1b99 - std::sys::backtrace::__rust_end_short_backtrace::hf73a26dc1835d85a
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:174:18
[INFO] [stderr]   17:     0x5d3fc0cda47d - __rustc[6ed5915ee467787]::rust_begin_unwind
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:698:5
[INFO] [stderr]   18:     0x5d3fc0d3009d - core::panicking::panic_nounwind_fmt::runtime::hfa05cfe792208e7b
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/panicking.rs:122:22
[INFO] [stderr]   19:     0x5d3fc0d3009d - core::panicking::panic_nounwind_fmt::h05a292a1d694c9f8
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/intrinsics/mod.rs:2439:9
[INFO] [stderr]   20:     0x5d3fc0d3027d - core::panicking::panic_null_pointer_dereference::h3aa4b2e4baf07325
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/panicking.rs:307:5
[INFO] [stderr]   21:     0x5d3fc0cd020e - <x11_dl::xlib::Xlib::init::SYMS as core::ops::deref::Deref>::deref::__static_ref_initialize::h730300814bb63077
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/x11-dl-2.20.1/src/link.rs:40:38
[INFO] [stderr]   22:     0x5d3fc0cd020e - core::ops::function::FnOnce::call_once::h338919f978b3fcbe
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   23:     0x5d3fc0cd3cb3 - lazy_static::lazy::Lazy<T>::get::{{closure}}::h86f98369b660d222
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.4.0/src/inline_lazy.rs:31:29
[INFO] [stderr]   24:     0x5d3fc0cd080e - std::sync::once::Once::call_once::{{closure}}::h8223f5c03fdc3b87
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sync/once.rs:158:41
[INFO] [stderr]   25:     0x5d3fc0cec1d7 - std::sys::sync::once::futex::Once::call::hdfb110d980a21994
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/sync/once/futex.rs:178:21
[INFO] [stderr]   26:     0x5d3fc0cd06b7 - std::sync::once::Once::call_once::h8921c166b1d3eb54
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sync/once.rs:158:20
[INFO] [stderr]   27:     0x5d3fc0cd61b3 - lazy_static::lazy::Lazy<T>::get::h414a59456521bfc0
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.4.0/src/inline_lazy.rs:30:16
[INFO] [stderr]   28:     0x5d3fc0cd61b3 - <x11_dl::xlib::Xlib::init::SYMS as core::ops::deref::Deref>::deref::__stability::h637dd7926007f423
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.4.0/src/lib.rs:142:26
[INFO] [stderr]   29:     0x5d3fc0cd61b3 - <x11_dl::xlib::Xlib::init::SYMS as core::ops::deref::Deref>::deref::h163dc3a12a39e166
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.4.0/src/lib.rs:144:17
[INFO] [stderr]   30:     0x5d3fc0cd5c03 - x11_dl::xlib::Xlib::init::hfbd5ca43f33d3da4
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/x11-dl-2.20.1/src/link.rs:46:36
[INFO] [stderr]   31:     0x5d3fc0cd6041 - x11_dl::xlib::Xlib::open::hc6a8dcb1cfc5f1de
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/x11-dl-2.20.1/src/link.rs:59:11
[INFO] [stderr]   32:     0x5d3fc0c7304f - kseqi_desktop::xdl::with_xl::{{closure}}::h8783b8806a34338d
[INFO] [stderr]                                at /opt/rustwide/workdir/src/xdl/mod.rs:69:19
[INFO] [stderr]   33:     0x5d3fc0c759d9 - std::thread::local::LocalKey<T>::try_with::h308fbcbf2ed21bc4
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/thread/local.rs:508:12
[INFO] [stderr]   34:     0x5d3fc0c758ad - std::thread::local::LocalKey<T>::with::he8090f1275aab932
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/thread/local.rs:472:20
[INFO] [stderr]   35:     0x5d3fc0c72688 - kseqi_desktop::xdl::with_xl::hda49dbfff8670f42
[INFO] [stderr]                                at /opt/rustwide/workdir/src/xdl/mod.rs:67:13
[INFO] [stderr]   36:     0x5d3fc0c71dfd - kseqi_desktop::xdl::get_x::h88ea245f123c722a
[INFO] [stderr]                                at /opt/rustwide/workdir/src/xdl/mod.rs:89:5
[INFO] [stderr]   37:     0x5d3fc0c714e7 - kseqi_desktop::xdl::Xconn::new::h0a5208743f4ad5bf
[INFO] [stderr]                                at /opt/rustwide/workdir/src/xdl/mod.rs:135:20
[INFO] [stderr]   38:     0x5d3fc0c71e94 - kseqi_desktop::xdl::keysym::tests::kes::h15dd6bfa2ce2d1a2
[INFO] [stderr]                                at /opt/rustwide/workdir/src/xdl/keysym.rs:1350:16
[INFO] [stderr]   39:     0x5d3fc0c72547 - kseqi_desktop::xdl::keysym::tests::kes::{{closure}}::h2b35c79433061d4f
[INFO] [stderr]                                at /opt/rustwide/workdir/src/xdl/keysym.rs:1349:13
[INFO] [stderr]   40:     0x5d3fc0c767c6 - core::ops::function::FnOnce::call_once::h78f02279e1523e34
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   41:     0x5d3fc0cacf7b - core::ops::function::FnOnce::call_once::ha729ee35d2fab541
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   42:     0x5d3fc0cacf7b - test::__rust_begin_short_backtrace::ha40f4db8207e1111
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:663:18
[INFO] [stderr]   43:     0x5d3fc0cc0ffd - test::run_test_in_process::{{closure}}::hc1b77cda5d44f0f3
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:686:74
[INFO] [stderr]   44:     0x5d3fc0cc0ffd - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h1dbea1de64785521
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stderr]   45:     0x5d3fc0cc0ffd - std::panicking::catch_unwind::do_call::hd5febe9affd5a1b3
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:590:40
[INFO] [stderr]   46:     0x5d3fc0cc0ffd - std::panicking::catch_unwind::h51ea89627559b6f4
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:553:19
[INFO] [stderr]   47:     0x5d3fc0cc0ffd - std::panic::catch_unwind::hb8b8c2367cae3d66
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panic.rs:359:14
[INFO] [stderr]   48:     0x5d3fc0cc0ffd - test::run_test_in_process::ha5b55801407ea100
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:686:27
[INFO] [stderr]   49:     0x5d3fc0cc0ffd - test::run_test::{{closure}}::h0b9d4072b527abf5
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:607:43
[INFO] [stderr]   50:     0x5d3fc0c9a514 - test::run_test::{{closure}}::hb1056b5731205822
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:637:41
[INFO] [stderr]   51:     0x5d3fc0c9a514 - std::sys::backtrace::__rust_begin_short_backtrace::hb61ff5a34023c7ef
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:158:18
[INFO] [stderr]   52:     0x5d3fc0c9de4a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hb0a83c0e8b353cff
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/thread/mod.rs:562:17
[INFO] [stderr]   53:     0x5d3fc0c9de4a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb4f32cb008535298
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stderr]   54:     0x5d3fc0c9de4a - std::panicking::catch_unwind::do_call::h16d110e4fc35789a
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:590:40
[INFO] [stderr]   55:     0x5d3fc0c9de4a - std::panicking::catch_unwind::hea9118f355699c4b
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:553:19
[INFO] [stderr]   56:     0x5d3fc0c9de4a - std::panic::catch_unwind::hf4b3c2a06d3f42f5
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panic.rs:359:14
[INFO] [stderr]   57:     0x5d3fc0c9de4a - std::thread::Builder::spawn_unchecked_::{{closure}}::h3f4cb733a52d53d5
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/thread/mod.rs:560:30
[INFO] [stderr]   58:     0x5d3fc0c9de4a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h4052f0967b37caeb
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   59:     0x5d3fc0cecf8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7ec433abd3f148b4
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/alloc/src/boxed.rs:2085:9
[INFO] [stderr]   60:     0x5d3fc0cecf8f - std::sys::thread::unix::Thread::new::thread_start::he514622d3d7ba65c
[INFO] [stderr]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stderr]   61:     0x7d5cc86a7aa4 - <unknown>
[INFO] [stderr]   62:     0x7d5cc8734a64 - clone
[INFO] [stderr]   63:                0x0 - <unknown>
[INFO] [stderr] thread caused non-unwinding panic. aborting.
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/kseqi_desktop-6d1436e6dcede3cc` (signal: 6, SIGABRT: process abort signal)
[INFO] running `Command { std: "docker" "inspect" "630a368b2ece5be46089257b27325ce2d3b3de76605720f6502eb57e3da3d878", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "630a368b2ece5be46089257b27325ce2d3b3de76605720f6502eb57e3da3d878", kill_on_drop: false }`
[INFO] [stdout] 630a368b2ece5be46089257b27325ce2d3b3de76605720f6502eb57e3da3d878
