>>> synapse-bt: Building testing/synapse-bt 1.0-r4 (using abuild 3.11.0-r1) started Tue, 23 May 2023 21:54:25 +0000 >>> synapse-bt: Checking sanity of /home/buildozer/aports/testing/synapse-bt/APKBUILD... >>> synapse-bt: Analyzing dependencies... >>> synapse-bt: Installing for build: build-base cargo openssl-dev cargo-auditable (1/4) Installing cargo (1.69.0-r10) (2/4) Installing openssl-dev (3.1.0-r5) (3/4) Installing cargo-auditable (0.6.1-r1) (4/4) Installing .makedepends-synapse-bt (20230523.215426) Executing busybox-1.36.0-r11.trigger OK: 910 MiB in 115 packages >>> synapse-bt: Cleaning up srcdir >>> synapse-bt: Cleaning up pkgdir >>> synapse-bt: Fetching https://distfiles.alpinelinux.org/distfiles/edge//synapse-bt-1.0.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 171k 100 171k 0 0 529k 0 --:--:-- --:--:-- --:--:-- 531k >>> synapse-bt: Fetching https://distfiles.alpinelinux.org/distfiles/edge//synapse-bt-1.0.tar.gz >>> synapse-bt: Checking sha512sums... synapse-bt-1.0.tar.gz: OK openssl3.patch: OK synapse-bt.initd: OK >>> synapse-bt: Unpacking /var/cache/distfiles/edge//synapse-bt-1.0.tar.gz... >>> synapse-bt: openssl3.patch patching file Cargo.lock Updating crates.io index Downloading crates ... Downloaded byteorder v1.3.1 Downloaded rand v0.5.6 Downloaded aho-corasick v0.6.10 Downloaded metrohash v1.0.6 Downloaded memchr v2.2.0 Downloaded cfg-if v0.1.7 Downloaded memmap v0.6.2 Downloaded crossbeam-utils v0.6.5 Downloaded tokio-reactor v0.1.9 Downloaded rand_core v0.4.0 Downloaded proc-macro2 v0.4.27 Downloaded nix v0.10.0 Downloaded lazy_static v1.3.0 Downloaded smallvec v0.6.9 Downloaded atty v0.2.11 Downloaded textwrap v0.10.0 Downloaded term v0.5.1 Downloaded tokio-io v0.1.12 Downloaded tokio-trace-core v0.1.0 Downloaded resolv-conf v0.6.2 Downloaded encode_unicode v0.3.5 Downloaded indexmap v1.0.2 Downloaded autocfg v0.1.2 Downloaded utf-8 v0.7.5 Downloaded try-lock v0.2.2 Downloaded serde_json v1.0.39 Downloaded crossbeam-deque v0.7.1 Downloaded syn v0.15.29 Downloaded unicode-width v0.1.5 Downloaded num_cpus v1.10.0 Downloaded digest v0.8.0 Downloaded getopts v0.2.18 Downloaded error-chain v0.12.1 Downloaded want v0.0.6 Downloaded unicode-normalization v0.1.8 Downloaded string v0.1.3 Downloaded tokio-timer v0.2.10 Downloaded mime v0.3.13 Downloaded clap v2.32.0 Downloaded encoding_rs v0.8.17 Downloaded bincode v1.1.2 Downloaded crossbeam-epoch v0.7.1 Downloaded cc v1.0.31 Downloaded vecio v0.1.0 Downloaded rand_jitter v0.1.3 Downloaded csv v0.15.0 Downloaded url_serde v0.2.0 Downloaded generic-array v0.12.0 Downloaded hyper-tls v0.3.1 Downloaded shellexpand v1.0.0 Downloaded input_buffer v0.2.0 Downloaded base32 v0.3.1 Downloaded block-padding v0.1.3 Downloaded dns-parser v0.7.1 Downloaded quote v0.6.11 Downloaded http-range v0.1.1 Downloaded block-buffer v0.7.0 Downloaded amy v0.10.0 Downloaded tokio-sync v0.1.4 Downloaded prettytable-rs v0.7.0 Downloaded tokio-current-thread v0.1.5 Downloaded libflate v0.1.21 Downloaded uuid v0.7.2 Downloaded fs_extra v1.1.0 Downloaded serde_derive v1.0.89 Downloaded tokio-threadpool v0.1.12 Downloaded unicase v2.3.0 Downloaded native-tls v0.2.2 Downloaded tungstenite v0.6.1 Downloaded serde v1.0.89 Downloaded tokio v0.1.17 Downloaded reqwest v0.9.11 Downloaded num-bigint v0.2.2 Downloaded hyper v0.12.25 Downloaded http v0.1.16 Downloaded h2 v0.1.17 Downloaded regex v1.1.2 Downloaded nix v0.11.0 Downloaded regex-syntax v0.6.5 Downloaded libc v0.2.50 Compiling libc v0.2.50 Compiling autocfg v0.1.2 Compiling byteorder v1.3.1 Compiling cfg-if v0.1.7 Compiling rand_core v0.4.0 Compiling version_check v0.1.5 Compiling lazy_static v1.3.0 Compiling smallvec v0.6.9 Compiling futures v0.1.25 Compiling cc v1.0.31 Compiling serde v1.0.89 Compiling semver-parser v0.7.0 Compiling scopeguard v0.3.3 Compiling pkg-config v0.3.14 Compiling autocfg v1.1.0 Compiling proc-macro2 v1.0.43 Compiling unicode-ident v1.0.3 Compiling quote v1.0.21 Compiling fnv v1.0.6 Compiling slab v0.4.2 Compiling bitflags v1.0.4 Compiling stable_deref_trait v1.1.1 Compiling syn v1.0.99 Compiling matches v0.1.8 Compiling arrayvec v0.4.10 Compiling itoa v0.4.3 Compiling nodrop v0.1.13 Compiling num-traits v0.2.6 Compiling proc-macro2 v0.4.27 Compiling lazycell v1.2.1 Compiling unicode-xid v0.1.0 Compiling memoffset v0.2.1 Compiling percent-encoding v1.0.1 Compiling num-integer v0.1.39 Compiling foreign-types-shared v0.1.1 Compiling typenum v1.10.0 Compiling openssl v0.10.41 Compiling siphasher v0.2.3 Compiling httparse v1.3.3 Compiling ryu v0.2.7 Compiling cfg-if v1.0.0 Compiling memchr v2.2.0 Compiling syn v0.15.29 Compiling once_cell v1.13.0 Compiling unicode-width v0.1.5 Compiling native-tls v0.2.2 Compiling winapi-build v0.1.1 Compiling try-lock v0.2.2 Compiling ucd-util v0.1.3 Compiling byte-tools v0.3.1 Compiling openssl-probe v0.1.2 Compiling crc32fast v1.2.0 Compiling indexmap v1.0.2 Compiling regex v1.1.2 Compiling string v0.1.3 Compiling void v1.0.2 Compiling utf8-ranges v1.0.2 Compiling encoding_rs v0.8.17 Compiling nix v0.10.0 Compiling quick-error v1.2.2 Compiling nix v0.11.0 Compiling num-bigint v0.2.2 Compiling winapi v0.2.8 Compiling adler32 v1.0.3 Compiling rustc-serialize v0.3.24 Compiling fake-simd v0.1.2 Compiling opaque-debug v0.2.2 Compiling dtoa v0.4.3 Compiling safemem v0.3.0 Compiling encode_unicode v0.3.5 Compiling synapse-bencode v0.1.0 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0/bencode) Compiling ansi_term v0.11.0 Compiling utf-8 v0.7.5 Compiling vec_map v0.8.1 Compiling shellexpand v1.0.0 Compiling strsim v0.7.0 Compiling fs_extra v1.1.0 Compiling base32 v0.3.1 Compiling log v0.4.6 Compiling crossbeam-utils v0.6.5 Compiling owning_ref v0.4.0 Compiling unicode-bidi v0.3.4 Compiling tokio-trace-core v0.1.0 Compiling thread_local v0.3.6 Compiling foreign-types v0.3.2 Compiling metrohash v1.0.6 Compiling block-padding v0.1.3 Compiling textwrap v0.10.0 Compiling getopts v0.2.18 Compiling http-range v0.1.1 Compiling rand_core v0.3.1 Compiling rand_jitter v0.1.3 Compiling resolv-conf v0.6.2 warning: `...` range patterns are deprecated --> bencode/src/lib.rs:252:24 | 252 | Ok(d @ b'0'...b'9') => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default Compiling semver v0.9.0 Compiling rand_isaac v0.1.1 Compiling rand_xorshift v0.1.1 Compiling rand_hc v0.1.0 Compiling unicode-normalization v0.1.8 Compiling lock_api v0.1.5 Compiling regex-syntax v0.6.5 Compiling unicase v1.4.2 Compiling unicase v2.3.0 Compiling error-chain v0.12.1 Compiling ws2_32-sys v0.2.1 Compiling rand_pcg v0.1.2 Compiling rand_chacha v0.1.1 Compiling rand v0.6.5 Compiling crossbeam-queue v0.1.2 Compiling bincode v1.1.2 Compiling rustc_version v0.2.3 Compiling vecio v0.1.0 Compiling aho-corasick v0.6.10 Compiling parking_lot_core v0.4.0 Compiling phf_shared v0.7.24 Compiling phf v0.7.24 Compiling base64 v0.10.1 Compiling base64 v0.9.3 Compiling term v0.5.1 Compiling dns-parser v0.7.1 Compiling libflate v0.1.21 Compiling crossbeam-epoch v0.7.1 Compiling openssl-sys v0.9.75 Compiling synapse-bt v0.1.0 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0) Compiling mime v0.3.13 Compiling iovec v0.1.2 Compiling rand_os v0.1.3 Compiling net2 v0.2.33 Compiling num_cpus v1.10.0 Compiling time v0.1.42 Compiling memchr v1.0.2 Compiling rand v0.5.6 Compiling atty v0.2.11 Compiling memmap v0.6.2 Compiling quote v0.6.11 Compiling clap v2.32.0 Compiling bytes v0.4.12 Compiling adns v0.1.0 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0/adns) Compiling crossbeam-deque v0.7.1 warning: `synapse-bencode` (lib) generated 1 warning (run `cargo fix --lib -p synapse-bencode` to apply 1 suggestion) Compiling mio v0.6.16 Compiling generic-array v0.12.0 Compiling http v0.1.16 Compiling input_buffer v0.2.0 Compiling idna v0.1.5 Compiling tokio-executor v0.1.6 Compiling tokio-io v0.1.12 Compiling tokio-sync v0.1.4 Compiling futures-cpupool v0.1.8 Compiling want v0.0.6 Compiling block-buffer v0.7.0 Compiling digest v0.8.0 Compiling tokio-timer v0.2.10 Compiling tokio-current-thread v0.1.5 Compiling sha-1 v0.8.1 Compiling tokio-threadpool v0.1.12 Compiling uuid v0.7.2 Compiling phf_generator v0.7.24 Compiling phf_codegen v0.7.24 Compiling url v1.7.2 Compiling csv v0.15.0 Compiling mime_guess v2.0.0-alpha.6 Compiling parking_lot v0.7.1 Compiling prettytable-rs v0.7.0 Compiling tokio-reactor v0.1.9 Compiling tokio-tcp v0.1.3 Compiling tokio v0.1.17 Compiling h2 v0.1.17 Compiling serde_derive v1.0.89 Compiling amy v0.10.0 Compiling chrono v0.4.6 Compiling serde_json v1.0.39 Compiling url_serde v0.2.0 Compiling serde_urlencoded v0.5.4 Compiling toml v0.4.10 Compiling hyper v0.12.25 Compiling openssl-macros v0.1.0 Compiling synapse-rpc v0.1.21 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0/rpc) Compiling synapse-session v0.1.0 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0/session) Compiling hyper-tls v0.3.1 Compiling tungstenite v0.6.1 Compiling reqwest v0.9.11 warning: `...` range patterns are deprecated --> src/torrent/peer/reader.rs:118:30 | 118 | ... 0...3 => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default warning: the item `base64` is imported redundantly --> src/torrent/bitfield.rs:115:13 | 115 | use base64; | ^^^^^^ | ::: src/main.rs:15:1 | 15 | extern crate base64; | -------------------- the item `base64` is already imported here | = note: `#[warn(unused_imports)]` on by default warning: unused import: `io_err` --> src/disk/cache.rs:13:30 | 13 | use util::{native, MHashMap, io_err}; | ^^^^^^ warning: `...` range patterns are deprecated --> src/rpc/proto/ws.rs:185:18 | 185 | o @ 3...7 => Opcode::Other(o), | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: unused label --> src/rpc/mod.rs:227:9 | 227 | 'outer: loop { | ^^^^^^ | = note: `#[warn(unused_labels)]` on by default warning: unnecessary braces around block return value --> src/main.rs:83:45 | 83 | pub static ref CONFIG: config::Config = { config::Config::load() }; | ^^ ^^ | = note: `#[warn(unused_braces)]` on by default help: remove these braces | 83 - pub static ref CONFIG: config::Config = { config::Config::load() }; 83 + pub static ref CONFIG: config::Config = config::Config::load(); | warning: unnecessary braces around block return value --> src/main.rs:99:39 | 99 | pub static ref DL_TOKEN: String = { util::random_string(20) }; | ^^ ^^ | help: remove these braces | 99 - pub static ref DL_TOKEN: String = { util::random_string(20) }; 99 + pub static ref DL_TOKEN: String = util::random_string(20); | warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead --> src/buffers.rs:21:37 | 21 | data: Box::new(mem::uninitialized()), | ^^^^^^^^^^^^^ | = note: `#[warn(deprecated)]` on by default warning: trait objects without an explicit `dyn` are deprecated --> src/control/mod.rs:77:27 | 77 | jobs: Vec>>>, | ^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: `#[warn(bare_trait_objects)]` on by default help: use `dyn` | 77 | jobs: Vec>>>, | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/control/mod.rs:78:28 | 78 | cjobs: Vec>>>, | ^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: use `dyn` | 78 | cjobs: Vec>>>, | +++ warning: variable does not need to be mutable --> src/disk/job.rs:362:21 | 362 | let mut fp = tpb.get(&from); | ----^^ | | | help: remove this `mut` | = note: `#[warn(unused_mut)]` on by default warning: variable does not need to be mutable --> src/disk/job.rs:363:21 | 363 | let mut tp = tpb2.get(&to); | ----^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:389:21 | 389 | let mut temp = tpb.get(sd); | ----^^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:393:21 | 393 | let mut actual = tpb2.get(sd); | ----^^^^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:405:25 | 405 | let mut spb = tpb.get(sd); | ----^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:413:25 | 413 | let mut pb = tpb2.get(path.as_ref().unwrap_or(dd)); | ----^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:426:25 | 426 | let mut pb = tpb.get(path.as_ref().unwrap_or(dd)); | ----^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:437:21 | 437 | let mut buf = tb.get(info.piece_len as usize); | ----^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:461:21 | 461 | let mut buf = tb.get(info.piece_len as usize); | ----^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:590:29 | 590 | let mut amnt = cmp::min(len, 16_384); | ----^^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/control/job.rs:110:21 | 110 | let mut prev = self.peers.get_mut(id).unwrap(); | ----^^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/rpc/reader.rs:87:29 | 87 | let mut buf = &self.msg.data[start..end]; | ----^^^ | | | help: remove this `mut` warning: fields `offset`, `completed`, and `requested` are never read --> src/torrent/picker/mod.rs:57:5 | 56 | struct Downloading { | ----------- fields in this struct 57 | offset: u32, | ^^^^^^ 58 | completed: bool, | ^^^^^^^^^ 59 | requested: Vec, | ^^^^^^^^^ | = note: `Downloading` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis = note: `#[warn(dead_code)]` on by default warning: the type `[u8; 16384]` does not permit being left uninitialized --> src/buffers.rs:21:32 | 21 | data: Box::new(mem::uninitialized()), | ^^^^^^^^^^^^^^^^^^^^ | | | this code causes undefined behavior when executed | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done | = note: integers must be initialized = note: `#[warn(invalid_value)]` on by default warning: unused return value of `std::mem::replace` that must be used --> src/tracker/http/mod.rs:76:17 | 76 | mem::replace(self, n); | ^^^^^^^^^^^^^^^^^^^^^ | = note: if you don't need the old value, you can just assign the new value directly = note: `#[warn(unused_must_use)]` on by default warning: unused return value of `std::mem::replace` that must be used --> src/rpc/processor.rs:570:25 | 570 | mem::replace(r.user_data(), user_data.clone()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: if you don't need the old value, you can just assign the new value directly warning: unused return value of `std::result::Result::::is_ok` that must be used --> src/init.rs:139:9 | 139 | unistd::write(PIPE.1, &[0u8]).is_ok(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: if you intended to assert that this is ok, consider `.unwrap()` instead Compiling sycli v0.1.0 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0/sycli) warning: `synapse-bt` (bin "synapse") generated 27 warnings (run `cargo fix --bin "synapse"` to apply 19 suggestions) Finished release [optimized + debuginfo] target(s) in 2m 33s warning: the following packages contain code that will be rejected by a future version of Rust: fs_extra v1.1.0, rustc-serialize v0.3.24 note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` Compiling smallvec v0.6.9 Compiling matches v0.1.8 Compiling bitflags v1.0.4 Compiling cfg-if v0.1.7 Compiling ucd-util v0.1.3 Compiling percent-encoding v1.0.1 Compiling quick-error v1.2.2 Compiling lazy_static v1.3.0 Compiling void v1.0.2 Compiling utf8-ranges v1.0.2 Compiling winapi v0.2.8 Compiling itoa v0.4.3 Compiling foreign-types-shared v0.1.1 Compiling rand_core v0.4.0 Compiling once_cell v1.13.0 Compiling cfg-if v1.0.0 Compiling unicode-width v0.1.5 Compiling safemem v0.3.0 Compiling http-range v0.1.1 Compiling fs_extra v1.1.0 Compiling synapse-bencode v0.1.0 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0/bencode) Compiling metrohash v1.0.6 Compiling shellexpand v1.0.0 Compiling base32 v0.3.1 Compiling fnv v1.0.6 Compiling libc v0.2.50 Compiling synapse-bt v0.1.0 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0) warning: `...` range patterns are deprecated --> bencode/src/lib.rs:252:24 | 252 | Ok(d @ b'0'...b'9') => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default Compiling serde v1.0.89 Compiling byteorder v1.3.1 Compiling num-traits v0.2.6 Compiling unicode-bidi v0.3.4 Compiling memchr v2.2.0 Compiling thread_local v0.3.6 Compiling ryu v0.2.7 Compiling foreign-types v0.3.2 Compiling resolv-conf v0.6.2 Compiling httparse v1.3.3 Compiling ws2_32-sys v0.2.1 Compiling error-chain v0.12.1 Compiling adns v0.1.0 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0/adns) Compiling getopts v0.2.18 Compiling synapse-session v0.1.0 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0/session) Compiling synapse-rpc v0.1.21 (/home/buildozer/aports/testing/synapse-bt/src/synapse-1.0/rpc) Compiling regex-syntax v0.6.5 Compiling vecio v0.1.0 Compiling rand_core v0.3.1 Compiling aho-corasick v0.6.10 Compiling unicode-normalization v0.1.8 Compiling dns-parser v0.7.1 Compiling base64 v0.9.3 Compiling iovec v0.1.2 Compiling time v0.1.42 Compiling openssl-sys v0.9.75 Compiling nix v0.11.0 Compiling memmap v0.6.2 Compiling rand v0.5.6 Compiling net2 v0.2.33 Compiling bytes v0.4.12 warning: `synapse-bencode` (lib) generated 1 warning (run `cargo fix --lib -p synapse-bencode` to apply 1 suggestion) warning: `synapse-bencode` (lib) generated 1 warning (1 duplicate) Compiling nix v0.10.0 Compiling num-integer v0.1.39 Compiling openssl v0.10.41 Compiling idna v0.1.5 Compiling url v1.7.2 Compiling regex v1.1.2 warning: `...` range patterns are deprecated --> src/torrent/peer/reader.rs:118:30 | 118 | ... 0...3 => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default warning: the item `base64` is imported redundantly --> src/torrent/bitfield.rs:115:13 | 115 | use base64; | ^^^^^^ | ::: src/main.rs:15:1 | 15 | extern crate base64; | -------------------- the item `base64` is already imported here | = note: `#[warn(unused_imports)]` on by default warning: unused import: `io_err` --> src/disk/cache.rs:13:30 | 13 | use util::{native, MHashMap, io_err}; | ^^^^^^ warning: `...` range patterns are deprecated --> src/rpc/proto/ws.rs:185:18 | 185 | o @ 3...7 => Opcode::Other(o), | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: unused label --> src/rpc/mod.rs:227:9 | 227 | 'outer: loop { | ^^^^^^ | = note: `#[warn(unused_labels)]` on by default warning: unnecessary braces around block return value --> src/main.rs:83:45 | 83 | pub static ref CONFIG: config::Config = { config::Config::load() }; | ^^ ^^ | = note: `#[warn(unused_braces)]` on by default help: remove these braces | 83 - pub static ref CONFIG: config::Config = { config::Config::load() }; 83 + pub static ref CONFIG: config::Config = config::Config::load(); | warning: unnecessary braces around block return value --> src/main.rs:99:39 | 99 | pub static ref DL_TOKEN: String = { util::random_string(20) }; | ^^ ^^ | help: remove these braces | 99 - pub static ref DL_TOKEN: String = { util::random_string(20) }; 99 + pub static ref DL_TOKEN: String = util::random_string(20); | warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead --> src/buffers.rs:21:37 | 21 | data: Box::new(mem::uninitialized()), | ^^^^^^^^^^^^^ | = note: `#[warn(deprecated)]` on by default warning: trait objects without an explicit `dyn` are deprecated --> src/control/mod.rs:77:27 | 77 | jobs: Vec>>>, | ^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: `#[warn(bare_trait_objects)]` on by default help: use `dyn` | 77 | jobs: Vec>>>, | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/control/mod.rs:78:28 | 78 | cjobs: Vec>>>, | ^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: use `dyn` | 78 | cjobs: Vec>>>, | +++ Compiling amy v0.10.0 Compiling chrono v0.4.6 Compiling serde_json v1.0.39 Compiling url_serde v0.2.0 Compiling bincode v1.1.2 Compiling toml v0.4.10 Compiling num-bigint v0.2.2 warning: variable does not need to be mutable --> src/disk/job.rs:362:21 | 362 | let mut fp = tpb.get(&from); | ----^^ | | | help: remove this `mut` | = note: `#[warn(unused_mut)]` on by default warning: variable does not need to be mutable --> src/disk/job.rs:363:21 | 363 | let mut tp = tpb2.get(&to); | ----^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:389:21 | 389 | let mut temp = tpb.get(sd); | ----^^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:393:21 | 393 | let mut actual = tpb2.get(sd); | ----^^^^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:405:25 | 405 | let mut spb = tpb.get(sd); | ----^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:413:25 | 413 | let mut pb = tpb2.get(path.as_ref().unwrap_or(dd)); | ----^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:426:25 | 426 | let mut pb = tpb.get(path.as_ref().unwrap_or(dd)); | ----^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:437:21 | 437 | let mut buf = tb.get(info.piece_len as usize); | ----^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:461:21 | 461 | let mut buf = tb.get(info.piece_len as usize); | ----^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/disk/job.rs:590:29 | 590 | let mut amnt = cmp::min(len, 16_384); | ----^^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/control/job.rs:110:21 | 110 | let mut prev = self.peers.get_mut(id).unwrap(); | ----^^^^ | | | help: remove this `mut` warning: variable does not need to be mutable --> src/rpc/reader.rs:87:29 | 87 | let mut buf = &self.msg.data[start..end]; | ----^^^ | | | help: remove this `mut` warning: fields `offset`, `completed`, and `requested` are never read --> src/torrent/picker/mod.rs:57:5 | 56 | struct Downloading { | ----------- fields in this struct 57 | offset: u32, | ^^^^^^ 58 | completed: bool, | ^^^^^^^^^ 59 | requested: Vec, | ^^^^^^^^^ | = note: `Downloading` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis = note: `#[warn(dead_code)]` on by default warning: the type `[u8; 16384]` does not permit being left uninitialized --> src/buffers.rs:21:32 | 21 | data: Box::new(mem::uninitialized()), | ^^^^^^^^^^^^^^^^^^^^ | | | this code causes undefined behavior when executed | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done | = note: integers must be initialized = note: `#[warn(invalid_value)]` on by default warning: unused return value of `std::mem::replace` that must be used --> src/tracker/http/mod.rs:76:17 | 76 | mem::replace(self, n); | ^^^^^^^^^^^^^^^^^^^^^ | = note: if you don't need the old value, you can just assign the new value directly = note: `#[warn(unused_must_use)]` on by default warning: unused return value of `std::mem::replace` that must be used --> src/rpc/processor.rs:570:25 | 570 | mem::replace(r.user_data(), user_data.clone()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: if you don't need the old value, you can just assign the new value directly warning: unused return value of `std::result::Result::::is_ok` that must be used --> src/init.rs:139:9 | 139 | unistd::write(PIPE.1, &[0u8]).is_ok(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: if you intended to assert that this is ok, consider `.unwrap()` instead warning: use of deprecated trait `rand::distributions::IndependentSample`: use Distribution instead --> src/torrent/picker/tests.rs:5:27 | 5 | use rand::distributions::{IndependentSample, Range}; | ^^^^^^^^^^^^^^^^^ warning: use of deprecated method `rand::distributions::IndependentSample::ind_sample`: use Distribution instead --> src/torrent/picker/tests.rs:93:48 | 93 | peer.requests.remove(b.ind_sample(&mut rng)) | ^^^^^^^^^^ warning: unused return value of `collect` that must be used --> src/torrent/bitfield.rs:231:9 | 231 | / pf.iter() 232 | | .map(|r| { 233 | | assert!(r > 3 && r < 7); 234 | | }) 235 | | .collect::>(); | |________________________________^ | = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead = note: `#[warn(unused_must_use)]` on by default warning: unused return value of `std::mem::replace` that must be used --> src/tracker/http/mod.rs:76:17 | 76 | mem::replace(self, n); | ^^^^^^^^^^^^^^^^^^^^^ | = note: if you don't need the old value, you can just assign the new value directly warning: `synapse-bt` (bin "synapse" test) generated 30 warnings (26 duplicates) warning: `synapse-bt` (bin "synapse") generated 27 warnings (run `cargo fix --bin "synapse"` to apply 19 suggestions) Finished release [optimized + debuginfo] target(s) in 2m 22s warning: the following packages contain code that will be rejected by a future version of Rust: fs_extra v1.1.0 note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` Running unittests src/main.rs (target/release/deps/synapse-1d47b2a87bb35511) running 53 tests test torrent::bitfield::tests::test_count ... ok test torrent::bitfield::tests::test_create ... ok test torrent::bitfield::tests::test_has ... ok test torrent::bitfield::tests::test_iter ... ok test torrent::bitfield::tests::test_set ... ok test torrent::bitfield::tests::test_usable ... ok test torrent::choker::tests::test_add_peers ... ok test torrent::choker::tests::test_remove_peers ... ok test torrent::info::tests::correct_piece_len ... ok test torrent::choker::tests::test_update_download ... ok test torrent::info::tests::loc_iter_bounds ... ok test torrent::choker::tests::test_update_upload ... ok test torrent::peer::reader::tests::test_read_bitfield ... ok test torrent::peer::reader::tests::test_read_cancel ... ok test torrent::peer::reader::tests::test_read_choke ... ok test torrent::peer::reader::tests::test_read_handshake ... ok test torrent::peer::reader::tests::test_read_have ... ok test torrent::peer::reader::tests::test_read_interested ... ok test torrent::peer::reader::tests::test_read_keepalive ... ok test torrent::peer::reader::tests::test_read_port ... ok test torrent::peer::reader::tests::test_read_request ... ok test torrent::peer::reader::tests::test_read_unchoke ... ok test torrent::peer::reader::tests::test_read_uninterested ... ok test torrent::peer::reader::tests::test_read_piece ... ok test torrent::peer::writer::tests::test_write_bitfield ... ok test torrent::peer::writer::tests::test_write_cancel ... ok test torrent::peer::writer::tests::test_write_choke ... ok test torrent::peer::writer::tests::test_write_handshake ... ok test torrent::peer::writer::tests::test_write_have ... ok test torrent::peer::writer::tests::test_write_interested ... ok test torrent::peer::writer::tests::test_write_keepalive ... ok test torrent::peer::tests::test_cancel ... ok test torrent::peer::writer::tests::test_write_request ... ok test torrent::peer::writer::tests::test_write_piece ... ok test torrent::peer::writer::tests::test_write_unchoke ... ok test torrent::picker::tests::test_rarest_efficiency ... ignored test torrent::picker::tests::test_seq_efficiency ... ignored test torrent::picker::rarest::tests::test_available ... ok test torrent::picker::rarest::tests::test_unavailable ... ok test torrent::picker::sequential::tests::test_piece_pick_order ... ok test tracker::dht::proto::tests::test_decode_id_resp ... ok test torrent::picker::tests::test_seq_picker ... ok test tracker::dht::proto::tests::test_encode_decode_req_annnounce ... ok test tracker::dht::proto::tests::test_encode_decode_req_get ... ok test tracker::dht::proto::tests::test_encode_decode_req_find ... ok test tracker::dht::proto::tests::test_encode_decode_resp ... ok test tracker::dht::proto::tests::test_encode_decode_req_ping ... ok test tracker::dht::rt::tests::test_bucket_midpoint ... ok test tracker::dht::rt::tests::test_bucket_split_close ... ok test tracker::dht::rt::tests::test_id_from_pow ... ok test tracker::dht::rt::tests::test_bucket_split_far ... ok test util::test_hash_enc ... ok test stat::tests::test_ema ... ok test result: ok. 51 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.15s Running tests/tests.rs (target/release/deps/tests-c91a273c509fefec) running 1 test test it_works ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s >>> synapse-bt: Entering fakeroot... >>> synapse-bt-openrc*: Running split function openrc... >>> synapse-bt-openrc*: Preparing subpackage synapse-bt-openrc... >>> synapse-bt-openrc*: Running postcheck for synapse-bt-openrc >>> synapse-bt-cli*: Running split function cli... >>> synapse-bt-cli*: Preparing subpackage synapse-bt-cli... >>> synapse-bt-cli*: Stripping binaries >>> synapse-bt-cli*: Running postcheck for synapse-bt-cli >>> synapse-bt*: Running postcheck for synapse-bt >>> synapse-bt*: Preparing package synapse-bt... >>> synapse-bt*: Stripping binaries >>> synapse-bt*: Script found. /bin/sh added as a dependency for synapse-bt-1.0-r4.apk >>> synapse-bt*: Adding .pre-install >>> synapse-bt-cli*: Scanning shared objects >>> synapse-bt-openrc*: Scanning shared objects >>> synapse-bt*: Scanning shared objects >>> synapse-bt-cli*: Tracing dependencies... so:libc.musl-armv7.so.1 so:libcrypto.so.3 so:libgcc_s.so.1 so:libssl.so.3 >>> synapse-bt-cli*: Package size: 1.5 MB >>> synapse-bt-cli*: Compressing data... >>> synapse-bt-cli*: Create checksum... >>> synapse-bt-cli*: Create synapse-bt-cli-1.0-r4.apk >>> synapse-bt-openrc*: Tracing dependencies... >>> synapse-bt-openrc*: Package size: 16.0 KB >>> synapse-bt-openrc*: Compressing data... >>> synapse-bt-openrc*: Create checksum... >>> synapse-bt-openrc*: Create synapse-bt-openrc-1.0-r4.apk >>> synapse-bt*: Tracing dependencies... /bin/sh so:libc.musl-armv7.so.1 so:libcrypto.so.3 so:libgcc_s.so.1 so:libssl.so.3 >>> synapse-bt*: Package size: 1.8 MB >>> synapse-bt*: Compressing data... >>> synapse-bt*: Create checksum... >>> synapse-bt*: Create synapse-bt-1.0-r4.apk >>> synapse-bt: Build complete at Tue, 23 May 2023 21:59:23 +0000 elapsed time 0h 4m 58s >>> synapse-bt: Cleaning up srcdir >>> synapse-bt: Cleaning up pkgdir >>> synapse-bt: Uninstalling dependencies... (1/4) Purging .makedepends-synapse-bt (20230523.215426) (2/4) Purging cargo (1.69.0-r10) (3/4) Purging openssl-dev (3.1.0-r5) (4/4) Purging cargo-auditable (0.6.1-r1) Executing busybox-1.36.0-r11.trigger OK: 901 MiB in 111 packages >>> synapse-bt: Updating the testing/armv7 repository index... >>> synapse-bt: Signing the index...