[INFO] updating cached repository https://github.com/tskinn/lot [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/big/crater/work/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] [stderr] From https://github.com/tskinn/lot [INFO] [stderr] 0e66ca3..5957436 master -> master [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 59574369c3765d66aee1a6ab81b10b2c7f8f34d9 [INFO] checking tskinn/lot against master#4ff32c07da9d97e6dc315a4a5c9ffbb797cb27bb for pr-64672 [INFO] running `"git" "clone" "work/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftskinn%2Flot" "work/builds/worker-4/source"` [INFO] [stderr] Cloning into 'work/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/tskinn/lot on toolchain 4ff32c07da9d97e6dc315a4a5c9ffbb797cb27bb [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+4ff32c07da9d97e6dc315a4a5c9ffbb797cb27bb" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/tskinn/lot [INFO] finished tweaking git repo https://github.com/tskinn/lot [INFO] tweaked toml for git repo https://github.com/tskinn/lot written to work/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/tskinn/lot already has a lockfile, it will not be regenerated [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+4ff32c07da9d97e6dc315a4a5c9ffbb797cb27bb" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/big/crater/work/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/big/crater/work/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/big/crater/work/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/big/crater/work/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+4ff32c07da9d97e6dc315a4a5c9ffbb797cb27bb" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 4f06f0da5699d6d0e2eefef2fca44b19f8e2a00261fb94439859e68b1c7d9bde [INFO] running `"docker" "start" "-a" "4f06f0da5699d6d0e2eefef2fca44b19f8e2a00261fb94439859e68b1c7d9bde"` [INFO] [stderr] Compiling regex-syntax v0.6.11 [INFO] [stderr] Checking arc-swap v0.4.2 [INFO] [stderr] Checking fallible-iterator v0.2.0 [INFO] [stderr] Checking spin v0.5.2 [INFO] [stderr] Checking fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling miniz-sys v0.1.12 [INFO] [stderr] Compiling brotli-sys v0.3.2 [INFO] [stderr] Compiling ring v0.14.6 [INFO] [stderr] Compiling openssl-sys v0.9.49 [INFO] [stderr] Checking actix-service v0.4.2 [INFO] [stderr] Compiling libsqlite3-sys v0.16.0 [INFO] [stderr] Checking miniz_oxide v0.3.2 [INFO] [stderr] Compiling hyper v0.12.34 [INFO] [stderr] Checking socket2 v0.3.11 [INFO] [stderr] Checking bytes v0.4.12 [INFO] [stderr] Checking futures-cpupool v0.1.8 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Checking cookie v0.12.0 [INFO] [stderr] Checking uuid v0.7.4 [INFO] [stderr] Checking error-chain v0.12.1 [INFO] [stderr] Checking chrono v0.4.7 [INFO] [stderr] Checking env_logger v0.6.2 [INFO] [stderr] Checking signal-hook-registry v1.1.1 [INFO] [stderr] Checking tokio-io v0.1.12 [INFO] [stderr] Checking string v0.2.1 [INFO] [stderr] Checking http v0.1.18 [INFO] [stderr] Checking tokio-buf v0.1.1 [INFO] [stderr] Checking publicsuffix v1.5.3 [INFO] [stderr] Checking tokio-threadpool v0.1.15 [INFO] [stderr] Checking signal-hook v0.1.10 [INFO] [stderr] Checking tokio-reactor v0.1.9 [INFO] [stderr] Checking tokio-codec v0.1.1 [INFO] [stderr] Checking flate2 v1.0.11 [INFO] [stderr] Checking rusqlite v0.20.0 [INFO] [stderr] Compiling openssl v0.10.24 [INFO] [stderr] Compiling native-tls v0.2.3 [INFO] [stderr] Checking actix-codec v0.1.2 [INFO] [stderr] Checking tokio-tcp v0.1.3 [INFO] [stderr] Checking tokio-udp v0.1.3 [INFO] [stderr] Checking tokio-uds v0.2.5 [INFO] [stderr] Checking tokio-signal v0.2.7 [INFO] [stderr] Checking r2d2_sqlite v0.12.0 [INFO] [stderr] Checking actix-utils v0.4.5 [INFO] [stderr] Checking tokio v0.1.22 [INFO] [stderr] Compiling regex v1.2.1 [INFO] [stderr] Checking h2 v0.1.26 [INFO] [stderr] Checking http-body v0.1.0 [INFO] [stderr] Checking tokio-openssl v0.3.0 [INFO] [stderr] Checking brotli2 v0.3.2 [INFO] [stderr] Checking actix-server-config v0.1.2 [INFO] [stderr] Compiling synstructure v0.10.2 [INFO] [stderr] Compiling failure_derive v0.1.5 [INFO] [stderr] Compiling enum-as-inner v0.2.1 [INFO] [stderr] Compiling derive_more v0.15.0 [INFO] [stderr] Compiling serde_derive v1.0.98 [INFO] [stderr] Compiling v_escape_derive v0.5.5 [INFO] [stderr] Compiling actix-web-codegen v0.1.2 [INFO] [stderr] Compiling structopt-derive v0.2.18 [INFO] [stderr] Compiling derive_more v0.14.1 [INFO] [stderr] Checking hyper-tls v0.3.2 [INFO] [stderr] Checking failure v0.1.5 [INFO] [stderr] Checking v_escape v0.7.4 [INFO] [stderr] Checking trust-dns-proto v0.7.4 [INFO] [stderr] Checking v_htmlescape v0.4.5 [INFO] [stderr] Checking structopt v0.2.18 [INFO] [stderr] Checking trust-dns-resolver v0.11.1 [INFO] [stderr] Checking actix-threadpool v0.1.2 [INFO] [stderr] Checking actix-rt v0.2.5 [INFO] [stderr] Checking actix-connect v0.2.5 [INFO] [stderr] Checking actix-server v0.6.1 [INFO] [stderr] Checking serde v1.0.98 [INFO] [stderr] Checking actix-testing v0.1.0 [INFO] [stderr] Checking serde_urlencoded v0.6.1 [INFO] [stderr] Checking serde_json v1.0.40 [INFO] [stderr] Checking actix-router v0.1.5 [INFO] [stderr] Checking serde_urlencoded v0.5.5 [INFO] [stderr] Checking toml v0.5.3 [INFO] [stderr] Checking actix-http v0.2.10 [INFO] [stderr] Checking cookie_store v0.7.0 [INFO] [stderr] Checking jsonwebtoken v6.0.1 [INFO] [stderr] Checking reqwest v0.9.20 [INFO] [stderr] Checking awc v0.2.7 [INFO] [stderr] Checking actix-web v1.0.8 [INFO] [stderr] Checking actix-cors v0.1.0 [INFO] [stderr] Checking actix-files v0.1.5 [INFO] [stderr] Checking mylot v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `rusqlite::types::ToSql` [INFO] [stderr] --> src/env_setup.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use rusqlite::types::ToSql; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/env_setup.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[macro_use] extern crate failure_derive; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Future`, `err`, `join_all`, `ok` [INFO] [stderr] --> src/movies.rs:2:23 [INFO] [stderr] | [INFO] [stderr] 2 | use futures::future::{join_all, ok, err, Future}; [INFO] [stderr] | ^^^^^^^^ ^^ ^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::client` [INFO] [stderr] --> src/movies.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use actix_web::client; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `IntoFuture` [INFO] [stderr] --> src/users.rs:5:23 [INFO] [stderr] | [INFO] [stderr] 5 | use futures::future::{IntoFuture, Either}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Algorithm` [INFO] [stderr] --> src/users.rs:6:44 [INFO] [stderr] | [INFO] [stderr] 6 | use jsonwebtoken::{encode, decode, Header, Algorithm, Validation}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Instant` [INFO] [stderr] --> src/users.rs:7:51 [INFO] [stderr] | [INFO] [stderr] 7 | use std::time::{SystemTime, UNIX_EPOCH, Duration, Instant}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `Mutex`, `RwLock` [INFO] [stderr] --> src/users.rs:18:17 [INFO] [stderr] | [INFO] [stderr] 18 | use std::sync::{Mutex,RwLock,Arc}; [INFO] [stderr] | ^^^^^ ^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::movies` [INFO] [stderr] --> src/users.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use super::movies; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rusqlite::types::ToSql` [INFO] [stderr] --> src/env_setup.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use rusqlite::types::ToSql; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/env_setup.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[macro_use] extern crate failure_derive; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Future`, `err`, `join_all`, `ok` [INFO] [stderr] --> src/movies.rs:2:23 [INFO] [stderr] | [INFO] [stderr] 2 | use futures::future::{join_all, ok, err, Future}; [INFO] [stderr] | ^^^^^^^^ ^^ ^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashSet` [INFO] [stderr] --> src/movies.rs:3:33 [INFO] [stderr] | [INFO] [stderr] 3 | use std::collections::{HashMap, HashSet}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::client` [INFO] [stderr] --> src/movies.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use actix_web::client; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `IntoFuture` [INFO] [stderr] --> src/users.rs:5:23 [INFO] [stderr] | [INFO] [stderr] 5 | use futures::future::{IntoFuture, Either}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Algorithm` [INFO] [stderr] --> src/users.rs:6:44 [INFO] [stderr] | [INFO] [stderr] 6 | use jsonwebtoken::{encode, decode, Header, Algorithm, Validation}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Instant` [INFO] [stderr] --> src/users.rs:7:51 [INFO] [stderr] | [INFO] [stderr] 7 | use std::time::{SystemTime, UNIX_EPOCH, Duration, Instant}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `Mutex`, `RwLock` [INFO] [stderr] --> src/users.rs:18:17 [INFO] [stderr] | [INFO] [stderr] 18 | use std::sync::{Mutex,RwLock,Arc}; [INFO] [stderr] | ^^^^^ ^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::movies` [INFO] [stderr] --> src/users.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use super::movies; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `get` [INFO] [stderr] --> src/server.rs:4:31 [INFO] [stderr] | [INFO] [stderr] 4 | client, dev::RequestHead, get, guard::Guard, middleware, web, App, Error, HttpRequest, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/server.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | #[macro_use] extern crate failure_derive; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `r2d2::Pool` [INFO] [stderr] --> src/server.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use r2d2::Pool; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `Mutex`, `RwLock` [INFO] [stderr] --> src/server.rs:16:17 [INFO] [stderr] | [INFO] [stderr] 16 | use std::sync::{Mutex,RwLock,Arc}; [INFO] [stderr] | ^^^^^ ^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `PathBuf` [INFO] [stderr] --> src/server.rs:17:17 [INFO] [stderr] | [INFO] [stderr] 17 | use std::path::{PathBuf, Path}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `lazy`, `ok` [INFO] [stderr] --> src/server.rs:21:23 [INFO] [stderr] | [INFO] [stderr] 21 | use futures::future::{lazy, ok, Future}; [INFO] [stderr] | ^^^^ ^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashMap` [INFO] [stderr] --> src/server.rs:25:24 [INFO] [stderr] | [INFO] [stderr] 25 | use std::collections::{HashMap}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `IntoFuture` [INFO] [stderr] --> src/users.rs:5:23 [INFO] [stderr] | [INFO] [stderr] 5 | use futures::future::{IntoFuture, Either}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Algorithm` [INFO] [stderr] --> src/users.rs:6:44 [INFO] [stderr] | [INFO] [stderr] 6 | use jsonwebtoken::{encode, decode, Header, Algorithm, Validation}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Instant` [INFO] [stderr] --> src/users.rs:7:51 [INFO] [stderr] | [INFO] [stderr] 7 | use std::time::{SystemTime, UNIX_EPOCH, Duration, Instant}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `Mutex`, `RwLock` [INFO] [stderr] --> src/users.rs:18:17 [INFO] [stderr] | [INFO] [stderr] 18 | use std::sync::{Mutex,RwLock,Arc}; [INFO] [stderr] | ^^^^^ ^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::movies` [INFO] [stderr] --> src/users.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use super::movies; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Future`, `err`, `join_all`, `ok` [INFO] [stderr] --> src/movies.rs:2:23 [INFO] [stderr] | [INFO] [stderr] 2 | use futures::future::{join_all, ok, err, Future}; [INFO] [stderr] | ^^^^^^^^ ^^ ^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::client` [INFO] [stderr] --> src/movies.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use actix_web::client; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Claims`, `UserState` [INFO] [stderr] --> src/server.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | use users::{Claims, UserState}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MovieStore` [INFO] [stderr] --> src/server.rs:33:14 [INFO] [stderr] | [INFO] [stderr] 33 | use movies::{MovieStore, OMDBMovie}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Connection` [INFO] [stderr] --> src/server.rs:35:16 [INFO] [stderr] | [INFO] [stderr] 35 | use rusqlite::{Connection, Result, NO_PARAMS}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `get` [INFO] [stderr] --> src/server.rs:4:31 [INFO] [stderr] | [INFO] [stderr] 4 | client, dev::RequestHead, get, guard::Guard, middleware, web, App, Error, HttpRequest, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/server.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | #[macro_use] extern crate failure_derive; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `r2d2::Pool` [INFO] [stderr] --> src/server.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use r2d2::Pool; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `Mutex`, `RwLock` [INFO] [stderr] --> src/server.rs:16:17 [INFO] [stderr] | [INFO] [stderr] 16 | use std::sync::{Mutex,RwLock,Arc}; [INFO] [stderr] | ^^^^^ ^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `PathBuf` [INFO] [stderr] --> src/server.rs:17:17 [INFO] [stderr] | [INFO] [stderr] 17 | use std::path::{PathBuf, Path}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `lazy`, `ok` [INFO] [stderr] --> src/server.rs:21:23 [INFO] [stderr] | [INFO] [stderr] 21 | use futures::future::{lazy, ok, Future}; [INFO] [stderr] | ^^^^ ^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashMap` [INFO] [stderr] --> src/server.rs:25:24 [INFO] [stderr] | [INFO] [stderr] 25 | use std::collections::{HashMap}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `IntoFuture` [INFO] [stderr] --> src/users.rs:5:23 [INFO] [stderr] | [INFO] [stderr] 5 | use futures::future::{IntoFuture, Either}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Algorithm` [INFO] [stderr] --> src/users.rs:6:44 [INFO] [stderr] | [INFO] [stderr] 6 | use jsonwebtoken::{encode, decode, Header, Algorithm, Validation}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Instant` [INFO] [stderr] --> src/users.rs:7:51 [INFO] [stderr] | [INFO] [stderr] 7 | use std::time::{SystemTime, UNIX_EPOCH, Duration, Instant}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `Mutex`, `RwLock` [INFO] [stderr] --> src/users.rs:18:17 [INFO] [stderr] | [INFO] [stderr] 18 | use std::sync::{Mutex,RwLock,Arc}; [INFO] [stderr] | ^^^^^ ^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::movies` [INFO] [stderr] --> src/users.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use super::movies; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Future`, `err`, `join_all`, `ok` [INFO] [stderr] --> src/movies.rs:2:23 [INFO] [stderr] | [INFO] [stderr] 2 | use futures::future::{join_all, ok, err, Future}; [INFO] [stderr] | ^^^^^^^^ ^^ ^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashSet` [INFO] [stderr] --> src/movies.rs:3:33 [INFO] [stderr] | [INFO] [stderr] 3 | use std::collections::{HashMap, HashSet}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `actix_web::client` [INFO] [stderr] --> src/movies.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use actix_web::client; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Claims`, `UserState` [INFO] [stderr] --> src/server.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | use users::{Claims, UserState}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MovieStore` [INFO] [stderr] --> src/server.rs:33:14 [INFO] [stderr] | [INFO] [stderr] 33 | use movies::{MovieStore, OMDBMovie}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Connection` [INFO] [stderr] --> src/server.rs:35:16 [INFO] [stderr] | [INFO] [stderr] 35 | use rusqlite::{Connection, Result, NO_PARAMS}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Future` [INFO] [stderr] --> src/users.rs:11:15 [INFO] [stderr] | [INFO] [stderr] 11 | use futures::{Future, Poll}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_movies` [INFO] [stderr] --> src/movies.rs:160:17 [INFO] [stderr] | [INFO] [stderr] 160 | let mut new_movies: Vec = vec![]; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_new_movies` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Future` [INFO] [stderr] --> src/users.rs:11:15 [INFO] [stderr] | [INFO] [stderr] 11 | use futures::{Future, Poll}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_movies` [INFO] [stderr] --> src/movies.rs:160:17 [INFO] [stderr] | [INFO] [stderr] 160 | let mut new_movies: Vec = vec![]; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_new_movies` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/movies.rs:160:13 [INFO] [stderr] | [INFO] [stderr] 160 | let mut new_movies: Vec = vec![]; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/movies.rs:160:13 [INFO] [stderr] | [INFO] [stderr] 160 | let mut new_movies: Vec = vec![]; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_config` [INFO] [stderr] --> src/config.rs:22:1 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn get_config(path: &Path) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `toMovie` [INFO] [stderr] --> src/movies.rs:84:1 [INFO] [stderr] | [INFO] [stderr] 84 | fn toMovie(omdb: OMDBMovie, file_path: String) -> Movie { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `MovieStore` [INFO] [stderr] --> src/movies.rs:106:1 [INFO] [stderr] | [INFO] [stderr] 106 | pub struct MovieStore { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/movies.rs:121:5 [INFO] [stderr] | [INFO] [stderr] 121 | fn new(movies: Vec) -> MovieStore { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `insert` [INFO] [stderr] --> src/movies.rs:138:5 [INFO] [stderr] | [INFO] [stderr] 138 | fn insert(&mut self, movie: Movie) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `refresh_movies_index` [INFO] [stderr] --> src/movies.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | pub fn refresh_movies_index(&mut self, config: &Config) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `AppState` [INFO] [stderr] --> src/users.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | pub struct AppState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `decode` [INFO] [stderr] --> src/users.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | pub fn decode(token: String) -> jsonwebtoken::errors::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_refresh_token` [INFO] [stderr] --> src/users.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | pub fn get_refresh_token(&self, ttl: u64) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `UserState` [INFO] [stderr] --> src/users.rs:215:1 [INFO] [stderr] | [INFO] [stderr] 215 | pub struct UserState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/users.rs:220:5 [INFO] [stderr] | [INFO] [stderr] 220 | pub fn new(users: Vec) -> UserState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `toMovie` should have a snake case name [INFO] [stderr] --> src/movies.rs:84:4 [INFO] [stderr] | [INFO] [stderr] 84 | fn toMovie(omdb: OMDBMovie, file_path: String) -> Movie { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `to_movie` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_config` [INFO] [stderr] --> src/config.rs:22:1 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn get_config(path: &Path) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `toMovie` [INFO] [stderr] --> src/movies.rs:84:1 [INFO] [stderr] | [INFO] [stderr] 84 | fn toMovie(omdb: OMDBMovie, file_path: String) -> Movie { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `load_movies_from_file` [INFO] [stderr] --> src/movies.rs:96:1 [INFO] [stderr] | [INFO] [stderr] 96 | pub fn load_movies_from_file(path: PathBuf) -> serde_json::Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `save_movies_to_file` [INFO] [stderr] --> src/movies.rs:101:1 [INFO] [stderr] | [INFO] [stderr] 101 | pub fn save_movies_to_file(path: PathBuf, movies: Vec) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `MovieStore` [INFO] [stderr] --> src/movies.rs:106:1 [INFO] [stderr] | [INFO] [stderr] 106 | pub struct MovieStore { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/movies.rs:121:5 [INFO] [stderr] | [INFO] [stderr] 121 | fn new(movies: Vec) -> MovieStore { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `insert` [INFO] [stderr] --> src/movies.rs:138:5 [INFO] [stderr] | [INFO] [stderr] 138 | fn insert(&mut self, movie: Movie) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `refresh_movies_index` [INFO] [stderr] --> src/movies.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | pub fn refresh_movies_index(&mut self, config: &Config) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `scan_dir` [INFO] [stderr] --> src/movies.rs:186:1 [INFO] [stderr] | [INFO] [stderr] 186 | pub fn scan_dir(dir: &Path) -> io::Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `AppState` [INFO] [stderr] --> src/users.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | pub struct AppState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `decode` [INFO] [stderr] --> src/users.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | pub fn decode(token: String) -> jsonwebtoken::errors::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_claims_token` [INFO] [stderr] --> src/users.rs:175:5 [INFO] [stderr] | [INFO] [stderr] 175 | pub fn get_claims_token(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_refresh_token` [INFO] [stderr] --> src/users.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | pub fn get_refresh_token(&self, ttl: u64) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `UserState` [INFO] [stderr] --> src/users.rs:215:1 [INFO] [stderr] | [INFO] [stderr] 215 | pub struct UserState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/users.rs:220:5 [INFO] [stderr] | [INFO] [stderr] 220 | pub fn new(users: Vec) -> UserState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `load_users_from_file` [INFO] [stderr] --> src/users.rs:233:1 [INFO] [stderr] | [INFO] [stderr] 233 | pub fn load_users_from_file(path: PathBuf) -> serde_json::Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `save_user_to_file` [INFO] [stderr] --> src/users.rs:239:1 [INFO] [stderr] | [INFO] [stderr] 239 | pub fn save_user_to_file(path: PathBuf, users: &Vec) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `toMovie` should have a snake case name [INFO] [stderr] --> src/movies.rs:84:4 [INFO] [stderr] | [INFO] [stderr] 84 | fn toMovie(omdb: OMDBMovie, file_path: String) -> Movie { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `to_movie` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Future` [INFO] [stderr] --> src/users.rs:11:15 [INFO] [stderr] | [INFO] [stderr] 11 | use futures::{Future, Poll}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Future` [INFO] [stderr] --> src/users.rs:11:15 [INFO] [stderr] | [INFO] [stderr] 11 | use futures::{Future, Poll}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `req` [INFO] [stderr] --> src/server.rs:126:15 [INFO] [stderr] | [INFO] [stderr] 126 | fn get_movies(req: HttpRequest, db: web::Data>) -> HttpResponse { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_req` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `db_path` [INFO] [stderr] --> src/server.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | let db_path = conf.data_base.unwrap_or("/home/tskinn/.lot.d/lot.db".to_string()); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_db_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `req` [INFO] [stderr] --> src/server.rs:126:15 [INFO] [stderr] | [INFO] [stderr] 126 | fn get_movies(req: HttpRequest, db: web::Data>) -> HttpResponse { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_req` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_movies` [INFO] [stderr] --> src/movies.rs:160:17 [INFO] [stderr] | [INFO] [stderr] 160 | let mut new_movies: Vec = vec![]; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_new_movies` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `db_path` [INFO] [stderr] --> src/server.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | let db_path = conf.data_base.unwrap_or("/home/tskinn/.lot.d/lot.db".to_string()); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_db_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_movies` [INFO] [stderr] --> src/movies.rs:160:17 [INFO] [stderr] | [INFO] [stderr] 160 | let mut new_movies: Vec = vec![]; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_new_movies` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/movies.rs:160:13 [INFO] [stderr] | [INFO] [stderr] 160 | let mut new_movies: Vec = vec![]; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/movies.rs:160:13 [INFO] [stderr] | [INFO] [stderr] 160 | let mut new_movies: Vec = vec![]; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `AppState` [INFO] [stderr] --> src/users.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | pub struct AppState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `UserState` [INFO] [stderr] --> src/users.rs:215:1 [INFO] [stderr] | [INFO] [stderr] 215 | pub struct UserState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/users.rs:220:5 [INFO] [stderr] | [INFO] [stderr] 220 | pub fn new(users: Vec) -> UserState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `load_users_from_file` [INFO] [stderr] --> src/users.rs:233:1 [INFO] [stderr] | [INFO] [stderr] 233 | pub fn load_users_from_file(path: PathBuf) -> serde_json::Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `save_user_to_file` [INFO] [stderr] --> src/users.rs:239:1 [INFO] [stderr] | [INFO] [stderr] 239 | pub fn save_user_to_file(path: PathBuf, users: &Vec) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `toMovie` [INFO] [stderr] --> src/movies.rs:84:1 [INFO] [stderr] | [INFO] [stderr] 84 | fn toMovie(omdb: OMDBMovie, file_path: String) -> Movie { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `load_movies_from_file` [INFO] [stderr] --> src/movies.rs:96:1 [INFO] [stderr] | [INFO] [stderr] 96 | pub fn load_movies_from_file(path: PathBuf) -> serde_json::Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `save_movies_to_file` [INFO] [stderr] --> src/movies.rs:101:1 [INFO] [stderr] | [INFO] [stderr] 101 | pub fn save_movies_to_file(path: PathBuf, movies: Vec) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `MovieStore` [INFO] [stderr] --> src/movies.rs:106:1 [INFO] [stderr] | [INFO] [stderr] 106 | pub struct MovieStore { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/movies.rs:121:5 [INFO] [stderr] | [INFO] [stderr] 121 | fn new(movies: Vec) -> MovieStore { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `insert` [INFO] [stderr] --> src/movies.rs:138:5 [INFO] [stderr] | [INFO] [stderr] 138 | fn insert(&mut self, movie: Movie) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `refresh_movies_index` [INFO] [stderr] --> src/movies.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | pub fn refresh_movies_index(&mut self, config: &Config) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `scan_dir` [INFO] [stderr] --> src/movies.rs:186:1 [INFO] [stderr] | [INFO] [stderr] 186 | pub fn scan_dir(dir: &Path) -> io::Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `AppState` [INFO] [stderr] --> src/users.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | pub struct AppState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `UserState` [INFO] [stderr] --> src/users.rs:215:1 [INFO] [stderr] | [INFO] [stderr] 215 | pub struct UserState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/users.rs:220:5 [INFO] [stderr] | [INFO] [stderr] 220 | pub fn new(users: Vec) -> UserState { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `toMovie` [INFO] [stderr] --> src/movies.rs:84:1 [INFO] [stderr] | [INFO] [stderr] 84 | fn toMovie(omdb: OMDBMovie, file_path: String) -> Movie { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `MovieStore` [INFO] [stderr] --> src/movies.rs:106:1 [INFO] [stderr] | [INFO] [stderr] 106 | pub struct MovieStore { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/movies.rs:121:5 [INFO] [stderr] | [INFO] [stderr] 121 | fn new(movies: Vec) -> MovieStore { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `insert` [INFO] [stderr] --> src/movies.rs:138:5 [INFO] [stderr] | [INFO] [stderr] 138 | fn insert(&mut self, movie: Movie) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `refresh_movies_index` [INFO] [stderr] --> src/movies.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | pub fn refresh_movies_index(&mut self, config: &Config) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `toMovie` should have a snake case name [INFO] [stderr] --> src/movies.rs:84:4 [INFO] [stderr] | [INFO] [stderr] 84 | fn toMovie(omdb: OMDBMovie, file_path: String) -> Movie { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `to_movie` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `toMovie` should have a snake case name [INFO] [stderr] --> src/movies.rs:84:4 [INFO] [stderr] | [INFO] [stderr] 84 | fn toMovie(omdb: OMDBMovie, file_path: String) -> Movie { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `to_movie` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 49.47s [INFO] running `"docker" "inspect" "4f06f0da5699d6d0e2eefef2fca44b19f8e2a00261fb94439859e68b1c7d9bde"` [INFO] running `"docker" "rm" "-f" "4f06f0da5699d6d0e2eefef2fca44b19f8e2a00261fb94439859e68b1c7d9bde"` [INFO] [stdout] 4f06f0da5699d6d0e2eefef2fca44b19f8e2a00261fb94439859e68b1c7d9bde