[INFO] cloning repository https://github.com/AndreaJohnMartin/icp-music-project
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AndreaJohnMartin/icp-music-project" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndreaJohnMartin%2Ficp-music-project", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndreaJohnMartin%2Ficp-music-project'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e3a4689b18ba32734286af8e2956bbedaa890162
[INFO] testing AndreaJohnMartin/icp-music-project against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndreaJohnMartin%2Ficp-music-project" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AndreaJohnMartin/icp-music-project
[INFO] finished tweaking git repo https://github.com/AndreaJohnMartin/icp-music-project
[INFO] tweaked toml for git repo https://github.com/AndreaJohnMartin/icp-music-project written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AndreaJohnMartin/icp-music-project on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AndreaJohnMartin/icp-music-project already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 621a7b267ca9bc479fda6ea50efd39cbfcdfa4a394e94bad639dca82d87fde19
[INFO] running `Command { std: "docker" "start" "-a" "621a7b267ca9bc479fda6ea50efd39cbfcdfa4a394e94bad639dca82d87fde19", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "621a7b267ca9bc479fda6ea50efd39cbfcdfa4a394e94bad639dca82d87fde19", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "621a7b267ca9bc479fda6ea50efd39cbfcdfa4a394e94bad639dca82d87fde19", kill_on_drop: false }`
[INFO] [stdout] 621a7b267ca9bc479fda6ea50efd39cbfcdfa4a394e94bad639dca82d87fde19
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5cfd378611c12d12a7257486bcec3d43329be9cb4031ced989401449dffd4014
[INFO] running `Command { std: "docker" "start" "-a" "5cfd378611c12d12a7257486bcec3d43329be9cb4031ced989401449dffd4014", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]    Compiling psm v0.1.26
[INFO] [stderr]    Compiling stacker v0.1.21
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling data-encoding v2.9.0
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling pretty v0.12.4
[INFO] [stderr]    Compiling ic-cdk-executor v0.1.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling leb128 v0.2.5
[INFO] [stderr]    Compiling slotmap v1.0.7
[INFO] [stderr]    Compiling ic0 v0.23.0
[INFO] [stderr]    Compiling ic-stable-structures v0.5.6
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling candid_derive v0.6.6
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling binread_derive v2.1.0
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling binread v2.2.0
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling ic_principal v0.1.1
[INFO] [stderr]    Compiling serde_bytes v0.11.17
[INFO] [stderr]    Compiling serde_tokenstream v0.2.2
[INFO] [stderr]    Compiling candid v0.10.14
[INFO] [stderr]    Compiling ic-cdk-macros v0.17.2
[INFO] [stderr]    Compiling ic-cdk v0.17.2
[INFO] [stderr]    Compiling ic-cdk-timers v0.11.0
[INFO] [stderr]    Compiling icp-music-platform-backend v0.1.0 (/opt/rustwide/workdir/src/icp-music-platform-backend)
[INFO] [stdout] warning: unused import: `ic_cdk::storage`
[INFO] [stdout]  --> src/icp-music-platform-backend/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ic_cdk::storage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> src/icp-music-platform-backend/src/lib.rs:580:22
[INFO] [stdout]     |
[INFO] [stdout] 580 |         if let Some((id, versions)) = tv.iter_mut().find(|(tid, _)| *tid == track_id) {
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1292:22
[INFO] [stdout]      |
[INFO] [stdout] 1292 |         if let Some((p, artists)) = fa.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1308:22
[INFO] [stdout]      |
[INFO] [stdout] 1308 |         if let Some((p, artists)) = fa.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1329:22
[INFO] [stdout]      |
[INFO] [stdout] 1329 |         if let Some((p, tracks)) = ft.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1345:22
[INFO] [stdout]      |
[INFO] [stdout] 1345 |         if let Some((p, tracks)) = ft.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2484:9
[INFO] [stdout]      |
[INFO] [stdout] 2484 |     let now = ic_cdk::api::time() / 1_000_000;
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `principal`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2666:29
[INFO] [stdout]      |
[INFO] [stdout] 2666 | fn get_user_id_by_principal(principal: Principal) -> Option<u64> {
[INFO] [stdout]      |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_principal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_rate_limit` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1709:4
[INFO] [stdout]      |
[INFO] [stdout] 1709 | fn check_rate_limit(principal: Principal, max_calls: u32, window_secs: u64) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `backend_add_banned_keyword` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2690:4
[INFO] [stdout]      |
[INFO] [stdout] 2690 | fn backend_add_banned_keyword(keyword: String) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `backend_remove_banned_keyword` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2703:4
[INFO] [stdout]      |
[INFO] [stdout] 2703 | fn backend_remove_banned_keyword(keyword: String) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `backend_promote_user_to_admin` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2714:4
[INFO] [stdout]      |
[INFO] [stdout] 2714 | fn backend_promote_user_to_admin(user_principal: Principal) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `backend_initialize_admin` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2726:4
[INFO] [stdout]      |
[INFO] [stdout] 2726 | fn backend_initialize_admin(admin_principal: Principal) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2673:17
[INFO] [stdout]      |
[INFO] [stdout] 2673 |     fn to_bytes(&self) -> Cow<[u8]> {
[INFO] [stdout]      |                 ^^^^^     --------- the lifetime gets resolved as `'_`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this lifetime flows to the output
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]      |
[INFO] [stdout] 2673 |     fn to_bytes(&self) -> Cow<'_, [u8]> {
[INFO] [stdout]      |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 55s
[INFO] running `Command { std: "docker" "inspect" "5cfd378611c12d12a7257486bcec3d43329be9cb4031ced989401449dffd4014", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5cfd378611c12d12a7257486bcec3d43329be9cb4031ced989401449dffd4014", kill_on_drop: false }`
[INFO] [stdout] 5cfd378611c12d12a7257486bcec3d43329be9cb4031ced989401449dffd4014
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e515f95353d29a60e18ef9b8cf59b6f19a54052ce61812c7f1921311b61d1d53
[INFO] running `Command { std: "docker" "start" "-a" "e515f95353d29a60e18ef9b8cf59b6f19a54052ce61812c7f1921311b61d1d53", kill_on_drop: false }`
[INFO] [stderr]    Compiling icp-music-platform-backend v0.1.0 (/opt/rustwide/workdir/src/icp-music-platform-backend)
[INFO] [stdout] warning: unused import: `ic_cdk::storage`
[INFO] [stdout]  --> src/icp-music-platform-backend/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ic_cdk::storage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> src/icp-music-platform-backend/src/lib.rs:580:22
[INFO] [stdout]     |
[INFO] [stdout] 580 |         if let Some((id, versions)) = tv.iter_mut().find(|(tid, _)| *tid == track_id) {
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1292:22
[INFO] [stdout]      |
[INFO] [stdout] 1292 |         if let Some((p, artists)) = fa.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1308:22
[INFO] [stdout]      |
[INFO] [stdout] 1308 |         if let Some((p, artists)) = fa.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1329:22
[INFO] [stdout]      |
[INFO] [stdout] 1329 |         if let Some((p, tracks)) = ft.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1345:22
[INFO] [stdout]      |
[INFO] [stdout] 1345 |         if let Some((p, tracks)) = ft.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stdout]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2484:9
[INFO] [stdout]      |
[INFO] [stdout] 2484 |     let now = ic_cdk::api::time() / 1_000_000;
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `principal`
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2666:29
[INFO] [stdout]      |
[INFO] [stdout] 2666 | fn get_user_id_by_principal(principal: Principal) -> Option<u64> {
[INFO] [stdout]      |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_principal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_rate_limit` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:1709:4
[INFO] [stdout]      |
[INFO] [stdout] 1709 | fn check_rate_limit(principal: Principal, max_calls: u32, window_secs: u64) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `backend_add_banned_keyword` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2690:4
[INFO] [stdout]      |
[INFO] [stdout] 2690 | fn backend_add_banned_keyword(keyword: String) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `backend_remove_banned_keyword` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2703:4
[INFO] [stdout]      |
[INFO] [stdout] 2703 | fn backend_remove_banned_keyword(keyword: String) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `backend_promote_user_to_admin` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2714:4
[INFO] [stdout]      |
[INFO] [stdout] 2714 | fn backend_promote_user_to_admin(user_principal: Principal) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `backend_initialize_admin` is never used
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2726:4
[INFO] [stdout]      |
[INFO] [stdout] 2726 | fn backend_initialize_admin(admin_principal: Principal) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/icp-music-platform-backend/src/lib.rs:2673:17
[INFO] [stdout]      |
[INFO] [stdout] 2673 |     fn to_bytes(&self) -> Cow<[u8]> {
[INFO] [stdout]      |                 ^^^^^     --------- the lifetime gets resolved as `'_`
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this lifetime flows to the output
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]      |
[INFO] [stdout] 2673 |     fn to_bytes(&self) -> Cow<'_, [u8]> {
[INFO] [stdout]      |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.26s
[INFO] running `Command { std: "docker" "inspect" "e515f95353d29a60e18ef9b8cf59b6f19a54052ce61812c7f1921311b61d1d53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e515f95353d29a60e18ef9b8cf59b6f19a54052ce61812c7f1921311b61d1d53", kill_on_drop: false }`
[INFO] [stdout] e515f95353d29a60e18ef9b8cf59b6f19a54052ce61812c7f1921311b61d1d53
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 44c673be6109bea7ffd5684669aee16507d14bd3325b83f34e1b036f3e417511
[INFO] running `Command { std: "docker" "start" "-a" "44c673be6109bea7ffd5684669aee16507d14bd3325b83f34e1b036f3e417511", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `ic_cdk::storage`
[INFO] [stderr]  --> src/icp-music-platform-backend/src/lib.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use ic_cdk::storage;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `id`
[INFO] [stderr]    --> src/icp-music-platform-backend/src/lib.rs:580:22
[INFO] [stderr]     |
[INFO] [stderr] 580 |         if let Some((id, versions)) = tv.iter_mut().find(|(tid, _)| *tid == track_id) {
[INFO] [stderr]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `p`
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:1292:22
[INFO] [stderr]      |
[INFO] [stderr] 1292 |         if let Some((p, artists)) = fa.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stderr]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `p`
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:1308:22
[INFO] [stderr]      |
[INFO] [stderr] 1308 |         if let Some((p, artists)) = fa.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stderr]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `p`
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:1329:22
[INFO] [stderr]      |
[INFO] [stderr] 1329 |         if let Some((p, tracks)) = ft.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stderr]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `p`
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:1345:22
[INFO] [stderr]      |
[INFO] [stderr] 1345 |         if let Some((p, tracks)) = ft.iter_mut().find(|(p, _)| *p == principal) {
[INFO] [stderr]      |                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `now`
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:2484:9
[INFO] [stderr]      |
[INFO] [stderr] 2484 |     let now = ic_cdk::api::time() / 1_000_000;
[INFO] [stderr]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `principal`
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:2666:29
[INFO] [stderr]      |
[INFO] [stderr] 2666 | fn get_user_id_by_principal(principal: Principal) -> Option<u64> {
[INFO] [stderr]      |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_principal`
[INFO] [stderr] 
[INFO] [stderr] warning: function `check_rate_limit` is never used
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:1709:4
[INFO] [stderr]      |
[INFO] [stderr] 1709 | fn check_rate_limit(principal: Principal, max_calls: u32, window_secs: u64) -> bool {
[INFO] [stderr]      |    ^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `backend_add_banned_keyword` is never used
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:2690:4
[INFO] [stderr]      |
[INFO] [stderr] 2690 | fn backend_add_banned_keyword(keyword: String) -> bool {
[INFO] [stderr]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `backend_remove_banned_keyword` is never used
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:2703:4
[INFO] [stderr]      |
[INFO] [stderr] 2703 | fn backend_remove_banned_keyword(keyword: String) -> bool {
[INFO] [stderr]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `backend_promote_user_to_admin` is never used
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:2714:4
[INFO] [stderr]      |
[INFO] [stderr] 2714 | fn backend_promote_user_to_admin(user_principal: Principal) -> bool {
[INFO] [stderr]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `backend_initialize_admin` is never used
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:2726:4
[INFO] [stderr]      |
[INFO] [stderr] 2726 | fn backend_initialize_admin(admin_principal: Principal) -> bool {
[INFO] [stderr]      |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/icp-music-platform-backend/src/lib.rs:2673:17
[INFO] [stderr]      |
[INFO] [stderr] 2673 |     fn to_bytes(&self) -> Cow<[u8]> {
[INFO] [stderr]      |                 ^^^^^     --------- the lifetime gets resolved as `'_`
[INFO] [stderr]      |                 |
[INFO] [stderr]      |                 this lifetime flows to the output
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 2673 |     fn to_bytes(&self) -> Cow<'_, [u8]> {
[INFO] [stderr]      |                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: `icp-music-platform-backend` (lib test) generated 14 warnings (run `cargo fix --lib -p icp-music-platform-backend --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/icp_music_platform_backend-0c7272eaada7ff23)
[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" "44c673be6109bea7ffd5684669aee16507d14bd3325b83f34e1b036f3e417511", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "44c673be6109bea7ffd5684669aee16507d14bd3325b83f34e1b036f3e417511", kill_on_drop: false }`
[INFO] [stdout] 44c673be6109bea7ffd5684669aee16507d14bd3325b83f34e1b036f3e417511
