[INFO] cloning repository https://github.com/cristicbz/rust-doom [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cristicbz/rust-doom" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcristicbz%2Frust-doom", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcristicbz%2Frust-doom'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6aa7681cee4e181a2b13ecc9acfa3fcaa2df4014 [INFO] checking cristicbz/rust-doom against try#dd2d87b6cc31907ae305875eb6be399783dc0256 for pr-143929 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcristicbz%2Frust-doom" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] [stderr] error: unable to write file assets/screenshots/readme1.png [INFO] [stderr] error: unable to write file assets/screenshots/readme2.png [INFO] [stderr] fatal: cannot create directory at 'assets/shaders': No space left on device [INFO] [stderr] warning: Clone succeeded, but checkout failed. [INFO] [stderr] You can inspect what was checked out with 'git status' [INFO] [stderr] and retry with 'git restore --source=HEAD :/' [INFO] [stderr] [INFO] checking cristicbz/rust-doom against try#dd2d87b6cc31907ae305875eb6be399783dc0256 for pr-143929 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcristicbz%2Frust-doom" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] [stderr] error: unable to write file assets/screenshots/readme1.png [INFO] [stderr] error: unable to write file assets/screenshots/readme2.png [INFO] [stderr] fatal: cannot create directory at 'assets/shaders': No space left on device [INFO] [stderr] warning: Clone succeeded, but checkout failed. [INFO] [stderr] You can inspect what was checked out with 'git status' [INFO] [stderr] and retry with 'git restore --source=HEAD :/' [INFO] [stderr] [INFO] checking cristicbz/rust-doom against try#dd2d87b6cc31907ae305875eb6be399783dc0256 for pr-143929 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcristicbz%2Frust-doom" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] [stderr] error: unable to write file assets/screenshots/readme1.png [INFO] [stderr] error: unable to write file assets/screenshots/readme2.png [INFO] [stderr] fatal: cannot create directory at 'assets/shaders': No space left on device [INFO] [stderr] warning: Clone succeeded, but checkout failed. [INFO] [stderr] You can inspect what was checked out with 'git status' [INFO] [stderr] and retry with 'git restore --source=HEAD :/' [INFO] [stderr] [INFO] checking cristicbz/rust-doom against try#dd2d87b6cc31907ae305875eb6be399783dc0256 for pr-143929 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcristicbz%2Frust-doom" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/cristicbz/rust-doom [INFO] finished tweaking git repo https://github.com/cristicbz/rust-doom [INFO] tweaked toml for git repo https://github.com/cristicbz/rust-doom written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/cristicbz/rust-doom on toolchain dd2d87b6cc31907ae305875eb6be399783dc0256 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dd2d87b6cc31907ae305875eb6be399783dc0256" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/cristicbz/rust-doom 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" "+dd2d87b6cc31907ae305875eb6be399783dc0256" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+dd2d87b6cc31907ae305875eb6be399783dc0256" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c7b78d7d0c20dab3db25e10d928819c8dd6e0f4be97ba7a7652cd5e9b3c91a00 [INFO] running `Command { std: "docker" "start" "-a" "c7b78d7d0c20dab3db25e10d928819c8dd6e0f4be97ba7a7652cd5e9b3c91a00", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c7b78d7d0c20dab3db25e10d928819c8dd6e0f4be97ba7a7652cd5e9b3c91a00", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c7b78d7d0c20dab3db25e10d928819c8dd6e0f4be97ba7a7652cd5e9b3c91a00", kill_on_drop: false }` [INFO] [stdout] c7b78d7d0c20dab3db25e10d928819c8dd6e0f4be97ba7a7652cd5e9b3c91a00 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+dd2d87b6cc31907ae305875eb6be399783dc0256" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5cd06f943f0b0e44b9f43d226bddf008d3e30b6b8867ae38e7b7318b4a8f9334 [INFO] running `Command { std: "docker" "start" "-a" "5cd06f943f0b0e44b9f43d226bddf008d3e30b6b8867ae38e7b7318b4a8f9334", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.92 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling proc-macro2 v1.0.26 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling xml-rs v0.8.3 [INFO] [stderr] Compiling syn v1.0.68 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling khronos_api v3.1.0 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling nix v0.14.1 [INFO] [stderr] Checking libloading v0.6.7 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking slab v0.4.2 [INFO] [stderr] Checking lazycell v1.3.0 [INFO] [stderr] Compiling pkg-config v0.3.19 [INFO] [stderr] Checking dlib v0.4.2 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Checking gimli v0.23.0 [INFO] [stderr] Checking wayland-sys v0.23.6 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking rustc-demangle v0.1.18 [INFO] [stderr] Checking downcast-rs v1.2.0 [INFO] [stderr] Checking object v0.23.0 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling miniz_oxide v0.4.4 [INFO] [stderr] Checking smallvec v1.6.1 [INFO] [stderr] Checking walkdir v2.3.2 [INFO] [stderr] Compiling cgmath v0.18.0 [INFO] [stderr] Checking scopeguard v1.1.0 [INFO] [stderr] Compiling cc v1.0.67 [INFO] [stderr] Checking xdg v2.2.0 [INFO] [stderr] Compiling memchr v2.3.4 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Checking lock_api v0.3.4 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Checking stb_truetype v0.3.1 [INFO] [stderr] Compiling x11-dl v2.18.5 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Compiling serde_derive v1.0.125 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Checking net2 v0.2.37 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Compiling wayland-scanner v0.23.6 [INFO] [stderr] Checking memmap v0.7.0 [INFO] [stderr] Checking parking_lot_core v0.7.2 [INFO] [stderr] Checking raw-window-handle v0.3.3 [INFO] [stderr] Checking mio v0.6.23 [INFO] [stderr] Checking shared_library v0.1.9 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Checking instant v0.1.9 [INFO] [stderr] Checking percent-encoding v2.1.0 [INFO] [stderr] Compiling serde v1.0.125 [INFO] [stderr] Checking ordered-float v1.1.1 [INFO] [stderr] Checking approx v0.3.2 [INFO] [stderr] Checking line_drawing v0.7.0 [INFO] [stderr] Checking approx v0.4.0 [INFO] [stderr] Checking parking_lot v0.10.2 [INFO] [stderr] Compiling version_check v0.9.3 [INFO] [stderr] Compiling glutin_egl_sys v0.1.5 [INFO] [stderr] Compiling glutin_glx_sys v0.1.7 [INFO] [stderr] Checking mio-extras v2.0.6 [INFO] [stderr] Checking rusttype v0.8.3 [INFO] [stderr] Compiling glium v0.26.0 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Compiling libloading v0.5.2 [INFO] [stderr] Checking aho-corasick v0.7.15 [INFO] [stderr] Checking rand_core v0.4.2 [INFO] [stderr] Checking regex-syntax v0.6.23 [INFO] [stderr] Checking rusttype v0.7.9 [INFO] [stderr] Checking andrew v0.2.1 [INFO] [stderr] Compiling indexmap v1.6.2 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking tinyvec_macros v0.1.0 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking ttf-parser v0.6.2 [INFO] [stderr] Checking takeable-option v0.5.0 [INFO] [stderr] Checking tinyvec v1.1.1 [INFO] [stderr] Checking rand v0.5.6 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking addr2line v0.14.1 [INFO] [stderr] Checking ab_glyph_rasterizer v0.1.4 [INFO] [stderr] Checking hashbrown v0.9.1 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking backtrace v0.3.56 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking unicode-width v0.1.8 [INFO] [stderr] Compiling unicode-segmentation v1.7.1 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking humantime v2.1.0 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking idcontain v0.7.6 [INFO] [stderr] Checking termcolor v1.1.2 [INFO] [stderr] Compiling wayland-client v0.23.6 [INFO] [stderr] Compiling wayland-protocols v0.23.6 [INFO] [stderr] Checking clap v2.33.3 [INFO] [stderr] Compiling heck v0.3.2 [INFO] [stderr] Checking wayland-commons v0.23.6 [INFO] [stderr] Checking calloop v0.4.4 [INFO] [stderr] Checking math v0.1.0 (/opt/rustwide/workdir/math) [INFO] [stderr] Checking unicode-normalization v0.1.17 [INFO] [stderr] Checking owned_ttf_parser v0.6.0 [INFO] [stderr] Checking rusttype v0.9.2 [INFO] [stderr] Checking regex v1.4.5 [INFO] [stderr] Compiling synstructure v0.12.4 [INFO] [stderr] Checking env_logger v0.8.3 [INFO] [stderr] Compiling engine_derive v0.1.0 (/opt/rustwide/workdir/engine_derive) [INFO] [stderr] Compiling structopt-derive v0.4.14 [INFO] [stderr] Checking failure v0.1.8 [INFO] [stderr] Checking failchain v0.1018.2 [INFO] [stderr] Checking structopt v0.3.21 [INFO] [stderr] Checking bincode v1.3.2 [INFO] [stderr] Checking toml v0.5.8 [INFO] [stderr] Checking wad v0.1.0 (/opt/rustwide/workdir/wad) [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> wad/src/image.rs:38:16 [INFO] [stdout] | [INFO] [stdout] 38 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::needless_range_loop))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> wad/src/image.rs:38:16 [INFO] [stdout] | [INFO] [stdout] 38 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::needless_range_loop))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/archive.rs:116:23 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn level_lump(&self, level_index: usize) -> Result { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 116 | pub fn level_lump(&self, level_index: usize) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/archive.rs:120:39 [INFO] [stdout] | [INFO] [stdout] 120 | pub fn required_named_lump<'a, Q>(&self, name: &'a Q) -> Result [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 120 | pub fn required_named_lump<'a, Q>(&self, name: &'a Q) -> Result> [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/archive.rs:129:26 [INFO] [stdout] | [INFO] [stdout] 129 | pub fn named_lump(&self, name: &Q) -> Result> [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 129 | pub fn named_lump(&self, name: &Q) -> Result>> [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/archive.rs:140:26 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn lump_by_index(&self, index: usize) -> Result { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 140 | pub fn lump_by_index(&self, index: usize) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> wad/src/errors.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind` [INFO] [stdout] 10 | pub enum ErrorKind { [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> wad/src/errors.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind` [INFO] [stdout] 10 | pub enum ErrorKind { [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/level.rs:170:29 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn adjacent_sectors(&self, sector: &WadSector) -> AdjacentSectorsIter { [INFO] [stdout] | ^^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 170 | pub fn adjacent_sectors(&self, sector: &WadSector) -> AdjacentSectorsIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/tex.rs:422:18 [INFO] [stdout] | [INFO] [stdout] 422 | animations: &'a [Vec], [INFO] [stdout] | ^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 425 | ) -> Vec> [INFO] [stdout] | ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 425 | ) -> Vec> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/archive.rs:116:23 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn level_lump(&self, level_index: usize) -> Result { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 116 | pub fn level_lump(&self, level_index: usize) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/archive.rs:120:39 [INFO] [stdout] | [INFO] [stdout] 120 | pub fn required_named_lump<'a, Q>(&self, name: &'a Q) -> Result [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 120 | pub fn required_named_lump<'a, Q>(&self, name: &'a Q) -> Result> [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/archive.rs:129:26 [INFO] [stdout] | [INFO] [stdout] 129 | pub fn named_lump(&self, name: &Q) -> Result> [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 129 | pub fn named_lump(&self, name: &Q) -> Result>> [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/archive.rs:140:26 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn lump_by_index(&self, index: usize) -> Result { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 140 | pub fn lump_by_index(&self, index: usize) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> wad/src/errors.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind` [INFO] [stdout] 10 | pub enum ErrorKind { [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> wad/src/errors.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind` [INFO] [stdout] 10 | pub enum ErrorKind { [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/level.rs:170:29 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn adjacent_sectors(&self, sector: &WadSector) -> AdjacentSectorsIter { [INFO] [stdout] | ^^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 170 | pub fn adjacent_sectors(&self, sector: &WadSector) -> AdjacentSectorsIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> wad/src/tex.rs:422:18 [INFO] [stdout] | [INFO] [stdout] 422 | animations: &'a [Vec], [INFO] [stdout] | ^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 425 | ) -> Vec> [INFO] [stdout] | ------------- the lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 425 | ) -> Vec> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking smithay-client-toolkit v0.6.6 [INFO] [stderr] Checking winit v0.21.0 [INFO] [stderr] Checking glutin v0.23.0 [INFO] [stderr] Checking glium-typed-buffer-any v0.6.0 [INFO] [stderr] Checking engine v0.1.0 (/opt/rustwide/workdir/engine) [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> engine/src/lib.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", allow(clippy::too_many_arguments))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> engine/src/text.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", allow(clippy::forget_copy))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> engine/src/entities.rs:211:16 [INFO] [stdout] | [INFO] [stdout] 211 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::cyclomatic_complexity))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> engine/src/meshes.rs:286:12 [INFO] [stdout] | [INFO] [stdout] 286 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::large_enum_variant))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> engine/src/lib.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", allow(clippy::too_many_arguments))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> engine/src/text.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", allow(clippy::forget_copy))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> engine/src/entities.rs:211:16 [INFO] [stdout] | [INFO] [stdout] 211 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::cyclomatic_complexity))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> engine/src/meshes.rs:286:12 [INFO] [stdout] | [INFO] [stdout] 286 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::large_enum_variant))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> engine/src/input.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | Up(UpdateIndex), [INFO] [stdout] | -- ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ButtonState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 261 - Up(UpdateIndex), [INFO] [stdout] 261 + Up(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> engine/src/errors.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind` [INFO] [stdout] 10 | pub enum ErrorKind { [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> engine/src/errors.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind` [INFO] [stdout] 10 | pub enum ErrorKind { [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/materials.rs:53:20 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn get_mut(&mut self, id: MaterialId) -> Option { [INFO] [stdout] | ^^^^^^^^^ -------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 53 | pub fn get_mut(&mut self, id: MaterialId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/meshes.rs:40:16 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn get(&self, mesh_id: MeshId) -> Option { [INFO] [stdout] | ^^^^^ ------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 40 | pub fn get(&self, mesh_id: MeshId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/meshes.rs:67:20 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn get_mut(&mut self, mesh_id: MeshId) -> Option { [INFO] [stdout] | ^^^^^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 67 | pub fn get_mut(&mut self, mesh_id: MeshId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> engine/src/text.rs:37:39 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind` [INFO] [stdout] 38 | #[fail(display = "Font error: {}", 0)] [INFO] [stdout] 39 | pub struct ErrorKind(String); [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> engine/src/text.rs:37:39 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind` [INFO] [stdout] 38 | #[fail(display = "Font error: {}", 0)] [INFO] [stdout] 39 | pub struct ErrorKind(String); [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/uniforms.rs:185:31 [INFO] [stdout] | [INFO] [stdout] 185 | pub fn get_texture_2d_mut(&mut self, texture_id: Texture2dId) -> Option { [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output --------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 185 | pub fn get_texture_2d_mut(&mut self, texture_id: Texture2dId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/uniforms.rs:259:22 [INFO] [stdout] | [INFO] [stdout] 259 | pub fn get_value(&self, id: UniformId) -> Option { [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 259 | pub fn get_value(&self, id: UniformId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> engine/src/input.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | Up(UpdateIndex), [INFO] [stdout] | -- ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ButtonState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 261 - Up(UpdateIndex), [INFO] [stdout] 261 + Up(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> engine/src/errors.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind` [INFO] [stdout] 10 | pub enum ErrorKind { [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> engine/src/errors.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind` [INFO] [stdout] 10 | pub enum ErrorKind { [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/materials.rs:53:20 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn get_mut(&mut self, id: MaterialId) -> Option { [INFO] [stdout] | ^^^^^^^^^ -------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 53 | pub fn get_mut(&mut self, id: MaterialId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/meshes.rs:40:16 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn get(&self, mesh_id: MeshId) -> Option { [INFO] [stdout] | ^^^^^ ------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 40 | pub fn get(&self, mesh_id: MeshId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/meshes.rs:67:20 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn get_mut(&mut self, mesh_id: MeshId) -> Option { [INFO] [stdout] | ^^^^^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 67 | pub fn get_mut(&mut self, mesh_id: MeshId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> engine/src/text.rs:37:39 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind` [INFO] [stdout] 38 | #[fail(display = "Font error: {}", 0)] [INFO] [stdout] 39 | pub struct ErrorKind(String); [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> engine/src/text.rs:37:39 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind` [INFO] [stdout] 38 | #[fail(display = "Font error: {}", 0)] [INFO] [stdout] 39 | pub struct ErrorKind(String); [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/uniforms.rs:185:31 [INFO] [stdout] | [INFO] [stdout] 185 | pub fn get_texture_2d_mut(&mut self, texture_id: Texture2dId) -> Option { [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output --------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 185 | pub fn get_texture_2d_mut(&mut self, texture_id: Texture2dId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> engine/src/uniforms.rs:259:22 [INFO] [stdout] | [INFO] [stdout] 259 | pub fn get_value(&self, id: UniformId) -> Option { [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 259 | pub fn get_value(&self, id: UniformId) -> Option> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking game v0.1.0 (/opt/rustwide/workdir/game) [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> game/src/lib.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", allow(clippy::too_many_arguments))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> game/src/vertex.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", allow(clippy::forget_copy))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> game/src/level.rs:183:16 [INFO] [stdout] | [INFO] [stdout] 183 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::float_cmp))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> game/src/level.rs:513:16 [INFO] [stdout] | [INFO] [stdout] 513 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::too_many_arguments))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> game/src/lib.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", allow(clippy::too_many_arguments))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> game/src/vertex.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", allow(clippy::forget_copy))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> game/src/level.rs:183:16 [INFO] [stdout] | [INFO] [stdout] 183 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::float_cmp))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> game/src/level.rs:513:16 [INFO] [stdout] | [INFO] [stdout] 513 | #[cfg_attr(feature = "cargo-clippy", allow(clippy::too_many_arguments))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> game/src/errors.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind` [INFO] [stdout] 6 | #[fail(display = "Game error: {}", 0)] [INFO] [stdout] 7 | pub struct ErrorKind(pub(crate) String); [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> game/src/errors.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind` [INFO] [stdout] 6 | #[fail(display = "Game error: {}", 0)] [INFO] [stdout] 7 | pub struct ErrorKind(pub(crate) String); [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking rs_doom v0.0.9 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> game/src/errors.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind` [INFO] [stdout] 6 | #[fail(display = "Game error: {}", 0)] [INFO] [stdout] 7 | pub struct ErrorKind(pub(crate) String); [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> game/src/errors.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Eq, PartialEq, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind` [INFO] [stdout] 6 | #[fail(display = "Game error: {}", 0)] [INFO] [stdout] 7 | pub struct ErrorKind(pub(crate) String); [INFO] [stdout] | --------- `ErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 55.01s [INFO] running `Command { std: "docker" "inspect" "5cd06f943f0b0e44b9f43d226bddf008d3e30b6b8867ae38e7b7318b4a8f9334", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5cd06f943f0b0e44b9f43d226bddf008d3e30b6b8867ae38e7b7318b4a8f9334", kill_on_drop: false }` [INFO] [stdout] 5cd06f943f0b0e44b9f43d226bddf008d3e30b6b8867ae38e7b7318b4a8f9334