[INFO] cloning repository https://github.com/mklf/word2vec-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mklf/word2vec-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmklf%2Fword2vec-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmklf%2Fword2vec-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 401ec7552509aa4214e409c1549028958575d6f8 [INFO] testing mklf/word2vec-rs against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmklf%2Fword2vec-rs" "/workspace/builds/worker-4/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/mklf/word2vec-rs on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/mklf/word2vec-rs [INFO] finished tweaking git repo https://github.com/mklf/word2vec-rs [INFO] tweaked toml for git repo https://github.com/mklf/word2vec-rs written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/mklf/word2vec-rs already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] bfc44da98581925c84417aed5077f79070f8448e240dbd5f2884c6bfbce9ad9c [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "bfc44da98581925c84417aed5077f79070f8448e240dbd5f2884c6bfbce9ad9c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "bfc44da98581925c84417aed5077f79070f8448e240dbd5f2884c6bfbce9ad9c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bfc44da98581925c84417aed5077f79070f8448e240dbd5f2884c6bfbce9ad9c", kill_on_drop: false }` [INFO] [stdout] bfc44da98581925c84417aed5077f79070f8448e240dbd5f2884c6bfbce9ad9c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] bd09d1b41b3bc5404df6941b99b07578c00e67c0918910ce6975c54b7e062161 [INFO] running `Command { std: "docker" "start" "-a" "bd09d1b41b3bc5404df6941b99b07578c00e67c0918910ce6975c54b7e062161", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.21 [INFO] [stderr] Compiling syn v1.0.40 [INFO] [stderr] Compiling const_fn v0.4.2 [INFO] [stderr] Compiling gcc v0.3.45 [INFO] [stderr] Compiling standback v0.2.17 [INFO] [stderr] Compiling time v0.2.27 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling clap v2.33.3 [INFO] [stderr] Compiling word2vec v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling time-macros-impl v0.1.1 [INFO] [stderr] Compiling time-macros v0.1.1 [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/dictionary.rs:115:26 [INFO] [stdout] | [INFO] [stdout] 115 | let input_file = try!(File::open(filename)); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:256:21 [INFO] [stdout] | [INFO] [stdout] 256 | let input = try!(train_info.value_of("input") [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:258:22 [INFO] [stdout] | [INFO] [stdout] 258 | let output = try!(train_info.value_of("output") [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:260:19 [INFO] [stdout] | [INFO] [stdout] 260 | let win = try!(train_info.value_of("win").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:261:19 [INFO] [stdout] | [INFO] [stdout] 261 | let neg = try!(train_info.value_of("neg").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:262:18 [INFO] [stdout] | [INFO] [stdout] 262 | let lr = try!(train_info.value_of("lr").unwrap_or("0.05").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:263:25 [INFO] [stdout] | [INFO] [stdout] 263 | let lr_update = try!(train_info.value_of("lr_update").unwrap_or("5000").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:264:27 [INFO] [stdout] | [INFO] [stdout] 264 | let vector_size = try!(train_info.value_of("dim").unwrap_or("100").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:265:21 [INFO] [stdout] | [INFO] [stdout] 265 | let epoch = try!(train_info.value_of("epoch").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:266:25 [INFO] [stdout] | [INFO] [stdout] 266 | let min_count = try!(train_info.value_of("min_count").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:267:24 [INFO] [stdout] | [INFO] [stdout] 267 | let nthreads = try!(train_info.value_of("nthreads").unwrap_or("12").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:268:25 [INFO] [stdout] | [INFO] [stdout] 268 | let threshold = try!(train_info.value_of("threshold").unwrap_or("1e-4").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:285:21 [INFO] [stdout] | [INFO] [stdout] 285 | let input = try!(test_info.value_of("input") [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:55:26 [INFO] [stdout] | [INFO] [stdout] 55 | let input_file = try!(File::open(arg.input.clone())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | let input_file = try!(File::open(filename)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:116:16 [INFO] [stdout] | [INFO] [stdout] 116 | let dict = try!(Dict::new_from_file(&args.input, args.min_count, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | try!(h.join().unwrap()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | try!(write!(&mut meta, "{} {}\n", size, self.dim)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | try!(file.write_all(&meta)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:42:24 [INFO] [stdout] | [INFO] [stdout] 42 | let mut file = try!(File::create(filename)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | try!(file.write(&word.into_bytes()[..])); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | try!(file.write(&s.into_bytes()[..])); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | try!(file.write(u8data)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:57:28 [INFO] [stdout] | [INFO] [stdout] 57 | let mut file = try!(File::create(filename.to_owned()+".vec")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/train.rs:6:38 [INFO] [stdout] | [INFO] [stdout] 6 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | use time::PreciseTime; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/train.rs:12:33 [INFO] [stdout] | [INFO] [stdout] 12 | static ALL_WORDS: AtomicUsize = ATOMIC_USIZE_INIT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicUsize::new(0)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:26:74 [INFO] [stdout] | [INFO] [stdout] 26 | fn print_progress(model: &Model, progress: f32, words: f32, start_time: &PreciseTime) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:30:28 [INFO] [stdout] | [INFO] [stdout] 30 | (start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:49:22 [INFO] [stdout] | [INFO] [stdout] 49 | let start_time = PreciseTime::now(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:90:66 [INFO] [stdout] | [INFO] [stdout] 90 | println!("\ntotal train time:{} s",start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/utils.rs:83:32 [INFO] [stdout] | [INFO] [stdout] 83 | fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 83 - fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] 83 + fn cause(&self) -> Option<&dyn error::Error> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:30:44 [INFO] [stdout] | [INFO] [stdout] 30 | W2vError::File(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:78:53 [INFO] [stdout] | [INFO] [stdout] 78 | ArgumentError::ParseArg(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:79:55 [INFO] [stdout] | [INFO] [stdout] 79 | ArgumentError::ParseFloat(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:80:53 [INFO] [stdout] | [INFO] [stdout] 80 | ArgumentError::ParseInt(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Instant::to`: Use `rhs - lhs` [INFO] [stdout] --> src/train.rs:30:25 [INFO] [stdout] | [INFO] [stdout] 30 | (start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Duration::num_milliseconds`: Use the `whole_milliseconds` function. The value is clamped between `i64::min_value()` and `i64::max_value()`. [INFO] [stdout] --> src/train.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | .num_milliseconds() as f32)) as u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Instant::to`: Use `rhs - lhs` [INFO] [stdout] --> src/train.rs:90:63 [INFO] [stdout] | [INFO] [stdout] 90 | println!("\ntotal train time:{} s",start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Duration::num_seconds`: Use the `whole_seconds` function [INFO] [stdout] --> src/train.rs:91:26 [INFO] [stdout] | [INFO] [stdout] 91 | .num_seconds()); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/ffi.rs:23:27 [INFO] [stdout] | [INFO] [stdout] 23 | e.description().as_bytes().to_vec() [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/ffi.rs:41:31 [INFO] [stdout] | [INFO] [stdout] 41 | ... e.description().as_bytes().to_vec() [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/train.rs:155:29 [INFO] [stdout] | [INFO] [stdout] 155 | let w2v = Word2vec::new(unsafe { input.inner.into_inner() }, [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/train.rs:156:29 [INFO] [stdout] | [INFO] [stdout] 156 | ... unsafe { output.inner.into_inner() }, [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `syn1neg` [INFO] [stdout] --> src/w2v.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | syn1neg: Matrix, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 45 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 40.84s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: time-macros-impl v0.1.1 [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 16` [INFO] running `Command { std: "docker" "inspect" "bd09d1b41b3bc5404df6941b99b07578c00e67c0918910ce6975c54b7e062161", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bd09d1b41b3bc5404df6941b99b07578c00e67c0918910ce6975c54b7e062161", kill_on_drop: false }` [INFO] [stdout] bd09d1b41b3bc5404df6941b99b07578c00e67c0918910ce6975c54b7e062161 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] d31d8c7b72ab2f97314dbba0760271670c8a9688a55d526de80714eb1fad475b [INFO] running `Command { std: "docker" "start" "-a" "d31d8c7b72ab2f97314dbba0760271670c8a9688a55d526de80714eb1fad475b", kill_on_drop: false }` [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/dictionary.rs:115:26 [INFO] [stdout] | [INFO] [stdout] 115 | let input_file = try!(File::open(filename)); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:256:21 [INFO] [stdout] | [INFO] [stdout] 256 | let input = try!(train_info.value_of("input") [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:258:22 [INFO] [stdout] | [INFO] [stdout] 258 | let output = try!(train_info.value_of("output") [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:260:19 [INFO] [stdout] | [INFO] [stdout] 260 | let win = try!(train_info.value_of("win").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:261:19 [INFO] [stdout] | [INFO] [stdout] 261 | let neg = try!(train_info.value_of("neg").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:262:18 [INFO] [stdout] | [INFO] [stdout] 262 | let lr = try!(train_info.value_of("lr").unwrap_or("0.05").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:263:25 [INFO] [stdout] | [INFO] [stdout] 263 | let lr_update = try!(train_info.value_of("lr_update").unwrap_or("5000").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:264:27 [INFO] [stdout] | [INFO] [stdout] 264 | let vector_size = try!(train_info.value_of("dim").unwrap_or("100").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:265:21 [INFO] [stdout] | [INFO] [stdout] 265 | let epoch = try!(train_info.value_of("epoch").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:266:25 [INFO] [stdout] | [INFO] [stdout] 266 | let min_count = try!(train_info.value_of("min_count").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:267:24 [INFO] [stdout] | [INFO] [stdout] 267 | let nthreads = try!(train_info.value_of("nthreads").unwrap_or("12").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:268:25 [INFO] [stdout] | [INFO] [stdout] 268 | let threshold = try!(train_info.value_of("threshold").unwrap_or("1e-4").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:285:21 [INFO] [stdout] | [INFO] [stdout] 285 | let input = try!(test_info.value_of("input") [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:55:26 [INFO] [stdout] | [INFO] [stdout] 55 | let input_file = try!(File::open(arg.input.clone())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | let input_file = try!(File::open(filename)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:116:16 [INFO] [stdout] | [INFO] [stdout] 116 | let dict = try!(Dict::new_from_file(&args.input, args.min_count, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | try!(h.join().unwrap()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | try!(write!(&mut meta, "{} {}\n", size, self.dim)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | try!(file.write_all(&meta)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:42:24 [INFO] [stdout] | [INFO] [stdout] 42 | let mut file = try!(File::create(filename)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | try!(file.write(&word.into_bytes()[..])); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | try!(file.write(&s.into_bytes()[..])); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | try!(file.write(u8data)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:57:28 [INFO] [stdout] | [INFO] [stdout] 57 | let mut file = try!(File::create(filename.to_owned()+".vec")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/train.rs:6:38 [INFO] [stdout] | [INFO] [stdout] 6 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | use time::PreciseTime; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/train.rs:12:33 [INFO] [stdout] | [INFO] [stdout] 12 | static ALL_WORDS: AtomicUsize = ATOMIC_USIZE_INIT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicUsize::new(0)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:26:74 [INFO] [stdout] | [INFO] [stdout] 26 | fn print_progress(model: &Model, progress: f32, words: f32, start_time: &PreciseTime) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling word2vec v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:30:28 [INFO] [stdout] | [INFO] [stdout] 30 | (start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:49:22 [INFO] [stdout] | [INFO] [stdout] 49 | let start_time = PreciseTime::now(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:90:66 [INFO] [stdout] | [INFO] [stdout] 90 | println!("\ntotal train time:{} s",start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/utils.rs:83:32 [INFO] [stdout] | [INFO] [stdout] 83 | fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 83 - fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] 83 + fn cause(&self) -> Option<&dyn error::Error> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:30:44 [INFO] [stdout] | [INFO] [stdout] 30 | W2vError::File(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:78:53 [INFO] [stdout] | [INFO] [stdout] 78 | ArgumentError::ParseArg(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:79:55 [INFO] [stdout] | [INFO] [stdout] 79 | ArgumentError::ParseFloat(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:80:53 [INFO] [stdout] | [INFO] [stdout] 80 | ArgumentError::ParseInt(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Instant::to`: Use `rhs - lhs` [INFO] [stdout] --> src/train.rs:30:25 [INFO] [stdout] | [INFO] [stdout] 30 | (start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Duration::num_milliseconds`: Use the `whole_milliseconds` function. The value is clamped between `i64::min_value()` and `i64::max_value()`. [INFO] [stdout] --> src/train.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | .num_milliseconds() as f32)) as u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Instant::to`: Use `rhs - lhs` [INFO] [stdout] --> src/train.rs:90:63 [INFO] [stdout] | [INFO] [stdout] 90 | println!("\ntotal train time:{} s",start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Duration::num_seconds`: Use the `whole_seconds` function [INFO] [stdout] --> src/train.rs:91:26 [INFO] [stdout] | [INFO] [stdout] 91 | .num_seconds()); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/ffi.rs:23:27 [INFO] [stdout] | [INFO] [stdout] 23 | e.description().as_bytes().to_vec() [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/ffi.rs:41:31 [INFO] [stdout] | [INFO] [stdout] 41 | ... e.description().as_bytes().to_vec() [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/train.rs:155:29 [INFO] [stdout] | [INFO] [stdout] 155 | let w2v = Word2vec::new(unsafe { input.inner.into_inner() }, [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/train.rs:156:29 [INFO] [stdout] | [INFO] [stdout] 156 | ... unsafe { output.inner.into_inner() }, [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `syn1neg` [INFO] [stdout] --> src/w2v.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | syn1neg: Matrix, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 45 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/dictionary.rs:115:26 [INFO] [stdout] | [INFO] [stdout] 115 | let input_file = try!(File::open(filename)); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:256:21 [INFO] [stdout] | [INFO] [stdout] 256 | let input = try!(train_info.value_of("input") [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:258:22 [INFO] [stdout] | [INFO] [stdout] 258 | let output = try!(train_info.value_of("output") [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:260:19 [INFO] [stdout] | [INFO] [stdout] 260 | let win = try!(train_info.value_of("win").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:261:19 [INFO] [stdout] | [INFO] [stdout] 261 | let neg = try!(train_info.value_of("neg").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:262:18 [INFO] [stdout] | [INFO] [stdout] 262 | let lr = try!(train_info.value_of("lr").unwrap_or("0.05").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:263:25 [INFO] [stdout] | [INFO] [stdout] 263 | let lr_update = try!(train_info.value_of("lr_update").unwrap_or("5000").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:264:27 [INFO] [stdout] | [INFO] [stdout] 264 | let vector_size = try!(train_info.value_of("dim").unwrap_or("100").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:265:21 [INFO] [stdout] | [INFO] [stdout] 265 | let epoch = try!(train_info.value_of("epoch").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:266:25 [INFO] [stdout] | [INFO] [stdout] 266 | let min_count = try!(train_info.value_of("min_count").unwrap_or("5").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:267:24 [INFO] [stdout] | [INFO] [stdout] 267 | let nthreads = try!(train_info.value_of("nthreads").unwrap_or("12").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:268:25 [INFO] [stdout] | [INFO] [stdout] 268 | let threshold = try!(train_info.value_of("threshold").unwrap_or("1e-4").parse::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/utils.rs:285:21 [INFO] [stdout] | [INFO] [stdout] 285 | let input = try!(test_info.value_of("input") [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:55:26 [INFO] [stdout] | [INFO] [stdout] 55 | let input_file = try!(File::open(arg.input.clone())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | let input_file = try!(File::open(filename)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:116:16 [INFO] [stdout] | [INFO] [stdout] 116 | let dict = try!(Dict::new_from_file(&args.input, args.min_count, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/train.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | try!(h.join().unwrap()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | try!(write!(&mut meta, "{} {}\n", size, self.dim)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | try!(file.write_all(&meta)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:42:24 [INFO] [stdout] | [INFO] [stdout] 42 | let mut file = try!(File::create(filename)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | try!(file.write(&word.into_bytes()[..])); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | try!(file.write(&s.into_bytes()[..])); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | try!(file.write(u8data)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/w2v.rs:57:28 [INFO] [stdout] | [INFO] [stdout] 57 | let mut file = try!(File::create(filename.to_owned()+".vec")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/train.rs:6:38 [INFO] [stdout] | [INFO] [stdout] 6 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | use time::PreciseTime; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/train.rs:12:33 [INFO] [stdout] | [INFO] [stdout] 12 | static ALL_WORDS: AtomicUsize = ATOMIC_USIZE_INIT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicUsize::new(0)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:26:74 [INFO] [stdout] | [INFO] [stdout] 26 | fn print_progress(model: &Model, progress: f32, words: f32, start_time: &PreciseTime) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:30:28 [INFO] [stdout] | [INFO] [stdout] 30 | (start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:49:22 [INFO] [stdout] | [INFO] [stdout] 49 | let start_time = PreciseTime::now(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stdout] --> src/train.rs:90:66 [INFO] [stdout] | [INFO] [stdout] 90 | println!("\ntotal train time:{} s",start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/utils.rs:83:32 [INFO] [stdout] | [INFO] [stdout] 83 | fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 83 - fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] 83 + fn cause(&self) -> Option<&dyn error::Error> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:30:44 [INFO] [stdout] | [INFO] [stdout] 30 | W2vError::File(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:78:53 [INFO] [stdout] | [INFO] [stdout] 78 | ArgumentError::ParseArg(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:79:55 [INFO] [stdout] | [INFO] [stdout] 79 | ArgumentError::ParseFloat(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/utils.rs:80:53 [INFO] [stdout] | [INFO] [stdout] 80 | ArgumentError::ParseInt(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Instant::to`: Use `rhs - lhs` [INFO] [stdout] --> src/train.rs:30:25 [INFO] [stdout] | [INFO] [stdout] 30 | (start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Duration::num_milliseconds`: Use the `whole_milliseconds` function. The value is clamped between `i64::min_value()` and `i64::max_value()`. [INFO] [stdout] --> src/train.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | .num_milliseconds() as f32)) as u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Instant::to`: Use `rhs - lhs` [INFO] [stdout] --> src/train.rs:90:63 [INFO] [stdout] | [INFO] [stdout] 90 | println!("\ntotal train time:{} s",start_time.to(PreciseTime::now()) [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `time::Duration::num_seconds`: Use the `whole_seconds` function [INFO] [stdout] --> src/train.rs:91:26 [INFO] [stdout] | [INFO] [stdout] 91 | .num_seconds()); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/ffi.rs:23:27 [INFO] [stdout] | [INFO] [stdout] 23 | e.description().as_bytes().to_vec() [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/ffi.rs:41:31 [INFO] [stdout] | [INFO] [stdout] 41 | ... e.description().as_bytes().to_vec() [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/train.rs:155:29 [INFO] [stdout] | [INFO] [stdout] 155 | let w2v = Word2vec::new(unsafe { input.inner.into_inner() }, [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/train.rs:156:29 [INFO] [stdout] | [INFO] [stdout] 156 | ... unsafe { output.inner.into_inner() }, [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `syn1neg` [INFO] [stdout] --> src/w2v.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | syn1neg: Matrix, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 45 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 4.11s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: time-macros-impl v0.1.1 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 17` [INFO] running `Command { std: "docker" "inspect" "d31d8c7b72ab2f97314dbba0760271670c8a9688a55d526de80714eb1fad475b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d31d8c7b72ab2f97314dbba0760271670c8a9688a55d526de80714eb1fad475b", kill_on_drop: false }` [INFO] [stdout] d31d8c7b72ab2f97314dbba0760271670c8a9688a55d526de80714eb1fad475b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 4398ea6a8d82c71a8d7f87f0b4ea84a534a377f9b9ac1b284d8e69df46d35a23 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "4398ea6a8d82c71a8d7f87f0b4ea84a534a377f9b9ac1b284d8e69df46d35a23", kill_on_drop: false }` [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/dictionary.rs:115:26 [INFO] [stderr] | [INFO] [stderr] 115 | let input_file = try!(File::open(filename)); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:256:21 [INFO] [stderr] | [INFO] [stderr] 256 | let input = try!(train_info.value_of("input") [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:258:22 [INFO] [stderr] | [INFO] [stderr] 258 | let output = try!(train_info.value_of("output") [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:260:19 [INFO] [stderr] | [INFO] [stderr] 260 | let win = try!(train_info.value_of("win").unwrap_or("5").parse::()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:261:19 [INFO] [stderr] | [INFO] [stderr] 261 | let neg = try!(train_info.value_of("neg").unwrap_or("5").parse::()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:262:18 [INFO] [stderr] | [INFO] [stderr] 262 | let lr = try!(train_info.value_of("lr").unwrap_or("0.05").parse::()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:263:25 [INFO] [stderr] | [INFO] [stderr] 263 | let lr_update = try!(train_info.value_of("lr_update").unwrap_or("5000").parse::()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:264:27 [INFO] [stderr] | [INFO] [stderr] 264 | let vector_size = try!(train_info.value_of("dim").unwrap_or("100").parse::()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:265:21 [INFO] [stderr] | [INFO] [stderr] 265 | let epoch = try!(train_info.value_of("epoch").unwrap_or("5").parse::()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:266:25 [INFO] [stderr] | [INFO] [stderr] 266 | let min_count = try!(train_info.value_of("min_count").unwrap_or("5").parse::()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:267:24 [INFO] [stderr] | [INFO] [stderr] 267 | let nthreads = try!(train_info.value_of("nthreads").unwrap_or("12").parse::()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:268:25 [INFO] [stderr] | [INFO] [stderr] 268 | let threshold = try!(train_info.value_of("threshold").unwrap_or("1e-4").parse::()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/utils.rs:285:21 [INFO] [stderr] | [INFO] [stderr] 285 | let input = try!(test_info.value_of("input") [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/train.rs:55:26 [INFO] [stderr] | [INFO] [stderr] 55 | let input_file = try!(File::open(arg.input.clone())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/train.rs:101:22 [INFO] [stderr] | [INFO] [stderr] 101 | let input_file = try!(File::open(filename)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/train.rs:116:16 [INFO] [stderr] | [INFO] [stderr] 116 | let dict = try!(Dict::new_from_file(&args.input, args.min_count, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/train.rs:149:9 [INFO] [stderr] | [INFO] [stderr] 149 | try!(h.join().unwrap()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/w2v.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | try!(write!(&mut meta, "{} {}\n", size, self.dim)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/w2v.rs:46:9 [INFO] [stderr] | [INFO] [stderr] 46 | try!(file.write_all(&meta)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/w2v.rs:42:24 [INFO] [stderr] | [INFO] [stderr] 42 | let mut file = try!(File::create(filename)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/w2v.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | try!(file.write(&word.into_bytes()[..])); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/w2v.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | try!(file.write(&s.into_bytes()[..])); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/w2v.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | try!(file.write(u8data)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/w2v.rs:57:28 [INFO] [stderr] | [INFO] [stderr] 57 | let mut file = try!(File::create(filename.to_owned()+".vec")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stderr] --> src/train.rs:6:38 [INFO] [stderr] | [INFO] [stderr] 6 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stderr] --> src/train.rs:9:11 [INFO] [stderr] | [INFO] [stderr] 9 | use time::PreciseTime; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stderr] --> src/train.rs:12:33 [INFO] [stderr] | [INFO] [stderr] 12 | static ALL_WORDS: AtomicUsize = ATOMIC_USIZE_INIT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicUsize::new(0)` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stderr] --> src/train.rs:26:74 [INFO] [stderr] | [INFO] [stderr] 26 | fn print_progress(model: &Model, progress: f32, words: f32, start_time: &PreciseTime) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stderr] --> src/train.rs:30:28 [INFO] [stderr] | [INFO] [stderr] 30 | (start_time.to(PreciseTime::now()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stderr] --> src/train.rs:49:22 [INFO] [stderr] | [INFO] [stderr] 49 | let start_time = PreciseTime::now(); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `time::PreciseTime`: Use `Instant` [INFO] [stderr] --> src/train.rs:90:66 [INFO] [stderr] | [INFO] [stderr] 90 | println!("\ntotal train time:{} s",start_time.to(PreciseTime::now()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/utils.rs:83:32 [INFO] [stderr] | [INFO] [stderr] 83 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 83 - fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] 83 + fn cause(&self) -> Option<&dyn error::Error> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/utils.rs:30:44 [INFO] [stderr] | [INFO] [stderr] 30 | W2vError::File(ref err) => err.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/utils.rs:78:53 [INFO] [stderr] | [INFO] [stderr] 78 | ArgumentError::ParseArg(ref err) => err.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/utils.rs:79:55 [INFO] [stderr] | [INFO] [stderr] 79 | ArgumentError::ParseFloat(ref err) => err.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/utils.rs:80:53 [INFO] [stderr] | [INFO] [stderr] 80 | ArgumentError::ParseInt(ref err) => err.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `time::Instant::to`: Use `rhs - lhs` [INFO] [stderr] --> src/train.rs:30:25 [INFO] [stderr] | [INFO] [stderr] 30 | (start_time.to(PreciseTime::now()) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `time::Duration::num_milliseconds`: Use the `whole_milliseconds` function. The value is clamped between `i64::min_value()` and `i64::max_value()`. [INFO] [stderr] --> src/train.rs:31:17 [INFO] [stderr] | [INFO] [stderr] 31 | .num_milliseconds() as f32)) as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `time::Instant::to`: Use `rhs - lhs` [INFO] [stderr] --> src/train.rs:90:63 [INFO] [stderr] | [INFO] [stderr] 90 | println!("\ntotal train time:{} s",start_time.to(PreciseTime::now()) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `time::Duration::num_seconds`: Use the `whole_seconds` function [INFO] [stderr] --> src/train.rs:91:26 [INFO] [stderr] | [INFO] [stderr] 91 | .num_seconds()); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/ffi.rs:23:27 [INFO] [stderr] | [INFO] [stderr] 23 | e.description().as_bytes().to_vec() [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/ffi.rs:41:31 [INFO] [stderr] | [INFO] [stderr] 41 | ... e.description().as_bytes().to_vec() [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/train.rs:155:29 [INFO] [stderr] | [INFO] [stderr] 155 | let w2v = Word2vec::new(unsafe { input.inner.into_inner() }, [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/train.rs:156:29 [INFO] [stderr] | [INFO] [stderr] 156 | ... unsafe { output.inner.into_inner() }, [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: field is never read: `syn1neg` [INFO] [stderr] --> src/w2v.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | syn1neg: Matrix, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `word2vec` (lib) generated 45 warnings [INFO] [stderr] warning: `word2vec` (lib test) generated 45 warnings (45 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: time-macros-impl v0.1.1 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 18` [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/word2vec-2a880f7c4c0acf10) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/word2vec-301a805006f1b77e) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests word2vec [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "4398ea6a8d82c71a8d7f87f0b4ea84a534a377f9b9ac1b284d8e69df46d35a23", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4398ea6a8d82c71a8d7f87f0b4ea84a534a377f9b9ac1b284d8e69df46d35a23", kill_on_drop: false }` [INFO] [stdout] 4398ea6a8d82c71a8d7f87f0b4ea84a534a377f9b9ac1b284d8e69df46d35a23