[INFO] cloning repository https://github.com/davefol/Poker-Range-Trainer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/davefol/Poker-Range-Trainer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavefol%2FPoker-Range-Trainer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavefol%2FPoker-Range-Trainer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c5e2c3fa2ece904a9add1a513451dad80d470eee
[INFO] checking davefol/Poker-Range-Trainer against 5c543b0b8c73c7b72bc8284ced4fb22ead15734d for pr-160186
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavefol%2FPoker-Range-Trainer" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/davefol/Poker-Range-Trainer
[INFO] finished tweaking git repo https://github.com/davefol/Poker-Range-Trainer
[INFO] tweaked toml for git repo https://github.com/davefol/Poker-Range-Trainer written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/davefol/Poker-Range-Trainer on toolchain 5c543b0b8c73c7b72bc8284ced4fb22ead15734d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/davefol/Poker-Range-Trainer 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" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded copyless v0.1.4
[INFO] [stderr]   Downloaded gfx-backend-empty v0.4.0
[INFO] [stderr]   Downloaded lock_api v0.3.4
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.62
[INFO] [stderr]   Downloaded linked-hash-map v0.5.3
[INFO] [stderr]   Downloaded gfx-hal v0.4.1
[INFO] [stderr]   Downloaded ttf-parser v0.2.2
[INFO] [stderr]   Downloaded libloading v0.5.2
[INFO] [stderr]   Downloaded quote v0.6.13
[INFO] [stderr]   Downloaded arrayvec v0.5.1
[INFO] [stderr]   Downloaded futures v0.1.29
[INFO] [stderr]   Downloaded serde_derive v1.0.110
[INFO] [stderr]   Downloaded crc32fast v1.2.0
[INFO] [stderr]   Downloaded wayland-protocols v0.23.6
[INFO] [stderr]   Downloaded atom v0.3.5
[INFO] [stderr]   Downloaded futures-macro v0.3.5
[INFO] [stderr]   Downloaded walkdir v2.3.1
[INFO] [stderr]   Downloaded xdg v2.2.0
[INFO] [stderr]   Downloaded iced_native v0.2.2
[INFO] [stderr]   Downloaded font-kit v0.4.0
[INFO] [stderr]   Downloaded core-graphics v0.17.3
[INFO] [stderr]   Downloaded cmake v0.1.44
[INFO] [stderr]   Downloaded autocfg v1.0.0
[INFO] [stderr]   Downloaded pin-project-internal v0.4.17
[INFO] [stderr]   Downloaded ndk-sys v0.1.0
[INFO] [stderr]   Downloaded futures-io v0.3.5
[INFO] [stderr]   Downloaded quickcheck_macros v0.9.1
[INFO] [stderr]   Downloaded relevant v0.4.2
[INFO] [stderr]   Downloaded twox-hash v1.5.0
[INFO] [stderr]   Downloaded gfx-auxil v0.1.0
[INFO] [stderr]   Downloaded quote v1.0.6
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.62
[INFO] [stderr]   Downloaded crossbeam-deque v0.7.3
[INFO] [stderr]   Downloaded adler32 v1.0.4
[INFO] [stderr]   Downloaded memmap v0.7.0
[INFO] [stderr]   Downloaded ndk-glue v0.1.0
[INFO] [stderr]   Downloaded shared_library v0.1.9
[INFO] [stderr]   Downloaded rendy-descriptor v0.5.1
[INFO] [stderr]   Downloaded dlib v0.4.1
[INFO] [stderr]   Downloaded memoffset v0.5.4
[INFO] [stderr]   Downloaded iced_winit v0.1.0
[INFO] [stderr]   Downloaded redox_syscall v0.1.56
[INFO] [stderr]   Downloaded inflate v0.4.5
[INFO] [stderr]   Downloaded winit v0.22.2
[INFO] [stderr]   Downloaded colorful v0.2.1
[INFO] [stderr]   Downloaded bumpalo v2.6.0
[INFO] [stderr]   Downloaded rctree v0.3.3
[INFO] [stderr]   Downloaded downcast-rs v1.1.1
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.62
[INFO] [stderr]   Downloaded getrandom v0.1.14
[INFO] [stderr]   Downloaded quickcheck v0.9.2
[INFO] [stderr]   Downloaded unicode-xid v0.1.0
[INFO] [stderr]   Downloaded byteorder v1.3.4
[INFO] [stderr]   Downloaded smallvec v0.6.13
[INFO] [stderr]   Downloaded simplecss v0.2.0
[INFO] [stderr]   Downloaded core-graphics v0.19.0
[INFO] [stderr]   Downloaded clipboard_wayland v0.1.0
[INFO] [stderr]   Downloaded storage-map v0.2.0
[INFO] [stderr]   Downloaded parking_lot v0.10.2
[INFO] [stderr]   Downloaded libflate v0.1.27
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.6.6
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.62
[INFO] [stderr]   Downloaded parking_lot v0.9.0
[INFO] [stderr]   Downloaded proc-macro2 v0.4.30
[INFO] [stderr]   Downloaded cc v1.0.54
[INFO] [stderr]   Downloaded wgpu-native v0.4.3
[INFO] [stderr]   Downloaded unicode-script v0.3.0
[INFO] [stderr]   Downloaded synstructure v0.10.2
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.8
[INFO] [stderr]   Downloaded rendy-memory v0.5.2
[INFO] [stderr]   Downloaded svgtypes v0.5.0
[INFO] [stderr]   Downloaded parking_lot_core v0.6.2
[INFO] [stderr]   Downloaded num-traits v0.2.11
[INFO] [stderr]   Downloaded crossbeam-utils v0.7.2
[INFO] [stderr]   Downloaded dirs-sys v0.3.4
[INFO] [stderr]   Downloaded zerocopy v0.2.8
[INFO] [stderr]   Downloaded gfx-backend-vulkan v0.4.3
[INFO] [stderr]   Downloaded parking_lot_core v0.7.2
[INFO] [stderr]   Downloaded roxmltree v0.7.3
[INFO] [stderr]   Downloaded kurbo v0.2.3
[INFO] [stderr]   Downloaded serde v1.0.110
[INFO] [stderr]   Downloaded ryu v1.0.4
[INFO] [stderr]   Downloaded bumpalo v3.3.0
[INFO] [stderr]   Downloaded crossbeam-epoch v0.8.2
[INFO] [stderr]   Downloaded proc-macro2 v1.0.17
[INFO] [stderr]   Downloaded x11 v2.18.2
[INFO] [stderr]   Downloaded rle-decode-fast v1.0.1
[INFO] [stderr]   Downloaded gfx-backend-dx12 v0.4.3
[INFO] [stderr]   Downloaded gfx-backend-dx11 v0.4.6
[INFO] [stderr]   Downloaded glyph_brush v0.6.3
[INFO] [stderr]   Downloaded cocoa v0.20.1
[INFO] [stderr]   Downloaded iced_core v0.2.1
[INFO] [stderr]   Downloaded ordered-float v1.0.2
[INFO] [stderr]   Downloaded resvg v0.8.0
[INFO] [stderr]   Downloaded clipboard_macos v0.1.0
[INFO] [stderr]   Downloaded serde_json v1.0.53
[INFO] [stderr]   Downloaded wgpu_glyph v0.7.0
[INFO] [stderr]   Downloaded js-sys v0.3.39
[INFO] [stderr]   Downloaded iced_wgpu v0.2.2
[INFO] [stderr]   Downloaded clipboard-win v2.2.0
[INFO] [stderr]   Downloaded window_clipboard v0.1.1
[INFO] [stderr]   Downloaded dodrio v0.1.0
[INFO] [stderr]   Downloaded usvg v0.8.0
[INFO] [stderr]   Downloaded xi-unicode v0.2.0
[INFO] [stderr]   Downloaded pkg-config v0.3.17
[INFO] [stderr]   Downloaded gfx-backend-metal v0.4.5
[INFO] [stderr]   Downloaded lyon_geom v0.14.1
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.62
[INFO] [stderr]   Downloaded xcb v0.9.0
[INFO] [stderr]   Downloaded unicode-normalization v0.1.12
[INFO] [stderr]   Downloaded num_enum_derive v0.4.3
[INFO] [stderr]   Downloaded syn v1.0.29
[INFO] [stderr]   Downloaded harfbuzz_rs v1.1.1
[INFO] [stderr]   Downloaded ash v0.29.0
[INFO] [stderr]   Downloaded svg_fmt v0.2.1
[INFO] [stderr]   Downloaded lyon_path v0.14.0
[INFO] [stderr]   Downloaded float-ord v0.2.0
[INFO] [stderr]   Downloaded siphasher v0.2.3
[INFO] [stderr]   Downloaded zerocopy-derive v0.1.4
[INFO] [stderr]   Downloaded deflate v0.7.20
[INFO] [stderr]   Downloaded net2 v0.2.34
[INFO] [stderr]   Downloaded raqote v0.6.4
[INFO] [stderr]   Downloaded x11-dl v2.18.5
[INFO] [stderr]   Downloaded chrono v0.4.11
[INFO] [stderr]   Downloaded spirv_cross v0.16.0
[INFO] [stderr]   Downloaded take_mut v0.2.2
[INFO] [stderr]   Downloaded wayland-client v0.23.6
[INFO] [stderr]   Downloaded raw-window-handle v0.3.3
[INFO] [stderr]   Downloaded range-alloc v0.1.0
[INFO] [stderr]   Downloaded harfbuzz-sys v0.3.4
[INFO] [stderr]   Downloaded smithay-clipboard v0.3.7
[INFO] [stderr]   Downloaded iced_web v0.2.1
[INFO] [stderr]   Downloaded d3d12 v0.3.0
[INFO] [stderr]   Downloaded futures-task v0.3.5
[INFO] [stderr]   Downloaded futures-core v0.3.5
[INFO] [stderr]   Downloaded wayland-sys v0.23.6
[INFO] [stderr]   Downloaded core-foundation-sys v0.6.2
[INFO] [stderr]   Downloaded float-cmp v0.5.3
[INFO] [stderr]   Downloaded glyph_brush_layout v0.1.9
[INFO] [stderr]   Downloaded proc-macro-nested v0.1.4
[INFO] [stderr]   Downloaded futures-sink v0.3.5
[INFO] [stderr]   Downloaded servo-fontconfig v0.4.0
[INFO] [stderr]   Downloaded euclid_macros v0.1.0
[INFO] [stderr]   Downloaded dirs v1.0.5
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.12
[INFO] [stderr]   Downloaded instant v0.1.4
[INFO] [stderr]   Downloaded rgb v0.8.17
[INFO] [stderr]   Downloaded sw-composite v0.5.10
[INFO] [stderr]   Downloaded once_cell v1.4.0
[INFO] [stderr]   Downloaded futures-executor v0.3.5
[INFO] [stderr]   Downloaded wayland-scanner v0.23.6
[INFO] [stderr]   Downloaded miow v0.2.1
[INFO] [stderr]   Downloaded lazycell v1.2.1
[INFO] [stderr]   Downloaded calloop v0.4.4
[INFO] [stderr]   Downloaded rust-argon2 v0.7.0
[INFO] [stderr]   Downloaded base64 v0.11.0
[INFO] [stderr]   Downloaded ndk v0.1.0
[INFO] [stderr]   Downloaded derivative v2.1.1
[INFO] [stderr]   Downloaded num-integer v0.1.42
[INFO] [stderr]   Downloaded pin-project v0.4.17
[INFO] [stderr]   Downloaded xml-rs v0.8.3
[INFO] [stderr]   Downloaded euclid v0.20.12
[INFO] [stderr]   Downloaded futures-util v0.3.5
[INFO] [stderr]   Downloaded url v2.1.1
[INFO] [stderr]   Downloaded jpeg-decoder v0.1.19
[INFO] [stderr]   Downloaded iced v0.1.1
[INFO] [stderr]   Downloaded itoa v0.4.5
[INFO] [stderr]   Downloaded wgpu v0.4.0
[INFO] [stderr]   Downloaded servo-freetype-sys v4.0.5
[INFO] [stderr]   Downloaded toml v0.5.6
[INFO] [stderr]   Downloaded base64 v0.10.1
[INFO] [stderr]   Downloaded web-sys v0.3.39
[INFO] [stderr]   Downloaded proc-macro-hack v0.5.16
[INFO] [stderr]   Downloaded redox_users v0.3.4
[INFO] [stderr]   Downloaded andrew v0.2.1
[INFO] [stderr]   Downloaded futures v0.3.5
[INFO] [stderr]   Downloaded num_enum v0.4.3
[INFO] [stderr]   Downloaded rusttype v0.7.9
[INFO] [stderr]   Downloaded guillotiere v0.4.4
[INFO] [stderr]   Downloaded glam v0.8.7
[INFO] [stderr]   Downloaded android_log-sys v0.1.2
[INFO] [stderr]   Downloaded core-text v13.3.2
[INFO] [stderr]   Downloaded arrayref v0.3.6
[INFO] [stderr]   Downloaded mio-extras v2.0.6
[INFO] [stderr]   Downloaded data-url v0.1.0
[INFO] [stderr]   Downloaded proc-macro-crate v0.1.4
[INFO] [stderr]   Downloaded expat-sys v2.1.6
[INFO] [stderr]   Downloaded nix v0.14.1
[INFO] [stderr]   Downloaded libc v0.2.70
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.3.27
[INFO] [stderr]   Downloaded typed-arena v1.7.0
[INFO] [stderr]   Downloaded unicode-segmentation v1.6.0
[INFO] [stderr]   Downloaded blake2b_simd v0.5.10
[INFO] [stderr]   Downloaded dwrote v0.9.0
[INFO] [stderr]   Downloaded iced_style v0.1.0
[INFO] [stderr]   Downloaded core-foundation v0.6.4
[INFO] [stderr]   Downloaded png v0.15.3
[INFO] [stderr]   Downloaded freetype v0.4.1
[INFO] [stderr]   Downloaded iced_futures v0.1.2
[INFO] [stderr]   Downloaded euclid v0.19.9
[INFO] [stderr]   Downloaded line_drawing v0.7.0
[INFO] [stderr]   Downloaded wayland-commons v0.23.6
[INFO] [stderr]   Downloaded xmlparser v0.10.0
[INFO] [stderr]   Downloaded time v0.1.43
[INFO] [stderr]   Downloaded mio v0.6.22
[INFO] [stderr]   Downloaded servo-fontconfig-sys v4.0.9
[INFO] [stderr]   Downloaded clipboard_x11 v0.1.0
[INFO] [stderr]   Downloaded syn v0.15.44
[INFO] [stderr]   Downloaded smallvec v1.4.0
[INFO] [stderr]   Downloaded futures-channel v0.3.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 57085757b64b7cdae8ca450ce10b8840411286618328a04b4a3f588378f58b3e
[INFO] running `Command { std: "docker" "start" "57085757b64b7cdae8ca450ce10b8840411286618328a04b4a3f588378f58b3e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "57085757b64b7cdae8ca450ce10b8840411286618328a04b4a3f588378f58b3e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "57085757b64b7cdae8ca450ce10b8840411286618328a04b4a3f588378f58b3e" "/opt/rustwide/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "57085757b64b7cdae8ca450ce10b8840411286618328a04b4a3f588378f58b3e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "57085757b64b7cdae8ca450ce10b8840411286618328a04b4a3f588378f58b3e" "/opt/rustwide/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.70
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling cc v1.0.54
[INFO] [stderr]    Compiling pkg-config v0.3.17
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.17
[INFO] [stderr]    Compiling syn v1.0.29
[INFO] [stderr]    Compiling xml-rs v0.8.3
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]     Checking linked-hash-map v0.5.3
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]    Compiling arrayvec v0.4.12
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling memoffset v0.5.4
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]     Checking smallvec v0.6.13
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking lazycell v1.2.1
[INFO] [stderr]     Checking walkdir v2.3.1
[INFO] [stderr]    Compiling proc-macro-nested v0.1.4
[INFO] [stderr]     Checking nodrop v0.1.14
[INFO] [stderr]    Compiling cmake v0.1.44
[INFO] [stderr]     Checking stb_truetype v0.3.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.8
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking lock_api v0.3.4
[INFO] [stderr]    Compiling crc32fast v1.2.0
[INFO] [stderr]    Compiling proc-macro-hack v0.5.16
[INFO] [stderr]     Checking futures-core v0.3.5
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]     Checking raw-window-handle v0.3.3
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.34
[INFO] [stderr]    Compiling quote v1.0.6
[INFO] [stderr]    Compiling wayland-scanner v0.23.6
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking gfx-hal v0.4.1
[INFO] [stderr]     Checking once_cell v1.4.0
[INFO] [stderr]     Checking downcast-rs v1.1.1
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]    Compiling servo-freetype-sys v4.0.5
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking mio v0.6.22
[INFO] [stderr]     Checking futures-sink v0.3.5
[INFO] [stderr]     Checking adler32 v1.0.4
[INFO] [stderr]     Checking futures-task v0.3.5
[INFO] [stderr]    Compiling expat-sys v2.1.6
[INFO] [stderr]     Checking crossbeam-deque v0.7.3
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking futures-channel v0.3.5
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]     Checking ordered-float v1.0.2
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]    Compiling x11 v2.18.2
[INFO] [stderr]     Checking dlib v0.4.1
[INFO] [stderr]     Checking rusttype v0.8.3
[INFO] [stderr]     Checking wayland-sys v0.23.6
[INFO] [stderr]     Checking futures-io v0.3.5
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]     Checking freetype v0.4.1
[INFO] [stderr]     Checking euclid v0.20.12
[INFO] [stderr]    Compiling harfbuzz-sys v0.3.4
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking relevant v0.4.2
[INFO] [stderr]     Checking atom v0.3.5
[INFO] [stderr]     Checking ash v0.29.0
[INFO] [stderr]     Checking rusttype v0.7.9
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]    Compiling servo-fontconfig-sys v4.0.9
[INFO] [stderr]     Checking hibitset v0.6.3
[INFO] [stderr]     Checking matches v0.1.8
[INFO] [stderr]     Checking arrayvec v0.5.1
[INFO] [stderr]     Checking colorful v0.2.1
[INFO] [stderr]    Compiling xcb v0.9.0
[INFO] [stderr]     Checking twox-hash v1.5.0
[INFO] [stderr]     Checking andrew v0.2.1
[INFO] [stderr]     Checking deflate v0.7.20
[INFO] [stderr]     Checking inflate v0.4.5
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]     Checking float-cmp v0.5.3
[INFO] [stderr]     Checking xi-unicode v0.2.0
[INFO] [stderr]     Checking xmlparser v0.10.0
[INFO] [stderr]     Checking siphasher v0.2.3
[INFO] [stderr]     Checking rle-decode-fast v1.0.1
[INFO] [stderr]     Checking lyon_geom v0.14.1
[INFO] [stderr]     Checking smallvec v1.4.0
[INFO] [stderr]     Checking take_mut v0.2.2
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking iced_core v0.2.1
[INFO] [stderr]     Checking copyless v0.1.4
[INFO] [stderr]     Checking libflate v0.1.27
[INFO] [stderr]     Checking png v0.15.3
[INFO] [stderr]     Checking parking_lot_core v0.7.2
[INFO] [stderr]     Checking glyph_brush_layout v0.1.9
[INFO] [stderr]     Checking roxmltree v0.7.3
[INFO] [stderr]     Checking svgtypes v0.5.0
[INFO] [stderr]     Checking harfbuzz_rs v1.1.1
[INFO] [stderr]     Checking data-url v0.1.0
[INFO] [stderr]     Checking unicode-bidi v0.3.4
[INFO] [stderr]     Checking kurbo v0.2.3
[INFO] [stderr]     Checking base64 v0.10.1
[INFO] [stderr]    Compiling wayland-client v0.23.6
[INFO] [stderr]    Compiling wayland-protocols v0.23.6
[INFO] [stderr]     Checking rendy-memory v0.5.2
[INFO] [stderr]     Checking rendy-descriptor v0.5.1
[INFO] [stderr]     Checking gfx-backend-empty v0.4.0
[INFO] [stderr]     Checking simplecss v0.2.0
[INFO] [stderr]     Checking xmlwriter v0.1.0
[INFO] [stderr]    Compiling glam v0.8.7
[INFO] [stderr]     Checking ttf-parser v0.2.2
[INFO] [stderr]     Checking unicode-segmentation v1.6.0
[INFO] [stderr]     Checking rctree v0.3.3
[INFO] [stderr]    Compiling serde v1.0.110
[INFO] [stderr]     Checking sw-composite v0.5.10
[INFO] [stderr]     Checking unicode-script v0.3.0
[INFO] [stderr]     Checking typed-arena v1.7.0
[INFO] [stderr]     Checking unicode-vo v0.1.0
[INFO] [stderr]     Checking glyph_brush v0.6.3
[INFO] [stderr]     Checking lyon_path v0.14.0
[INFO] [stderr]     Checking raqote v0.6.4
[INFO] [stderr]     Checking parking_lot v0.10.2
[INFO] [stderr]     Checking servo-fontconfig v0.4.0
[INFO] [stderr]     Checking wayland-commons v0.23.6
[INFO] [stderr]     Checking calloop v0.4.4
[INFO] [stderr]     Checking usvg v0.8.0
[INFO] [stderr]     Checking dirs v1.0.5
[INFO] [stderr]     Checking jpeg-decoder v0.1.19
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]     Checking rgb v0.8.17
[INFO] [stderr]    Compiling ryu v1.0.4
[INFO] [stderr]     Checking percent-encoding v2.1.0
[INFO] [stderr]     Checking instant v0.1.4
[INFO] [stderr]     Checking float-ord v0.2.0
[INFO] [stderr]     Checking svg_fmt v0.2.1
[INFO] [stderr]     Checking iced_style v0.1.0
[INFO] [stderr]     Checking dirs-sys v0.3.4
[INFO] [stderr]     Checking font-kit v0.4.0
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]     Checking either v1.5.3
[INFO] [stderr]    Compiling synstructure v0.10.2
[INFO] [stderr]     Checking itoa v0.4.5
[INFO] [stderr]     Checking itertools v0.9.0
[INFO] [stderr]     Checking directories v2.0.2
[INFO] [stderr]     Checking env_logger v0.7.1
[INFO] [stderr]     Checking quickcheck v0.9.2
[INFO] [stderr]    Compiling euclid_macros v0.1.0
[INFO] [stderr]    Compiling zerocopy-derive v0.1.4
[INFO] [stderr]     Checking resvg v0.8.0
[INFO] [stderr]     Checking euclid v0.19.9
[INFO] [stderr]     Checking zerocopy v0.2.8
[INFO] [stderr]     Checking guillotiere v0.4.4
[INFO] [stderr]    Compiling pin-project-internal v0.4.17
[INFO] [stderr]    Compiling futures-macro v0.3.5
[INFO] [stderr]    Compiling serde_derive v1.0.110
[INFO] [stderr]    Compiling quickcheck_macros v0.9.1
[INFO] [stderr]     Checking gfx-backend-vulkan v0.4.3
[INFO] [stderr]     Checking pin-project v0.4.17
[INFO] [stderr]     Checking futures-util v0.3.5
[INFO] [stderr]     Checking wgpu-native v0.4.3
[INFO] [stderr]     Checking wgpu v0.4.0
[INFO] [stderr]     Checking wgpu_glyph v0.7.0
[INFO] [stderr]     Checking futures-executor v0.3.5
[INFO] [stderr]     Checking futures v0.3.5
[INFO] [stderr]     Checking iced_futures v0.1.2
[INFO] [stderr]     Checking iced_native v0.2.2
[INFO] [stderr]     Checking clipboard_x11 v0.1.0
[INFO] [stderr]     Checking iced_wgpu v0.2.2
[INFO] [stderr]     Checking chrono v0.4.11
[INFO] [stderr]     Checking serde_json v1.0.53
[INFO] [stderr]     Checking smithay-client-toolkit v0.6.6
[INFO] [stderr]     Checking smithay-clipboard v0.3.7
[INFO] [stderr]     Checking winit v0.22.2
[INFO] [stderr]     Checking clipboard_wayland v0.1.0
[INFO] [stderr]     Checking window_clipboard v0.1.1
[INFO] [stderr]     Checking iced_winit v0.1.0
[INFO] [stderr]     Checking iced v0.1.1
[INFO] [stderr]     Checking range_trainer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `self::item::ReviewItem`
[INFO] [stdout]  --> src/review/mod.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub use self::item::ReviewItem;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::display::ReviewDisplay`
[INFO] [stdout]  --> src/review/mod.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub use self::display::ReviewDisplay;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::item::ReviewItem`
[INFO] [stdout]  --> src/review/mod.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub use self::item::ReviewItem;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::display::ReviewDisplay`
[INFO] [stdout]  --> src/review/mod.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub use self::display::ReviewDisplay;
[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]   --> src/hand.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Eq, PartialEq, Hash, Serialize, Deserialize, Clone, Copy, Debug)]
[INFO] [stdout]    |                               ^--------
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               `Serialize` is not local
[INFO] [stdout]    |                               move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Hand`
[INFO] [stdout] 12 | pub struct Hand {
[INFO] [stdout]    |            ---- `Hand` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/hand.rs:11:42
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Eq, PartialEq, Hash, Serialize, Deserialize, Clone, Copy, Debug)]
[INFO] [stdout]    |                                          ^----------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `Deserialize` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Hand`
[INFO] [stdout] 12 | pub struct Hand {
[INFO] [stdout]    |            ---- `Hand` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> src/hand.rs:148:31
[INFO] [stdout]     |
[INFO] [stdout] 148 | #[derive(PartialEq, Eq, Hash, Serialize, Deserialize, Copy, Clone, Debug)]
[INFO] [stdout]     |                               ^--------
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               `Serialize` is not local
[INFO] [stdout]     |                               move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Suit`
[INFO] [stdout] 149 | pub enum Suit {
[INFO] [stdout]     |          ---- `Suit` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> src/hand.rs:148:42
[INFO] [stdout]     |
[INFO] [stdout] 148 | #[derive(PartialEq, Eq, Hash, Serialize, Deserialize, Copy, Clone, Debug)]
[INFO] [stdout]     |                                          ^----------
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          `Deserialize` is not local
[INFO] [stdout]     |                                          move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Suit`
[INFO] [stdout] 149 | pub enum Suit {
[INFO] [stdout]     |          ---- `Suit` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]  --> src/range.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Range`
[INFO] [stdout] 8 | pub struct Range {
[INFO] [stdout]   |            ----- `Range` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]  --> src/range.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Range`
[INFO] [stdout] 8 | pub struct Range {
[INFO] [stdout]   |            ----- `Range` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> src/card.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |     PartialEq, Eq, Hash, Serialize, Deserialize, Ord, 
[INFO] [stdout]    |                          ^--------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Serialize` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Card`
[INFO] [stdout] ...
[INFO] [stdout] 17 | pub enum Card {
[INFO] [stdout]    |          ---- `Card` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/card.rs:13:37
[INFO] [stdout]    |
[INFO] [stdout] 13 |     PartialEq, Eq, Hash, Serialize, Deserialize, Ord, 
[INFO] [stdout]    |                                     ^----------
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     `Deserialize` is not local
[INFO] [stdout]    |                                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Card`
[INFO] [stdout] ...
[INFO] [stdout] 17 | pub enum Card {
[INFO] [stdout]    |          ---- `Card` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/fileio.rs:38:17
[INFO] [stdout]    |
[INFO] [stdout] 38 | ...er(&self) -> std::collections::hash_map::Iter<(review::item::Presentation, review::item::Answer), review::item::ReviewItem> {
[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] 38 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, (review::item::Presentation, review::item::Answer), review::item::ReviewItem> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/range_trainer.rs:419:13
[INFO] [stdout]     |
[INFO] [stdout] 419 |     fn view(&mut self) -> Element<Self::Message> {
[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] 419 |     fn view(&mut self) -> Element<'_, Self::Message> {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/toolbar.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn view(&mut self) -> Container<Message> {
[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] 15 |     pub fn view(&mut self) -> Container<'_, Message> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/ranges_screen.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn view(&mut self) -> Button<Message> {
[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] 35 |     fn view(&mut self) -> Button<'_, Message> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/ranges_screen.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn view(&mut self) -> Row<Message> {
[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] 92 |     pub fn view(&mut self) -> Row<'_, Message> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/study_screen.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn view(&mut self) -> Container<Message> {
[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] 16 |     pub fn view(&mut self) -> Container<'_, Message> {
[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]   --> src/hand.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Eq, PartialEq, Hash, Serialize, Deserialize, Clone, Copy, Debug)]
[INFO] [stdout]    |                               ^--------
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               `Serialize` is not local
[INFO] [stdout]    |                               move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Hand`
[INFO] [stdout] 12 | pub struct Hand {
[INFO] [stdout]    |            ---- `Hand` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/review/item.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ReviewItem`
[INFO] [stdout] 12 | pub struct ReviewItem {
[INFO] [stdout]    |            ---------- `ReviewItem` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/hand.rs:11:42
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Eq, PartialEq, Hash, Serialize, Deserialize, Clone, Copy, Debug)]
[INFO] [stdout]    |                                          ^----------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `Deserialize` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Hand`
[INFO] [stdout] 12 | pub struct Hand {
[INFO] [stdout]    |            ---- `Hand` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> src/review/item.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ReviewItem`
[INFO] [stdout] 12 | pub struct ReviewItem {
[INFO] [stdout]    |            ---------- `ReviewItem` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> src/review/item.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Question`
[INFO] [stdout] 54 | pub struct Question {
[INFO] [stdout]    |            -------- `Question` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/review/item.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Question`
[INFO] [stdout] 54 | pub struct Question {
[INFO] [stdout]    |            -------- `Question` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> src/hand.rs:148:31
[INFO] [stdout]     |
[INFO] [stdout] 148 | #[derive(PartialEq, Eq, Hash, Serialize, Deserialize, Copy, Clone, Debug)]
[INFO] [stdout]     |                               ^--------
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               `Serialize` is not local
[INFO] [stdout]     |                               move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Suit`
[INFO] [stdout] 149 | pub enum Suit {
[INFO] [stdout]     |          ---- `Suit` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/review/item.rs:62:24
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DisplayString`
[INFO] [stdout] 63 | pub struct DisplayString(pub String);
[INFO] [stdout]    |            ------------- `DisplayString` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/review/item.rs:62:35
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DisplayString`
[INFO] [stdout] 63 | pub struct DisplayString(pub String);
[INFO] [stdout]    |            ------------- `DisplayString` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> src/hand.rs:148:42
[INFO] [stdout]     |
[INFO] [stdout] 148 | #[derive(PartialEq, Eq, Hash, Serialize, Deserialize, Copy, Clone, Debug)]
[INFO] [stdout]     |                                          ^----------
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          `Deserialize` is not local
[INFO] [stdout]     |                                          move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Suit`
[INFO] [stdout] 149 | pub enum Suit {
[INFO] [stdout]     |          ---- `Suit` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> src/review/item.rs:92:24
[INFO] [stdout]    |
[INFO] [stdout] 92 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Presentation`
[INFO] [stdout] 93 | pub enum Presentation {
[INFO] [stdout]    |          ------------ `Presentation` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/review/item.rs:92:35
[INFO] [stdout]    |
[INFO] [stdout] 92 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Presentation`
[INFO] [stdout] 93 | pub enum Presentation {
[INFO] [stdout]    |          ------------ `Presentation` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]  --> src/range.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Range`
[INFO] [stdout] 8 | pub struct Range {
[INFO] [stdout]   |            ----- `Range` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> src/review/item.rs:150:30
[INFO] [stdout]     |
[INFO] [stdout] 150 | #[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq)]
[INFO] [stdout]     |                              ^--------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `Serialize` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Options`
[INFO] [stdout] 151 | pub enum Options {
[INFO] [stdout]     |          ------- `Options` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> src/review/item.rs:150:41
[INFO] [stdout]     |
[INFO] [stdout] 150 | #[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq)]
[INFO] [stdout]     |                                         ^----------
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         `Deserialize` is not local
[INFO] [stdout]     |                                         move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Options`
[INFO] [stdout] 151 | pub enum Options {
[INFO] [stdout]     |          ------- `Options` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]  --> src/range.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Range`
[INFO] [stdout] 8 | pub struct Range {
[INFO] [stdout]   |            ----- `Range` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> src/review/item.rs:157:24
[INFO] [stdout]     |
[INFO] [stdout] 157 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]     |                        ^--------
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Serialize` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Answer`
[INFO] [stdout] 158 | pub enum Answer {
[INFO] [stdout]     |          ------ `Answer` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/card.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |     PartialEq, Eq, Hash, Serialize, Deserialize, Ord, 
[INFO] [stdout]    |                          ^--------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Serialize` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Card`
[INFO] [stdout] ...
[INFO] [stdout] 17 | pub enum Card {
[INFO] [stdout]    |          ---- `Card` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/card.rs:13:37
[INFO] [stdout]    |
[INFO] [stdout] 13 |     PartialEq, Eq, Hash, Serialize, Deserialize, Ord, 
[INFO] [stdout]    |                                     ^----------
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     `Deserialize` is not local
[INFO] [stdout]    |                                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Card`
[INFO] [stdout] ...
[INFO] [stdout] 17 | pub enum Card {
[INFO] [stdout]    |          ---- `Card` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> src/review/item.rs:157:35
[INFO] [stdout]     |
[INFO] [stdout] 157 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]     |                                   ^----------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Deserialize` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Answer`
[INFO] [stdout] 158 | pub enum Answer {
[INFO] [stdout]     |          ------ `Answer` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> src/review/item.rs:233:24
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]     |                        ^--------
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Serialize` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PokerAction`
[INFO] [stdout] 234 | pub enum PokerAction {
[INFO] [stdout]     |          ----------- `PokerAction` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> src/review/item.rs:233:35
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]     |                                   ^----------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Deserialize` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PokerAction`
[INFO] [stdout] 234 | pub enum PokerAction {
[INFO] [stdout]     |          ----------- `PokerAction` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/review/display.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn view(&mut self) -> Container<Message> {
[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] 54 |     pub fn view(&mut self) -> Container<'_, Message> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/fileio.rs:38:17
[INFO] [stdout]    |
[INFO] [stdout] 38 | ...er(&self) -> std::collections::hash_map::Iter<(review::item::Presentation, review::item::Answer), review::item::ReviewItem> {
[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] 38 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, (review::item::Presentation, review::item::Answer), review::item::ReviewItem> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/range_trainer.rs:419:13
[INFO] [stdout]     |
[INFO] [stdout] 419 |     fn view(&mut self) -> Element<Self::Message> {
[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] 419 |     fn view(&mut self) -> Element<'_, Self::Message> {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/toolbar.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn view(&mut self) -> Container<Message> {
[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] 15 |     pub fn view(&mut self) -> Container<'_, Message> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/ranges_screen.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn view(&mut self) -> Button<Message> {
[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] 35 |     fn view(&mut self) -> Button<'_, Message> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/ranges_screen.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn view(&mut self) -> Row<Message> {
[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] 92 |     pub fn view(&mut self) -> Row<'_, Message> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/study_screen.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn view(&mut self) -> Container<Message> {
[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] 16 |     pub fn view(&mut self) -> Container<'_, Message> {
[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]   --> src/review/item.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ReviewItem`
[INFO] [stdout] 12 | pub struct ReviewItem {
[INFO] [stdout]    |            ---------- `ReviewItem` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/review/item.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ReviewItem`
[INFO] [stdout] 12 | pub struct ReviewItem {
[INFO] [stdout]    |            ---------- `ReviewItem` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> src/review/item.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Question`
[INFO] [stdout] 54 | pub struct Question {
[INFO] [stdout]    |            -------- `Question` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/review/item.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Question`
[INFO] [stdout] 54 | pub struct Question {
[INFO] [stdout]    |            -------- `Question` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> src/review/item.rs:62:24
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DisplayString`
[INFO] [stdout] 63 | pub struct DisplayString(pub String);
[INFO] [stdout]    |            ------------- `DisplayString` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/review/item.rs:62:35
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DisplayString`
[INFO] [stdout] 63 | pub struct DisplayString(pub String);
[INFO] [stdout]    |            ------------- `DisplayString` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> src/review/item.rs:92:24
[INFO] [stdout]    |
[INFO] [stdout] 92 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Presentation`
[INFO] [stdout] 93 | pub enum Presentation {
[INFO] [stdout]    |          ------------ `Presentation` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> src/review/item.rs:92:35
[INFO] [stdout]    |
[INFO] [stdout] 92 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Presentation`
[INFO] [stdout] 93 | pub enum Presentation {
[INFO] [stdout]    |          ------------ `Presentation` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> src/review/item.rs:150:30
[INFO] [stdout]     |
[INFO] [stdout] 150 | #[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq)]
[INFO] [stdout]     |                              ^--------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `Serialize` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Options`
[INFO] [stdout] 151 | pub enum Options {
[INFO] [stdout]     |          ------- `Options` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> src/review/item.rs:150:41
[INFO] [stdout]     |
[INFO] [stdout] 150 | #[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq)]
[INFO] [stdout]     |                                         ^----------
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         `Deserialize` is not local
[INFO] [stdout]     |                                         move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Options`
[INFO] [stdout] 151 | pub enum Options {
[INFO] [stdout]     |          ------- `Options` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> src/review/item.rs:157:24
[INFO] [stdout]     |
[INFO] [stdout] 157 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]     |                        ^--------
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Serialize` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Answer`
[INFO] [stdout] 158 | pub enum Answer {
[INFO] [stdout]     |          ------ `Answer` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> src/review/item.rs:157:35
[INFO] [stdout]     |
[INFO] [stdout] 157 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]     |                                   ^----------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Deserialize` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Answer`
[INFO] [stdout] 158 | pub enum Answer {
[INFO] [stdout]     |          ------ `Answer` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> src/review/item.rs:233:24
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]     |                        ^--------
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Serialize` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PokerAction`
[INFO] [stdout] 234 | pub enum PokerAction {
[INFO] [stdout]     |          ----------- `PokerAction` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> src/review/item.rs:233:35
[INFO] [stdout]     |
[INFO] [stdout] 233 | #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, Hash)]
[INFO] [stdout]     |                                   ^----------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Deserialize` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PokerAction`
[INFO] [stdout] 234 | pub enum PokerAction {
[INFO] [stdout]     |          ----------- `PokerAction` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/review/display.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn view(&mut self) -> Container<Message> {
[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] 54 |     pub fn view(&mut self) -> Container<'_, Message> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 30.03s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: gfx-backend-vulkan v0.4.3, quickcheck v0.9.2, relevant v0.4.2, rendy-memory v0.5.2, winit v0.22.2, xcb v0.9.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "57085757b64b7cdae8ca450ce10b8840411286618328a04b4a3f588378f58b3e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "57085757b64b7cdae8ca450ce10b8840411286618328a04b4a3f588378f58b3e", kill_on_drop: false }`
[INFO] [stdout] 57085757b64b7cdae8ca450ce10b8840411286618328a04b4a3f588378f58b3e
