[INFO] cloning repository https://github.com/parsa-mirsaeed/35c8f3cf6db363100f4e880c [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/parsa-mirsaeed/35c8f3cf6db363100f4e880c" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fparsa-mirsaeed%2F35c8f3cf6db363100f4e880c", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fparsa-mirsaeed%2F35c8f3cf6db363100f4e880c'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8f21aa2a80be3353d4e3eeab5c83a630f3dc477d [INFO] checking parsa-mirsaeed/35c8f3cf6db363100f4e880c against 65b20a97de33e9e59992793a144aef2950c48c76 for pr-154715 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fparsa-mirsaeed%2F35c8f3cf6db363100f4e880c" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/parsa-mirsaeed/35c8f3cf6db363100f4e880c [INFO] finished tweaking git repo https://github.com/parsa-mirsaeed/35c8f3cf6db363100f4e880c [INFO] tweaked toml for git repo https://github.com/parsa-mirsaeed/35c8f3cf6db363100f4e880c written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/parsa-mirsaeed/35c8f3cf6db363100f4e880c on toolchain 65b20a97de33e9e59992793a144aef2950c48c76 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+65b20a97de33e9e59992793a144aef2950c48c76" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/parsa-mirsaeed/35c8f3cf6db363100f4e880c 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" "+65b20a97de33e9e59992793a144aef2950c48c76" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] b42c3d2ad844eedf32b52f6f820f01f599dc4328caef31155b39bf168c34603a [INFO] running `Command { std: "docker" "start" "b42c3d2ad844eedf32b52f6f820f01f599dc4328caef31155b39bf168c34603a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b42c3d2ad844eedf32b52f6f820f01f599dc4328caef31155b39bf168c34603a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b42c3d2ad844eedf32b52f6f820f01f599dc4328caef31155b39bf168c34603a" "/opt/rustwide/cargo-home/bin/cargo" "+65b20a97de33e9e59992793a144aef2950c48c76" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b42c3d2ad844eedf32b52f6f820f01f599dc4328caef31155b39bf168c34603a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b42c3d2ad844eedf32b52f6f820f01f599dc4328caef31155b39bf168c34603a" "/opt/rustwide/cargo-home/bin/cargo" "+65b20a97de33e9e59992793a144aef2950c48c76" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Checking cfg-if v1.0.4 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Checking memchr v2.7.6 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking slab v0.4.11 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Checking stable_deref_trait v1.2.1 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.105 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Checking lock_api v0.4.14 [INFO] [stderr] Checking dioxus-core-types v0.7.2 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Checking percent-encoding v2.3.2 [INFO] [stderr] Checking libloading v0.8.9 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling bumpalo v3.19.0 [INFO] [stderr] Compiling zerocopy v0.8.28 [INFO] [stderr] Checking writeable v0.6.2 [INFO] [stderr] Checking litemap v0.8.1 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling icu_properties_data v2.1.1 [INFO] [stderr] Checking rustc-hash v2.1.1 [INFO] [stderr] Compiling httparse v1.10.1 [INFO] [stderr] Checking longest-increasing-subsequence v0.1.0 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling find-msvc-tools v0.1.5 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling proc-macro2-diagnostics v0.10.1 [INFO] [stderr] Checking tower-service v0.3.3 [INFO] [stderr] Checking form_urlencoded v1.2.2 [INFO] [stderr] Checking mime v0.3.17 [INFO] [stderr] Checking utf8_iter v1.0.4 [INFO] [stderr] Compiling wasm-bindgen v0.2.105 [INFO] [stderr] Checking bitflags v2.10.0 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Checking zeroize v1.8.2 [INFO] [stderr] Checking sync_wrapper v1.0.2 [INFO] [stderr] Checking dioxus-cli-config v0.7.2 [INFO] [stderr] Compiling cc v1.2.47 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking tower-layer v0.3.3 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Checking aho-corasick v1.1.4 [INFO] [stderr] Compiling time-core v0.1.6 [INFO] [stderr] Checking rustls-pki-types v1.13.0 [INFO] [stderr] Checking try-lock v0.2.5 [INFO] [stderr] Checking log v0.4.28 [INFO] [stderr] Checking cpufeatures v0.2.17 [INFO] [stderr] Checking regex-syntax v0.8.8 [INFO] [stderr] Compiling convert_case v0.8.0 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Compiling rustls v0.23.35 [INFO] [stderr] Checking atomic-waker v1.1.2 [INFO] [stderr] Checking deranged v0.5.5 [INFO] [stderr] Checking want v0.3.1 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Checking keyboard-types v0.7.0 [INFO] [stderr] Compiling time-macros v0.2.24 [INFO] [stderr] Compiling cookie v0.18.1 [INFO] [stderr] Checking encoding_rs v0.8.35 [INFO] [stderr] Checking socket2 v0.6.1 [INFO] [stderr] Checking parking_lot v0.12.5 [INFO] [stderr] Checking mio v1.1.0 [INFO] [stderr] Compiling const_format_proc_macros v0.2.34 [INFO] [stderr] Checking memmap2 v0.9.9 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Compiling lazy-js-bundle v0.7.2 [INFO] [stderr] Checking euclid v0.22.11 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking crypto-common v0.1.7 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling dioxus-document v0.7.2 [INFO] [stderr] Compiling multer v3.1.0 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking ipnet v2.11.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking utf-8 v0.7.6 [INFO] [stderr] Checking ciborium-io v0.2.2 [INFO] [stderr] Checking psl-types v2.0.11 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Checking const_format v0.2.35 [INFO] [stderr] Checking data-encoding v2.9.0 [INFO] [stderr] Compiling litrs v1.0.0 [INFO] [stderr] Checking webpki-roots v1.0.4 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Checking time v0.3.44 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Checking iri-string v0.7.9 [INFO] [stderr] Checking tinyvec_macros v0.1.1 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Checking tinyvec v1.10.0 [INFO] [stderr] Checking charset v0.1.5 [INFO] [stderr] Checking serde_path_to_error v0.1.20 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Checking thread_local v1.1.9 [INFO] [stderr] Checking regex-automata v0.4.13 [INFO] [stderr] Checking matchit v0.8.4 [INFO] [stderr] Compiling xxhash-rust v0.8.15 [INFO] [stderr] Checking httpdate v1.0.3 [INFO] [stderr] Compiling dunce v1.0.5 [INFO] [stderr] Checking inventory v0.3.21 [INFO] [stderr] Compiling base16 v0.2.1 [INFO] [stderr] Checking unicode-normalization v0.1.25 [INFO] [stderr] Checking content_disposition v0.4.0 [INFO] [stderr] Checking send_wrapper v0.6.0 [INFO] [stderr] Checking const-str v0.7.0 [INFO] [stderr] Checking unicode-bidi v0.3.18 [INFO] [stderr] Checking iana-time-zone v0.1.64 [INFO] [stderr] Compiling dioxus-config-macro v0.7.2 [INFO] [stderr] Compiling api v0.2.0 (/opt/rustwide/workdir/packages/api) [INFO] [stderr] Checking dioxus-config-macros v0.7.2 [INFO] [stderr] Compiling document-features v0.2.12 [INFO] [stderr] warning: api@0.2.0: EDUTALENT_DIAGNOSTIC_BEGIN src/db/authorized_pool.rs [INFO] [stderr] warning: api@0.2.0: EDUTALENT_DIAGNOSTIC_MISSING src/db/authorized_pool.rs: No such file or directory (os error 2) [INFO] [stderr] warning: api@0.2.0: EDUTALENT_DIAGNOSTIC_END src/db/authorized_pool.rs [INFO] [stderr] warning: api@0.2.0: EDUTALENT_DIAGNOSTIC_BEGIN src/bin/knowledge-ingestion-worker.rs [INFO] [stderr] warning: api@0.2.0: EDUTALENT_DIAGNOSTIC_MISSING src/bin/knowledge-ingestion-worker.rs: No such file or directory (os error 2) [INFO] [stderr] warning: api@0.2.0: EDUTALENT_DIAGNOSTIC_END src/bin/knowledge-ingestion-worker.rs [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking matchers v0.2.0 [INFO] [stderr] Checking regex v1.12.2 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.105 [INFO] [stderr] Compiling darling_core v0.21.3 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling macro-string v0.1.4 [INFO] [stderr] Compiling dioxus-rsx v0.7.2 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Compiling zerocopy-derive v0.8.28 [INFO] [stderr] Compiling warnings-macro v0.2.0 [INFO] [stderr] Compiling const-serialize-macro v0.7.2 [INFO] [stderr] Checking rustls-webpki v0.103.13 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Compiling dioxus-html-internal-macro v0.7.2 [INFO] [stderr] Checking pin-project v1.1.10 [INFO] [stderr] Compiling async-stream-impl v0.3.6 [INFO] [stderr] Compiling derive_more-impl v2.0.1 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Compiling dioxus-stores-macro v0.7.2 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Compiling dioxus-router-macro v0.7.2 [INFO] [stderr] Checking yoke v0.8.1 [INFO] [stderr] Compiling dioxus-fullstack-macro v0.7.2 [INFO] [stderr] Checking generational-box v0.7.2 [INFO] [stderr] Checking warnings v0.2.1 [INFO] [stderr] Checking zerovec v0.11.5 [INFO] [stderr] Checking zerotrie v0.2.3 [INFO] [stderr] Compiling dioxus-core-macro v0.7.2 [INFO] [stderr] Checking async-stream v0.3.6 [INFO] [stderr] Checking tracing-subscriber v0.3.20 [INFO] [stderr] Checking tinystr v0.8.2 [INFO] [stderr] Checking potential_utf v0.1.4 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.105 [INFO] [stderr] Checking icu_collections v2.1.1 [INFO] [stderr] Checking icu_locale_core v2.1.1 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling darling_macro v0.21.3 [INFO] [stderr] Compiling validator_derive v0.18.2 [INFO] [stderr] Compiling darling v0.21.3 [INFO] [stderr] Compiling enumset_derive v0.14.0 [INFO] [stderr] Checking dioxus-logger v0.7.2 [INFO] [stderr] Checking derive_more v2.0.1 [INFO] [stderr] Checking icu_provider v2.1.1 [INFO] [stderr] Checking js-sys v0.3.82 [INFO] [stderr] Checking icu_properties v2.1.1 [INFO] [stderr] Checking icu_normalizer v2.1.1 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking half v2.7.1 [INFO] [stderr] Checking enumset v1.1.10 [INFO] [stderr] Compiling const-serialize v0.7.2 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking bytes v1.11.0 [INFO] [stderr] Checking subsecond-types v0.7.2 [INFO] [stderr] Checking uuid v1.18.1 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking serde_qs v0.15.0 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Compiling manganis-core v0.7.2 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking subsecond v0.7.2 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking cfb v0.7.3 [INFO] [stderr] Compiling manganis-macro v0.7.2 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking dioxus-core v0.7.2 [INFO] [stderr] Checking http v1.3.1 [INFO] [stderr] Checking tokio v1.48.0 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Checking url v2.5.7 [INFO] [stderr] Checking publicsuffix v2.3.0 [INFO] [stderr] Checking infer v0.19.0 [INFO] [stderr] Checking manganis v0.7.2 [INFO] [stderr] Checking http-body v1.0.1 [INFO] [stderr] Checking tungstenite v0.27.0 [INFO] [stderr] Checking headers-core v0.3.0 [INFO] [stderr] Checking headers v0.4.1 [INFO] [stderr] Checking http-body-util v0.1.3 [INFO] [stderr] Checking cookie_store v0.21.1 [INFO] [stderr] Checking validator v0.18.1 [INFO] [stderr] Checking axum-core v0.5.5 [INFO] [stderr] Checking parsidate v1.7.1 [INFO] [stderr] Checking async-tungstenite v0.31.0 [INFO] [stderr] Checking web-sys v0.3.82 [INFO] [stderr] Checking wasm-bindgen-futures v0.4.55 [INFO] [stderr] Checking gloo-timers v0.3.0 [INFO] [stderr] Checking dioxus-signals v0.7.2 [INFO] [stderr] Checking dioxus-history v0.7.2 [INFO] [stderr] Checking dioxus-devtools-types v0.7.2 [INFO] [stderr] Checking dioxus-hooks v0.7.2 [INFO] [stderr] Checking dioxus-devtools v0.7.2 [INFO] [stderr] Checking dioxus-stores v0.7.2 [INFO] [stderr] Checking dioxus-html v0.7.2 [INFO] [stderr] Checking tower v0.5.2 [INFO] [stderr] Checking hyper v1.8.1 [INFO] [stderr] Checking tokio-rustls v0.26.4 [INFO] [stderr] Checking tokio-util v0.7.17 [INFO] [stderr] Checking dioxus-asset-resolver v0.7.2 [INFO] [stderr] Checking dioxus-router v0.7.2 [INFO] [stderr] Checking hyper-util v0.1.18 [INFO] [stderr] Checking tower-http v0.6.6 [INFO] [stderr] Checking axum v0.8.7 [INFO] [stderr] Checking dioxus-fullstack-core v0.7.2 [INFO] [stderr] Checking hyper-rustls v0.27.7 [INFO] [stderr] Checking reqwest v0.12.24 [INFO] [stderr] Checking gloo-utils v0.2.0 [INFO] [stderr] Checking wasm-streams v0.4.2 [INFO] [stderr] Checking gloo-net v0.6.0 [INFO] [stderr] Checking gloo-storage v0.3.0 [INFO] [stderr] Checking gloo-net v0.5.0 [INFO] [stderr] Checking dioxus-fullstack v0.7.2 [INFO] [stderr] Checking dioxus v0.7.2 [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/models/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub use student::*; [INFO] [stdout] | ^^^^^^^^^^ the name `UserInfo` in the type namespace is first re-exported here [INFO] [stdout] ... [INFO] [stdout] 41 | pub use audit_log::*; [INFO] [stdout] | ------------ but the name `UserInfo` in the type namespace is also re-exported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ambiguous_glob_reexports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/models/mod.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | pub use assignment::*; [INFO] [stdout] | ^^^^^^^^^^^^^ the name `TeacherInfo` in the type namespace is first re-exported here [INFO] [stdout] ... [INFO] [stdout] 38 | pub use report::*; [INFO] [stdout] | --------- but the name `TeacherInfo` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/models/mod.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | pub use assignment::*; [INFO] [stdout] | ^^^^^^^^^^^^^ the name `ClassSectionInfo` in the type namespace is first re-exported here [INFO] [stdout] ... [INFO] [stdout] 35 | pub use teaching_assignment::*; [INFO] [stdout] | ---------------------- but the name `ClassSectionInfo` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/models/mod.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub use enrollment::*; [INFO] [stdout] | ^^^^^^^^^^^^^ the name `StudentInfo` in the type namespace is first re-exported here [INFO] [stdout] ... [INFO] [stdout] 38 | pub use report::*; [INFO] [stdout] | --------- but the name `StudentInfo` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `user` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `user` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `student` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `student` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `assignment` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `assignment` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `submission` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `submission` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `invite` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `invite` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `school` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `school` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `subject` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `subject` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `class_section` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `class_section` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `UserInfo` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `UserInfo` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `User` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `User` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Student` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Student` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Assignment` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Assignment` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Submission` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Submission` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Invite` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Invite` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `School` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `School` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Subject` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Subject` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `ClassSection` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `ClassSection` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> packages/api/src/server_functions/admin_functions.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::dioxus_fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/admin_functions.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dioxus::fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/auth_functions.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::dioxus_fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/class_functions.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ClassSectionId`, `SchoolId`, and `SubjectId` [INFO] [stdout] --> packages/api/src/server_functions/class_functions.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::domain::{ClassSectionId, SchoolId, SubjectId}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ClassSectionWithSubject` and `CreateClassSectionRequest` [INFO] [stdout] --> packages/api/src/server_functions/class_functions.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::models::{CreateClassSectionRequest, ClassSectionWithSubject}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dioxus::fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/notification_functions.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ProfileChangeRequestId`, `SchoolId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:1:32 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::domain::{PcrStatus, ProfileChangeRequestId, SchoolId, UserId}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CreateProfileChangeRequestRequest` and `DecideProfileChangeRequestRequest` [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | CreateProfileChangeRequestRequest, DecideProfileChangeRequestRequest, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/models/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub use student::*; [INFO] [stdout] | ^^^^^^^^^^ the name `UserInfo` in the type namespace is first re-exported here [INFO] [stdout] ... [INFO] [stdout] 41 | pub use audit_log::*; [INFO] [stdout] | ------------ but the name `UserInfo` in the type namespace is also re-exported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ambiguous_glob_reexports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/models/mod.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | pub use assignment::*; [INFO] [stdout] | ^^^^^^^^^^^^^ the name `TeacherInfo` in the type namespace is first re-exported here [INFO] [stdout] ... [INFO] [stdout] 38 | pub use report::*; [INFO] [stdout] | --------- but the name `TeacherInfo` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/models/mod.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | pub use assignment::*; [INFO] [stdout] | ^^^^^^^^^^^^^ the name `ClassSectionInfo` in the type namespace is first re-exported here [INFO] [stdout] ... [INFO] [stdout] 35 | pub use teaching_assignment::*; [INFO] [stdout] | ---------------------- but the name `ClassSectionInfo` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/models/mod.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub use enrollment::*; [INFO] [stdout] | ^^^^^^^^^^^^^ the name `StudentInfo` in the type namespace is first re-exported here [INFO] [stdout] ... [INFO] [stdout] 38 | pub use report::*; [INFO] [stdout] | --------- but the name `StudentInfo` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `user` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `user` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `student` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `student` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `assignment` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `assignment` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `submission` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `submission` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `invite` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `invite` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SchoolId`, `StudentId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/student_functions.rs:3:21 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::domain::{SchoolId, StudentId, UserId}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `school` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `school` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `subject` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `subject` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `class_section` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `class_section` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `UserInfo` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `UserInfo` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `User` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `User` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Student` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Student` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Assignment` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Assignment` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Submission` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Submission` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Invite` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Invite` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `School` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `School` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `Subject` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `Subject` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> packages/api/src/lib.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use domain::*; [INFO] [stdout] | ^^^^^^^^^ the name `ClassSection` in the type namespace is first re-exported here [INFO] [stdout] 12 | pub use models::*; [INFO] [stdout] | --------- but the name `ClassSection` in the type namespace is also re-exported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CreateSubjectRequest` and `UpdateSubjectRequest` [INFO] [stdout] --> packages/api/src/server_functions/subject_functions.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::models::{CreateSubjectRequest, Subject, UpdateSubjectRequest}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> packages/api/src/server_functions/admin_functions.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::dioxus_fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/admin_functions.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dioxus::fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/submission_functions.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ParentId`, `RoleId`, `SchoolId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::domain::{UserId, SchoolId, RoleId, ParentId}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `validate_email_uniqueness` and `validate_uuid_exists` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:6:42 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::server_functions::form_data::{validate_email_uniqueness, validate_uuid_exists}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AdminCreateParentRequest`, `AdminCreateStudentRequest`, and `AdminCreateTeacherRequest` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::models::user::{AdminCreateStudentRequest, AdminCreateTeacherRequest, AdminCreateParentRequest}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RoleId`, `SchoolId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::domain::{UserId, RoleId, SchoolId}; [INFO] [stdout] | ^^^^^^ ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::dioxus_fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/user_management.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RoleId`, `SchoolId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/user_management.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::domain::{UserId, SchoolId, RoleId}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dioxus::fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/auth_functions.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::dioxus_fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/class_functions.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ClassSectionId`, `SchoolId`, and `SubjectId` [INFO] [stdout] --> packages/api/src/server_functions/class_functions.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::domain::{ClassSectionId, SchoolId, SubjectId}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ClassSectionWithSubject` and `CreateClassSectionRequest` [INFO] [stdout] --> packages/api/src/server_functions/class_functions.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::models::{CreateClassSectionRequest, ClassSectionWithSubject}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dioxus::fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/notification_functions.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ProfileChangeRequestId`, `SchoolId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:1:32 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::domain::{PcrStatus, ProfileChangeRequestId, SchoolId, UserId}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CreateProfileChangeRequestRequest` and `DecideProfileChangeRequestRequest` [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | CreateProfileChangeRequestRequest, DecideProfileChangeRequestRequest, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SchoolId`, `StudentId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/student_functions.rs:3:21 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::domain::{SchoolId, StudentId, UserId}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CreateSubjectRequest` and `UpdateSubjectRequest` [INFO] [stdout] --> packages/api/src/server_functions/subject_functions.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::models::{CreateSubjectRequest, Subject, UpdateSubjectRequest}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dioxus::fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/submission_functions.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ParentId`, `RoleId`, `SchoolId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::domain::{UserId, SchoolId, RoleId, ParentId}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `validate_email_uniqueness` and `validate_uuid_exists` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:6:42 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::server_functions::form_data::{validate_email_uniqueness, validate_uuid_exists}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AdminCreateParentRequest`, `AdminCreateStudentRequest`, and `AdminCreateTeacherRequest` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::models::user::{AdminCreateStudentRequest, AdminCreateTeacherRequest, AdminCreateParentRequest}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> packages/api/src/server_functions/user_creation.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RoleId`, `SchoolId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::domain::{UserId, RoleId, SchoolId}; [INFO] [stdout] | ^^^^^^ ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::dioxus_fullstack::extract` [INFO] [stdout] --> packages/api/src/server_functions/user_management.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RoleId`, `SchoolId`, and `UserId` [INFO] [stdout] --> packages/api/src/server_functions/user_management.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::domain::{UserId, SchoolId, RoleId}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/admin_functions.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/auth_functions.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/class_functions.rs:4:30 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/admin_functions.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/notification_functions.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/submission_functions.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/auth_functions.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated unit struct `server_functions::user_functions::_::GetUserById`: Dioxus server functions no longer generate a struct for the server function. The function itself is used directly. [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:45:10 [INFO] [stdout] | [INFO] [stdout] 45 | #[server(GetUserById, endpoint = "users/get_by_id")] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated unit struct `server_functions::user_functions::_::CreateUser`: Dioxus server functions no longer generate a struct for the server function. The function itself is used directly. [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:68:10 [INFO] [stdout] | [INFO] [stdout] 68 | #[server(CreateUser, endpoint = "users/create")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated unit struct `server_functions::user_functions::_::UpdateUser`: Dioxus server functions no longer generate a struct for the server function. The function itself is used directly. [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:87:10 [INFO] [stdout] | [INFO] [stdout] 87 | #[server(UpdateUser, endpoint = "users/update")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated unit struct `server_functions::user_functions::_::DeleteUser`: Dioxus server functions no longer generate a struct for the server function. The function itself is used directly. [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:107:10 [INFO] [stdout] | [INFO] [stdout] 107 | #[server(DeleteUser, endpoint = "users/delete")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/class_functions.rs:4:30 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/user_management.rs:2:30 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/notification_functions.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/submission_functions.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | use dioxus::fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated unit struct `server_functions::user_functions::_::GetUserById`: Dioxus server functions no longer generate a struct for the server function. The function itself is used directly. [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:45:10 [INFO] [stdout] | [INFO] [stdout] 45 | #[server(GetUserById, endpoint = "users/get_by_id")] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated unit struct `server_functions::user_functions::_::CreateUser`: Dioxus server functions no longer generate a struct for the server function. The function itself is used directly. [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:68:10 [INFO] [stdout] | [INFO] [stdout] 68 | #[server(CreateUser, endpoint = "users/create")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated unit struct `server_functions::user_functions::_::UpdateUser`: Dioxus server functions no longer generate a struct for the server function. The function itself is used directly. [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:87:10 [INFO] [stdout] | [INFO] [stdout] 87 | #[server(UpdateUser, endpoint = "users/update")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated unit struct `server_functions::user_functions::_::DeleteUser`: Dioxus server functions no longer generate a struct for the server function. The function itself is used directly. [INFO] [stdout] --> packages/api/src/server_functions/user_functions.rs:107:10 [INFO] [stdout] | [INFO] [stdout] 107 | #[server(DeleteUser, endpoint = "users/delete")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `dioxus::dioxus_fullstack::extract`: Use FullstackContext::extract instead [INFO] [stdout] --> packages/api/src/server_functions/user_management.rs:2:30 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::dioxus_fullstack::extract; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super` [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 276 | use super::*; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unavailable` is never used [INFO] [stdout] --> packages/api/src/server_functions/class_section_functions.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn unavailable() -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unavailable` is never used [INFO] [stdout] --> packages/api/src/server_functions/invite_functions.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn unavailable() -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_CONTEXT_KEY_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/knowledge_functions.rs:30:7 [INFO] [stdout] | [INFO] [stdout] 30 | const MAX_CONTEXT_KEY_BYTES: usize = 255; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_SEARCH_QUERY_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/knowledge_functions.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | const MAX_SEARCH_QUERY_BYTES: usize = 8_000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_context` is never used [INFO] [stdout] --> packages/api/src/server_functions/knowledge_functions.rs:438:4 [INFO] [stdout] | [INFO] [stdout] 438 | fn validate_context(scope: &str, key: &str) -> Result<(), ServerFnError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_submission` is never used [INFO] [stdout] --> packages/api/src/server_functions/knowledge_functions.rs:456:4 [INFO] [stdout] | [INFO] [stdout] 456 | fn validate_submission(request: &ManagerKnowledgeSubmissionRequest) -> Result<(), ServerFnError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_NOTIFICATION_LIMIT` is never used [INFO] [stdout] --> packages/api/src/server_functions/notification_functions.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const DEFAULT_NOTIFICATION_LIMIT: i64 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_NOTIFICATION_LIMIT` is never used [INFO] [stdout] --> packages/api/src/server_functions/notification_functions.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const MAX_NOTIFICATION_LIMIT: i64 = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_NOTIFICATION_OFFSET` is never used [INFO] [stdout] --> packages/api/src/server_functions/notification_functions.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const MAX_NOTIFICATION_OFFSET: i64 = 10_000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bounded_limit` is never used [INFO] [stdout] --> packages/api/src/server_functions/notification_functions.rs:182:4 [INFO] [stdout] | [INFO] [stdout] 182 | fn bounded_limit(limit: Option) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROFILE_DIFF_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const MAX_PROFILE_DIFF_BYTES: usize = 16_384; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROFILE_NAME_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const MAX_PROFILE_NAME_BYTES: usize = 200; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROFILE_EMAIL_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const MAX_PROFILE_EMAIL_BYTES: usize = 320; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_SUBMISSION_CONTENT_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/submission_functions.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const MAX_SUBMISSION_CONTENT_BYTES: usize = 100_000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unavailable` is never used [INFO] [stdout] --> packages/api/src/server_functions/class_section_functions.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn unavailable() -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unavailable` is never used [INFO] [stdout] --> packages/api/src/server_functions/invite_functions.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn unavailable() -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_SEARCH_QUERY_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/knowledge_functions.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | const MAX_SEARCH_QUERY_BYTES: usize = 8_000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_submission` is never used [INFO] [stdout] --> packages/api/src/server_functions/knowledge_functions.rs:456:4 [INFO] [stdout] | [INFO] [stdout] 456 | fn validate_submission(request: &ManagerKnowledgeSubmissionRequest) -> Result<(), ServerFnError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_NOTIFICATION_OFFSET` is never used [INFO] [stdout] --> packages/api/src/server_functions/notification_functions.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const MAX_NOTIFICATION_OFFSET: i64 = 10_000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROFILE_DIFF_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const MAX_PROFILE_DIFF_BYTES: usize = 16_384; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROFILE_NAME_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const MAX_PROFILE_NAME_BYTES: usize = 200; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROFILE_EMAIL_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/profile_change_requests.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const MAX_PROFILE_EMAIL_BYTES: usize = 320; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_SUBMISSION_CONTENT_BYTES` is never used [INFO] [stdout] --> packages/api/src/server_functions/submission_functions.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const MAX_SUBMISSION_CONTENT_BYTES: usize = 100_000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ui v0.1.0 (/opt/rustwide/workdir/packages/ui) [INFO] [stderr] Checking web v0.3.0 (/opt/rustwide/workdir/packages/web) [INFO] [stdout] warning: unused import: `AccessControl` [INFO] [stdout] --> packages/web/src/application/routing_service.rs:1:21 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::domain::{AccessControl, SystemRole, User}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `validation::*` [INFO] [stdout] --> packages/web/src/components/mod.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use validation::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `auth::*` [INFO] [stdout] --> packages/web/src/components/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use auth::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `skeleton::*` [INFO] [stdout] --> packages/web/src/components/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use skeleton::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `validation::*` [INFO] [stdout] --> packages/web/src/utils/mod.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub use validation::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `auth::*` [INFO] [stdout] --> packages/web/src/utils/mod.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use auth::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cache::*` [INFO] [stdout] --> packages/web/src/utils/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use cache::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `login::LoginPage` [INFO] [stdout] --> packages/web/src/views/mod.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub use login::LoginPage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error_boundary::*` [INFO] [stdout] --> packages/web/src/views/role_based/components/mod.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use error_boundary::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `loading_spinner::*` [INFO] [stdout] --> packages/web/src/views/role_based/components/mod.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub use loading_spinner::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `navigation::*` [INFO] [stdout] --> packages/web/src/views/role_based/components/mod.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub use navigation::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `role_guard::*` [INFO] [stdout] --> packages/web/src/views/role_based/components/mod.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub use role_guard::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `children::*` [INFO] [stdout] --> packages/web/src/views/role_based/parent/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use children::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `communication::*` [INFO] [stdout] --> packages/web/src/views/role_based/parent/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use communication::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reports::*` [INFO] [stdout] --> packages/web/src/views/role_based/parent/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use reports::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LocalStorage` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_creation.rs:4:20 [INFO] [stdout] | [INFO] [stdout] 4 | use gloo_storage::{LocalStorage, Storage}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SkeletonCard` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_management.rs:1:35 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::components::skeleton::{SkeletonCard, SkeletonTable}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LocalStorage` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_management.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | use gloo_storage::{LocalStorage, Storage}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SchoolManagerOverviewSection` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/mod.rs:12:45 [INFO] [stdout] | [INFO] [stdout] 12 | pub use dashboard::{SchoolManagerDashboard, SchoolManagerOverviewSection}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `common::*` [INFO] [stdout] --> packages/web/src/views/role_based/shared/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use common::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `charts::*` [INFO] [stdout] --> packages/web/src/views/role_based/shared/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use charts::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tables::*` [INFO] [stdout] --> packages/web/src/views/role_based/shared/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use tables::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `forms::*` [INFO] [stdout] --> packages/web/src/views/role_based/shared/mod.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub use forms::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ClassAssignmentInfo`, `ClassGradeInfo`, and `ClassMaterialInfo` [INFO] [stdout] --> packages/web/src/views/role_based/student/classes.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | ClassAssignmentInfo, ClassGradeInfo, ClassMaterialInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `StudentSubmission` [INFO] [stdout] --> packages/web/src/views/role_based/student/assignments.rs:9:109 [INFO] [stdout] | [INFO] [stdout] 9 | use api::server_functions::submission_functions::{submit_student_assignment, get_submission_for_assignment, StudentSubmission}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `classes::*` [INFO] [stdout] --> packages/web/src/views/role_based/student/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use classes::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `assignments::*` [INFO] [stdout] --> packages/web/src/views/role_based/student/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use assignments::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `grades::*` [INFO] [stdout] --> packages/web/src/views/role_based/student/mod.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub use grades::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `schedule::*` [INFO] [stdout] --> packages/web/src/views/role_based/student/mod.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use schedule::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TeacherAssignmentInfo` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/assignments.rs:8:75 [INFO] [stdout] | [INFO] [stdout] 8 | use api::server_functions::dashboard_functions::{get_teacher_assignments, TeacherAssignmentInfo}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AssignmentResponse`, `PersonalizedAssignmentResponse`, `get_all_assignments`, and `personalize_for_student` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/assignments.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | get_all_assignments, create_assignment, delete_assignment, personalize_for_student, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | publish_assignment, get_assignment_by_id, [INFO] [stdout] 12 | AssignmentResponse, CreateAssignmentPayload, PersonalizedAssignmentResponse, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ClassMaterialInfo` and `ClassStudentInfo` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/classes.rs:8:31 [INFO] [stdout] | [INFO] [stdout] 8 | get_vectorization_status, ClassMaterialInfo, ClassStudentInfo, TeacherClassView, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `StudentGradeDetail` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/students.rs:7:37 [INFO] [stdout] | [INFO] [stdout] 7 | get_student_grades_for_teacher, StudentGradeDetail, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_submissions_for_assignment` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/submissions.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | get_submissions_for_assignment, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `assignments::*` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use assignments::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `classes::*` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use classes::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TeacherOverviewSection` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:12:39 [INFO] [stdout] | [INFO] [stdout] 12 | pub use dashboard::{TeacherDashboard, TeacherOverviewSection}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `personalization_status::PersonalizationQueueStatusPanel` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use personalization_status::PersonalizationQueueStatusPanel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `students::*` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub use students::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `submissions::*` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub use submissions::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `components::*` [INFO] [stdout] --> packages/web/src/views/role_based/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use components::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `shared::*` [INFO] [stdout] --> packages/web/src/views/role_based/mod.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub use shared::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `role_based::*` [INFO] [stdout] --> packages/web/src/views/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use role_based::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils` [INFO] [stdout] --> packages/web/src/views/mod.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::utils; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::components` [INFO] [stdout] --> packages/web/src/views/mod.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::components; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AccessControl` [INFO] [stdout] --> packages/web/src/application/routing_service.rs:1:21 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::domain::{AccessControl, SystemRole, User}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `validation::*` [INFO] [stdout] --> packages/web/src/components/mod.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use validation::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `auth::*` [INFO] [stdout] --> packages/web/src/components/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use auth::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `skeleton::*` [INFO] [stdout] --> packages/web/src/components/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use skeleton::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `validation::*` [INFO] [stdout] --> packages/web/src/utils/mod.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub use validation::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `auth::*` [INFO] [stdout] --> packages/web/src/utils/mod.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use auth::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cache::*` [INFO] [stdout] --> packages/web/src/utils/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use cache::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `login::LoginPage` [INFO] [stdout] --> packages/web/src/views/mod.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub use login::LoginPage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error_boundary::*` [INFO] [stdout] --> packages/web/src/views/role_based/components/mod.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use error_boundary::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `loading_spinner::*` [INFO] [stdout] --> packages/web/src/views/role_based/components/mod.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub use loading_spinner::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `navigation::*` [INFO] [stdout] --> packages/web/src/views/role_based/components/mod.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub use navigation::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `role_guard::*` [INFO] [stdout] --> packages/web/src/views/role_based/components/mod.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub use role_guard::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `children::*` [INFO] [stdout] --> packages/web/src/views/role_based/parent/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use children::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `communication::*` [INFO] [stdout] --> packages/web/src/views/role_based/parent/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use communication::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reports::*` [INFO] [stdout] --> packages/web/src/views/role_based/parent/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use reports::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LocalStorage` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_creation.rs:4:20 [INFO] [stdout] | [INFO] [stdout] 4 | use gloo_storage::{LocalStorage, Storage}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SkeletonCard` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_management.rs:1:35 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::components::skeleton::{SkeletonCard, SkeletonTable}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LocalStorage` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_management.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | use gloo_storage::{LocalStorage, Storage}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SchoolManagerOverviewSection` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/mod.rs:12:45 [INFO] [stdout] | [INFO] [stdout] 12 | pub use dashboard::{SchoolManagerDashboard, SchoolManagerOverviewSection}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `common::*` [INFO] [stdout] --> packages/web/src/views/role_based/shared/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use common::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `charts::*` [INFO] [stdout] --> packages/web/src/views/role_based/shared/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use charts::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tables::*` [INFO] [stdout] --> packages/web/src/views/role_based/shared/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use tables::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `forms::*` [INFO] [stdout] --> packages/web/src/views/role_based/shared/mod.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub use forms::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ClassAssignmentInfo`, `ClassGradeInfo`, and `ClassMaterialInfo` [INFO] [stdout] --> packages/web/src/views/role_based/student/classes.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | ClassAssignmentInfo, ClassGradeInfo, ClassMaterialInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `StudentSubmission` [INFO] [stdout] --> packages/web/src/views/role_based/student/assignments.rs:9:109 [INFO] [stdout] | [INFO] [stdout] 9 | use api::server_functions::submission_functions::{submit_student_assignment, get_submission_for_assignment, StudentSubmission}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `classes::*` [INFO] [stdout] --> packages/web/src/views/role_based/student/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use classes::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `assignments::*` [INFO] [stdout] --> packages/web/src/views/role_based/student/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use assignments::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `grades::*` [INFO] [stdout] --> packages/web/src/views/role_based/student/mod.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub use grades::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `schedule::*` [INFO] [stdout] --> packages/web/src/views/role_based/student/mod.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use schedule::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TeacherAssignmentInfo` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/assignments.rs:8:75 [INFO] [stdout] | [INFO] [stdout] 8 | use api::server_functions::dashboard_functions::{get_teacher_assignments, TeacherAssignmentInfo}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AssignmentResponse`, `PersonalizedAssignmentResponse`, `get_all_assignments`, and `personalize_for_student` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/assignments.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | get_all_assignments, create_assignment, delete_assignment, personalize_for_student, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | publish_assignment, get_assignment_by_id, [INFO] [stdout] 12 | AssignmentResponse, CreateAssignmentPayload, PersonalizedAssignmentResponse, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ClassMaterialInfo` and `ClassStudentInfo` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/classes.rs:8:31 [INFO] [stdout] | [INFO] [stdout] 8 | get_vectorization_status, ClassMaterialInfo, ClassStudentInfo, TeacherClassView, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `StudentGradeDetail` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/students.rs:7:37 [INFO] [stdout] | [INFO] [stdout] 7 | get_student_grades_for_teacher, StudentGradeDetail, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_submissions_for_assignment` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/submissions.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | get_submissions_for_assignment, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `assignments::*` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use assignments::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `classes::*` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use classes::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TeacherOverviewSection` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:12:39 [INFO] [stdout] | [INFO] [stdout] 12 | pub use dashboard::{TeacherDashboard, TeacherOverviewSection}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `personalization_status::PersonalizationQueueStatusPanel` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use personalization_status::PersonalizationQueueStatusPanel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `students::*` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub use students::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `submissions::*` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/mod.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub use submissions::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `components::*` [INFO] [stdout] --> packages/web/src/views/role_based/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use components::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `shared::*` [INFO] [stdout] --> packages/web/src/views/role_based/mod.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub use shared::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `role_based::*` [INFO] [stdout] --> packages/web/src/views/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use role_based::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils` [INFO] [stdout] --> packages/web/src/views/mod.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::utils; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::components` [INFO] [stdout] --> packages/web/src/views/mod.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::components; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gloo_storage::Storage` [INFO] [stdout] --> packages/web/src/views/role_based/components/header.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use gloo_storage::Storage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Storage` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_creation.rs:4:34 [INFO] [stdout] | [INFO] [stdout] 4 | use gloo_storage::{LocalStorage, Storage}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Storage` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_management.rs:11:34 [INFO] [stdout] | [INFO] [stdout] 11 | use gloo_storage::{LocalStorage, Storage}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gloo_storage::Storage` [INFO] [stdout] --> packages/web/src/views/role_based/components/header.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use gloo_storage::Storage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Storage` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_creation.rs:4:34 [INFO] [stdout] | [INFO] [stdout] 4 | use gloo_storage::{LocalStorage, Storage}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Storage` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/user_management.rs:11:34 [INFO] [stdout] | [INFO] [stdout] 11 | use gloo_storage::{LocalStorage, Storage}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_locale` [INFO] [stdout] --> packages/web/src/i18n/provider.rs:182:25 [INFO] [stdout] | [INFO] [stdout] 182 | let new_locale = locale_ctx.current(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_locale` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/login.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let mut login_result = use_signal(|| String::new()); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/login.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | let mut is_loading = use_signal(|| false); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_locale` [INFO] [stdout] --> packages/web/src/i18n/provider.rs:182:25 [INFO] [stdout] | [INFO] [stdout] 182 | let new_locale = locale_ctx.current(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_locale` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/login.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let mut login_result = use_signal(|| String::new()); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/login.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | let mut is_loading = use_signal(|| false); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:419:14 [INFO] [stdout] | [INFO] [stdout] 419 | for (index, part) in parts.iter().enumerate() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:419:14 [INFO] [stdout] | [INFO] [stdout] 419 | for (index, part) in parts.iter().enumerate() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/role_based/knowledge.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | let mut provider = use_signal(|| "manual-verified".to_string()); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/role_based/knowledge.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | let mut provider = use_signal(|| "manual-verified".to_string()); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/settings/security.rs:72:33 [INFO] [stdout] | [INFO] [stdout] 72 | ... let current = current_password(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current` [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/settings/security.rs:72:33 [INFO] [stdout] | [INFO] [stdout] 72 | ... let current = current_password(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/settings/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | let mut active_tab = use_signal(|| "profile".to_string()); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/role_based/school_manager/settings/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | let mut active_tab = use_signal(|| "profile".to_string()); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/role_based/teacher/assignments.rs:373:9 [INFO] [stdout] | [INFO] [stdout] 373 | let mut materials_resource = use_resource(move || { [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> packages/web/src/views/role_based/teacher/assignments.rs:373:9 [INFO] [stdout] | [INFO] [stdout] 373 | let mut materials_resource = use_resource(move || { [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material_id` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/classes.rs:482:45 [INFO] [stdout] | [INFO] [stdout] 482 | ... let material_id = material.id.clone(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_material_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material_id` [INFO] [stdout] --> packages/web/src/views/role_based/teacher/classes.rs:482:45 [INFO] [stdout] | [INFO] [stdout] 482 | ... let material_id = material.id.clone(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_material_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> packages/web/src/application/auth_service.rs:25:18 [INFO] [stdout] | [INFO] [stdout] 8 | impl AppAuthService { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub async fn logout() -> Result<(), AuthError> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub async fn get_current_user() -> Result, AuthError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub async fn is_authenticated() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub async fn refresh_session() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub async fn has_role(required_role: SystemRole) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub async fn has_any_role(required_roles: &[SystemRole]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub async fn has_permission(permission: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `use_has_role`, `use_has_permission`, `use_auth_error`, `set_auth_error`, and `clear_auth_error` are never used [INFO] [stdout] --> packages/web/src/application/auth_service.rs:89:12 [INFO] [stdout] | [INFO] [stdout] 75 | impl AuthHooks { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn use_has_role(required_role: SystemRole) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn use_has_permission(permission: String) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn use_auth_error() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn set_auth_error(error: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn clear_auth_error() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoleGuard` is never constructed [INFO] [stdout] --> packages/web/src/application/auth_service.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 130 | pub struct RoleGuard; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `require_role`, `require_any_role`, and `require_permission` are never used [INFO] [stdout] --> packages/web/src/application/auth_service.rs:134:12 [INFO] [stdout] | [INFO] [stdout] 132 | impl RoleGuard { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 133 | /// Component that only renders if user has required role [INFO] [stdout] 134 | pub fn require_role( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn require_any_role( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub fn require_permission( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AuthUtils` is never constructed [INFO] [stdout] --> packages/web/src/application/auth_service.rs:229:12 [INFO] [stdout] | [INFO] [stdout] 229 | pub struct AuthUtils; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `get_login_redirect`, `format_role_display`, `validate_session`, and `handle_auth_error` are never used [INFO] [stdout] --> packages/web/src/application/auth_service.rs:233:12 [INFO] [stdout] | [INFO] [stdout] 231 | impl AuthUtils { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 232 | /// Get redirect URL after successful login based on user role [INFO] [stdout] 233 | pub fn get_login_redirect(user: &User) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | pub fn format_role_display(role: &SystemRole) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub async fn validate_session() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn handle_auth_error(error: &AuthError) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> packages/web/src/application/routing_service.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl RoutingService { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn get_role_based_route_for_role(_role: SystemRole) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn can_access_route(user: &User, route: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn is_public_route(route: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn is_protected_route(route: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn get_required_role_for_route(route: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn get_required_permission_for_route(route: &str) -> Option<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | pub fn get_active_navigation_item<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn redirect_to_role_dashboard(user: &User) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `with_active` are never used [INFO] [stdout] --> packages/web/src/application/routing_service.rs:287:12 [INFO] [stdout] | [INFO] [stdout] 286 | impl NavigationItem { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 287 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | pub fn with_active(mut self, active: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RouteGuard` is never constructed [INFO] [stdout] --> packages/web/src/application/routing_service.rs:309:12 [INFO] [stdout] | [INFO] [stdout] 309 | pub struct RouteGuard; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `require_route_access` is never used [INFO] [stdout] --> packages/web/src/application/routing_service.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 311 | impl RouteGuard { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 312 | pub fn require_route_access( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `create_session`, `refresh_session`, `get_current_user`, `get_session_timeout`, and `needs_refresh` are never used [INFO] [stdout] --> packages/web/src/application/session_manager.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 9 | impl SessionManager { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] 10 | /// Initialize user session after successful authentication [INFO] [stdout] 11 | pub async fn create_session(session: UserSession) -> Result<(), AuthError> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub async fn refresh_session() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub async fn get_current_user() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn get_session_timeout() -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub async fn needs_refresh() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SessionHooks` is never constructed [INFO] [stdout] --> packages/web/src/application/session_manager.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 69 | pub struct SessionHooks; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `use_current_session`, `use_is_session_valid`, `use_session_expiry`, and `use_needs_refresh` are never used [INFO] [stdout] --> packages/web/src/application/session_manager.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 71 | impl SessionHooks { [INFO] [stdout] | ----------------- associated functions in this implementation [INFO] [stdout] 72 | /// Hook to get current session state [INFO] [stdout] 73 | pub fn use_current_session() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn use_is_session_valid() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn use_session_expiry() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn use_needs_refresh() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `format_expiry_time`, `get_time_remaining`, and `is_session_expiring_soon` are never used [INFO] [stdout] --> packages/web/src/application/session_manager.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 120 | impl SessionUtils { [INFO] [stdout] | ----------------- associated functions in this implementation [INFO] [stdout] 121 | /// Format session expiry time for display [INFO] [stdout] 122 | pub fn format_expiry_time(expiry_str: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn get_time_remaining(expiry_str: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 152 | pub fn is_session_expiring_soon(expiry_str: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> packages/web/src/domain/roles.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl SystemRole { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn can_manage_platform_knowledge(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn can_submit_school_knowledge(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn can_manage_classes(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn can_manage_users(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn can_view_reports(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn can_manage_assignments(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn can_submit_assignments(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn can_view_student_progress(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RolePermissions` is never constructed [INFO] [stdout] --> packages/web/src/domain/roles.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 102 | pub struct RolePermissions; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `get_permissions` and `has_permission` are never used [INFO] [stdout] --> packages/web/src/domain/roles.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 104 | impl RolePermissions { [INFO] [stdout] | -------------------- associated functions in this implementation [INFO] [stdout] 105 | pub fn get_permissions(role: &SystemRole) -> Vec<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn has_permission(role: &SystemRole, permission: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `has_role`, `is_administrative`, `get_permissions`, and `has_permission` are never used [INFO] [stdout] --> packages/web/src/domain/user.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl User { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 18 | /// Create a new user instance [INFO] [stdout] 19 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn has_role(&self, role: &SystemRole) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn is_administrative(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn get_permissions(&self) -> Vec<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn has_permission(&self, permission: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_expired` is never used [INFO] [stdout] --> packages/web/src/domain/user.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 89 | impl UserSession { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn is_expired(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UpdateUserProfile` is never constructed [INFO] [stdout] --> packages/web/src/domain/user.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 115 | pub struct UpdateUserProfile { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UserInfo` is never constructed [INFO] [stdout] --> packages/web/src/domain/user.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 122 | pub struct UserInfo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `get_redirect_path`, `can_access_route`, and `get_error_message` are never used [INFO] [stdout] --> packages/web/src/domain/auth.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl AuthService { [INFO] [stdout] | ---------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn get_redirect_path(role: &SystemRole) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn can_access_route(user: &User, route: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn get_error_message(error: &AuthError) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PasswordResetRequest` is never constructed [INFO] [stdout] --> packages/web/src/domain/auth.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct PasswordResetRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PasswordResetConfirmation` is never constructed [INFO] [stdout] --> packages/web/src/domain/auth.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct PasswordResetConfirmation { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PasswordChangeRequest` is never constructed [INFO] [stdout] --> packages/web/src/domain/auth.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 122 | pub struct PasswordChangeRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AccessControl` is never constructed [INFO] [stdout] --> packages/web/src/domain/auth.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 127 | pub struct AccessControl; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `can_perform_action` and `get_accessible_routes` are never used [INFO] [stdout] --> packages/web/src/domain/auth.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 129 | impl AccessControl { [INFO] [stdout] | ------------------ associated functions in this implementation [INFO] [stdout] 130 | pub fn can_perform_action(user: &User, action: &str, resource: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn get_accessible_routes(user: &User) -> Vec<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `from_persian_numerals` is never used [INFO] [stdout] --> packages/web/src/i18n/grading.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | pub fn from_persian_numerals(s: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_grade` is never used [INFO] [stdout] --> packages/web/src/i18n/grading.rs:154:8 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn parse_grade(input: &str, locale: Locale) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_grade` is never used [INFO] [stdout] --> packages/web/src/i18n/grading.rs:176:8 [INFO] [stdout] | [INFO] [stdout] 176 | pub fn validate_grade(value: f64, locale: Locale) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_use_locale` is never used [INFO] [stdout] --> packages/web/src/i18n/provider.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn try_use_locale() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `is_authenticated` and `refresh_session` are never used [INFO] [stdout] --> packages/web/src/infrastructure/auth_provider.rs:160:18 [INFO] [stdout] | [INFO] [stdout] 25 | impl AuthProvider { [INFO] [stdout] | ----------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 160 | pub async fn is_authenticated() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub async fn refresh_session() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `is_authenticated` is never used [INFO] [stdout] --> packages/web/src/infrastructure/auth_provider.rs:205:12 [INFO] [stdout] | [INFO] [stdout] 184 | impl AuthState { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 205 | pub fn is_authenticated() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_error`, `clear_field_error`, `clear_all_errors`, `has_field_error`, and `get_field_error` are never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl FormValidationState { [INFO] [stdout] | ------------------------ associated items in this implementation [INFO] [stdout] 20 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn add_error(&mut self, field: String, message: String) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn clear_field_error(&mut self, field: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn clear_all_errors(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn has_field_error(&self, field: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn get_field_error(&self, field: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ValidationRule` is never constructed [INFO] [stdout] --> packages/web/src/utils/validation.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `validate` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 87 | impl ValidationRule { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] 88 | pub fn validate(&self, value: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FormValidator` is never constructed [INFO] [stdout] --> packages/web/src/utils/validation.rs:141:12 [INFO] [stdout] | [INFO] [stdout] 141 | pub struct FormValidator { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_rule`, and `validate_form` are never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 145 | impl FormValidator { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 146 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn add_rule(mut self, rule: ValidationRule) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn validate_form(&self, data: &std::collections::HashMap) -> FormValidationState { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `use_form_validation` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:289:8 [INFO] [stdout] | [INFO] [stdout] 289 | pub fn use_form_validation() -> Signal { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_field` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 179 | pub fn required_field(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_name` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn required_name(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_email` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:203:12 [INFO] [stdout] | [INFO] [stdout] 203 | pub fn required_email(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optional_phone` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:215:12 [INFO] [stdout] | [INFO] [stdout] 215 | pub fn optional_phone(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `grade_level` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 227 | pub fn grade_level(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_text` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 239 | pub fn required_text(field: &str, min: usize, max: usize) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optional_text` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:251:12 [INFO] [stdout] | [INFO] [stdout] 251 | pub fn optional_text(field: &str, min: usize, max: usize) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_uuid` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:263:12 [INFO] [stdout] | [INFO] [stdout] 263 | pub fn required_uuid(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optional_uuid` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:275:12 [INFO] [stdout] | [INFO] [stdout] 275 | pub fn optional_uuid(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AuthState` is never constructed [INFO] [stdout] --> packages/web/src/utils/auth.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct AuthState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `use_auth` is never used [INFO] [stdout] --> packages/web/src/utils/auth.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn use_auth() -> Resource> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `trigger_logout` is never used [INFO] [stdout] --> packages/web/src/utils/auth.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn trigger_logout() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `invalidate_subjects` is never used [INFO] [stdout] --> packages/web/src/utils/cache.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl AppCache { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn invalidate_subjects(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ErrorBoundaryHooks` is never constructed [INFO] [stdout] --> packages/web/src/views/role_based/components/error_boundary.rs:266:12 [INFO] [stdout] | [INFO] [stdout] 266 | pub struct ErrorBoundaryHooks; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `use_async_error_handler`, `use_clear_error`, and `use_has_error` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/error_boundary.rs:270:12 [INFO] [stdout] | [INFO] [stdout] 268 | impl ErrorBoundaryHooks { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 269 | /// Hook to catch and handle async errors [INFO] [stdout] 270 | pub fn use_async_error_handler() -> EventHandler { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 281 | pub fn use_clear_error() -> impl FnMut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | pub fn use_has_error() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AppError` is never used [INFO] [stdout] --> packages/web/src/views/role_based/components/error_boundary.rs:299:10 [INFO] [stdout] | [INFO] [stdout] 299 | pub enum AppError { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `user_message` and `error_type` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/error_boundary.rs:311:12 [INFO] [stdout] | [INFO] [stdout] 309 | impl AppError { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 310 | /// Get user-friendly error message [INFO] [stdout] 311 | pub fn user_message(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 324 | pub fn error_type(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `current`, and `with_click` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 126 | impl BreadcrumbItem { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 127 | pub fn new(label: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn current(mut self) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn with_click(mut self, on_click: EventHandler<()>) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_icon`, and `with_badge` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:216:12 [INFO] [stdout] | [INFO] [stdout] 215 | impl TabItem { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 216 | pub fn new(id: impl Into, label: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | pub fn with_icon(mut self, icon: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn with_badge(mut self, badge: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_description`, `with_icon`, and `with_click` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:304:12 [INFO] [stdout] | [INFO] [stdout] 303 | impl QuickAction { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 304 | pub fn new(id: impl Into, title: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | pub fn with_description(mut self, description: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 319 | pub fn with_icon(mut self, icon: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 324 | pub fn with_click(mut self, on_click: EventHandler<()>) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NavigationUtils` is never constructed [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:407:12 [INFO] [stdout] | [INFO] [stdout] 407 | pub struct NavigationUtils; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `breadcrumbs_from_route` and `format_route_part` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:411:12 [INFO] [stdout] | [INFO] [stdout] 409 | impl NavigationUtils { [INFO] [stdout] | -------------------- associated functions in this implementation [INFO] [stdout] 410 | /// Generate breadcrumb items from a route path [INFO] [stdout] 411 | pub fn breadcrumbs_from_route(route: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 430 | fn format_route_part(part: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Warning` and `Gray` are never constructed [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 124 | pub enum BadgeVariant { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 125 | Success, [INFO] [stdout] 126 | Warning, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | Gray, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BadgeVariant` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Success`, `Warning`, and `Danger` are never constructed [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:229:5 [INFO] [stdout] | [INFO] [stdout] 226 | pub enum ButtonVariant { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 229 | Success, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 230 | Warning, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 231 | Danger, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ButtonVariant` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Large` is never constructed [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:240:5 [INFO] [stdout] | [INFO] [stdout] 237 | pub enum ButtonSize { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 240 | Large, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ButtonSize` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/forms.rs:135:12 [INFO] [stdout] | [INFO] [stdout] 134 | impl SelectOption { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 135 | pub fn new(value: impl Into, label: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/tables.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 77 | impl TableColumn { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 78 | pub fn new(key: impl Into, label: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_cell`, and `get_cell_value` are never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/tables.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 92 | impl TableRow { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 93 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn with_cell(mut self, key: impl Into, value: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn get_cell_value(&self, key: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_change`, and `with_icon` are never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/tables.rs:173:12 [INFO] [stdout] | [INFO] [stdout] 172 | impl StatItem { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 173 | pub fn new(label: impl Into, value: impl Into, color: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn with_change(mut self, change: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub fn with_icon(mut self, icon: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/charts.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 153 | impl ChartItem { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 154 | pub fn new(label: impl Into, value: f32, color: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> packages/web/src/application/auth_service.rs:25:18 [INFO] [stdout] | [INFO] [stdout] 8 | impl AppAuthService { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub async fn logout() -> Result<(), AuthError> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub async fn get_current_user() -> Result, AuthError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub async fn is_authenticated() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub async fn refresh_session() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub async fn has_role(required_role: SystemRole) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub async fn has_any_role(required_roles: &[SystemRole]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub async fn has_permission(permission: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `use_has_role`, `use_has_permission`, `use_auth_error`, `set_auth_error`, and `clear_auth_error` are never used [INFO] [stdout] --> packages/web/src/application/auth_service.rs:89:12 [INFO] [stdout] | [INFO] [stdout] 75 | impl AuthHooks { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn use_has_role(required_role: SystemRole) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn use_has_permission(permission: String) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn use_auth_error() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn set_auth_error(error: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn clear_auth_error() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RoleGuard` is never constructed [INFO] [stdout] --> packages/web/src/application/auth_service.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 130 | pub struct RoleGuard; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `require_role`, `require_any_role`, and `require_permission` are never used [INFO] [stdout] --> packages/web/src/application/auth_service.rs:134:12 [INFO] [stdout] | [INFO] [stdout] 132 | impl RoleGuard { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 133 | /// Component that only renders if user has required role [INFO] [stdout] 134 | pub fn require_role( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn require_any_role( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub fn require_permission( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AuthUtils` is never constructed [INFO] [stdout] --> packages/web/src/application/auth_service.rs:229:12 [INFO] [stdout] | [INFO] [stdout] 229 | pub struct AuthUtils; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `get_login_redirect`, `format_role_display`, `validate_session`, and `handle_auth_error` are never used [INFO] [stdout] --> packages/web/src/application/auth_service.rs:233:12 [INFO] [stdout] | [INFO] [stdout] 231 | impl AuthUtils { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 232 | /// Get redirect URL after successful login based on user role [INFO] [stdout] 233 | pub fn get_login_redirect(user: &User) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | pub fn format_role_display(role: &SystemRole) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub async fn validate_session() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn handle_auth_error(error: &AuthError) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `can_access_route`, `is_public_route`, `get_required_permission_for_route`, `get_active_navigation_item`, and `redirect_to_role_dashboard` are never used [INFO] [stdout] --> packages/web/src/application/routing_service.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl RoutingService { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn can_access_route(user: &User, route: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn is_public_route(route: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn get_required_permission_for_route(route: &str) -> Option<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | pub fn get_active_navigation_item<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn redirect_to_role_dashboard(user: &User) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `with_active` are never used [INFO] [stdout] --> packages/web/src/application/routing_service.rs:287:12 [INFO] [stdout] | [INFO] [stdout] 286 | impl NavigationItem { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 287 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | pub fn with_active(mut self, active: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RouteGuard` is never constructed [INFO] [stdout] --> packages/web/src/application/routing_service.rs:309:12 [INFO] [stdout] | [INFO] [stdout] 309 | pub struct RouteGuard; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `require_route_access` is never used [INFO] [stdout] --> packages/web/src/application/routing_service.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 311 | impl RouteGuard { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 312 | pub fn require_route_access( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `create_session`, `refresh_session`, `get_current_user`, `get_session_timeout`, and `needs_refresh` are never used [INFO] [stdout] --> packages/web/src/application/session_manager.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 9 | impl SessionManager { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] 10 | /// Initialize user session after successful authentication [INFO] [stdout] 11 | pub async fn create_session(session: UserSession) -> Result<(), AuthError> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub async fn refresh_session() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub async fn get_current_user() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn get_session_timeout() -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub async fn needs_refresh() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SessionHooks` is never constructed [INFO] [stdout] --> packages/web/src/application/session_manager.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 69 | pub struct SessionHooks; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `use_current_session`, `use_is_session_valid`, `use_session_expiry`, and `use_needs_refresh` are never used [INFO] [stdout] --> packages/web/src/application/session_manager.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 71 | impl SessionHooks { [INFO] [stdout] | ----------------- associated functions in this implementation [INFO] [stdout] 72 | /// Hook to get current session state [INFO] [stdout] 73 | pub fn use_current_session() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn use_is_session_valid() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn use_session_expiry() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn use_needs_refresh() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `format_expiry_time`, `get_time_remaining`, and `is_session_expiring_soon` are never used [INFO] [stdout] --> packages/web/src/application/session_manager.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 120 | impl SessionUtils { [INFO] [stdout] | ----------------- associated functions in this implementation [INFO] [stdout] 121 | /// Format session expiry time for display [INFO] [stdout] 122 | pub fn format_expiry_time(expiry_str: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn get_time_remaining(expiry_str: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 152 | pub fn is_session_expiring_soon(expiry_str: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `as_str` and `can_manage_users` are never used [INFO] [stdout] --> packages/web/src/domain/roles.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl SystemRole { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn can_manage_users(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `has_role`, `is_administrative`, and `get_permissions` are never used [INFO] [stdout] --> packages/web/src/domain/user.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl User { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn has_role(&self, role: &SystemRole) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn is_administrative(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn get_permissions(&self) -> Vec<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_expired` is never used [INFO] [stdout] --> packages/web/src/domain/user.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 89 | impl UserSession { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn is_expired(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UpdateUserProfile` is never constructed [INFO] [stdout] --> packages/web/src/domain/user.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 115 | pub struct UpdateUserProfile { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UserInfo` is never constructed [INFO] [stdout] --> packages/web/src/domain/user.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 122 | pub struct UserInfo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `get_redirect_path` and `get_error_message` are never used [INFO] [stdout] --> packages/web/src/domain/auth.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl AuthService { [INFO] [stdout] | ---------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn get_redirect_path(role: &SystemRole) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn get_error_message(error: &AuthError) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PasswordResetRequest` is never constructed [INFO] [stdout] --> packages/web/src/domain/auth.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct PasswordResetRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PasswordResetConfirmation` is never constructed [INFO] [stdout] --> packages/web/src/domain/auth.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct PasswordResetConfirmation { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PasswordChangeRequest` is never constructed [INFO] [stdout] --> packages/web/src/domain/auth.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 122 | pub struct PasswordChangeRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `get_accessible_routes` is never used [INFO] [stdout] --> packages/web/src/domain/auth.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 129 | impl AccessControl { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn get_accessible_routes(user: &User) -> Vec<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_grade` is never used [INFO] [stdout] --> packages/web/src/i18n/grading.rs:176:8 [INFO] [stdout] | [INFO] [stdout] 176 | pub fn validate_grade(value: f64, locale: Locale) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_use_locale` is never used [INFO] [stdout] --> packages/web/src/i18n/provider.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn try_use_locale() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `is_authenticated` and `refresh_session` are never used [INFO] [stdout] --> packages/web/src/infrastructure/auth_provider.rs:160:18 [INFO] [stdout] | [INFO] [stdout] 25 | impl AuthProvider { [INFO] [stdout] | ----------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 160 | pub async fn is_authenticated() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub async fn refresh_session() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `is_authenticated` is never used [INFO] [stdout] --> packages/web/src/infrastructure/auth_provider.rs:205:12 [INFO] [stdout] | [INFO] [stdout] 184 | impl AuthState { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 205 | pub fn is_authenticated() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_error`, `clear_field_error`, `clear_all_errors`, `has_field_error`, and `get_field_error` are never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl FormValidationState { [INFO] [stdout] | ------------------------ associated items in this implementation [INFO] [stdout] 20 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn add_error(&mut self, field: String, message: String) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn clear_field_error(&mut self, field: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn clear_all_errors(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn has_field_error(&self, field: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn get_field_error(&self, field: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ValidationRule` is never constructed [INFO] [stdout] --> packages/web/src/utils/validation.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `validate` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 87 | impl ValidationRule { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] 88 | pub fn validate(&self, value: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FormValidator` is never constructed [INFO] [stdout] --> packages/web/src/utils/validation.rs:141:12 [INFO] [stdout] | [INFO] [stdout] 141 | pub struct FormValidator { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_rule`, and `validate_form` are never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 145 | impl FormValidator { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 146 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn add_rule(mut self, rule: ValidationRule) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn validate_form(&self, data: &std::collections::HashMap) -> FormValidationState { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `use_form_validation` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:289:8 [INFO] [stdout] | [INFO] [stdout] 289 | pub fn use_form_validation() -> Signal { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_field` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 179 | pub fn required_field(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_name` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn required_name(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_email` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:203:12 [INFO] [stdout] | [INFO] [stdout] 203 | pub fn required_email(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optional_phone` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:215:12 [INFO] [stdout] | [INFO] [stdout] 215 | pub fn optional_phone(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `grade_level` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 227 | pub fn grade_level(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_text` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 239 | pub fn required_text(field: &str, min: usize, max: usize) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optional_text` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:251:12 [INFO] [stdout] | [INFO] [stdout] 251 | pub fn optional_text(field: &str, min: usize, max: usize) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `required_uuid` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:263:12 [INFO] [stdout] | [INFO] [stdout] 263 | pub fn required_uuid(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optional_uuid` is never used [INFO] [stdout] --> packages/web/src/utils/validation.rs:275:12 [INFO] [stdout] | [INFO] [stdout] 275 | pub fn optional_uuid(field: &str) -> ValidationRule { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AuthState` is never constructed [INFO] [stdout] --> packages/web/src/utils/auth.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct AuthState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `use_auth` is never used [INFO] [stdout] --> packages/web/src/utils/auth.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn use_auth() -> Resource> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `trigger_logout` is never used [INFO] [stdout] --> packages/web/src/utils/auth.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn trigger_logout() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `invalidate_subjects` is never used [INFO] [stdout] --> packages/web/src/utils/cache.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl AppCache { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn invalidate_subjects(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ErrorBoundaryHooks` is never constructed [INFO] [stdout] --> packages/web/src/views/role_based/components/error_boundary.rs:266:12 [INFO] [stdout] | [INFO] [stdout] 266 | pub struct ErrorBoundaryHooks; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `use_async_error_handler`, `use_clear_error`, and `use_has_error` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/error_boundary.rs:270:12 [INFO] [stdout] | [INFO] [stdout] 268 | impl ErrorBoundaryHooks { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 269 | /// Hook to catch and handle async errors [INFO] [stdout] 270 | pub fn use_async_error_handler() -> EventHandler { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 281 | pub fn use_clear_error() -> impl FnMut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | pub fn use_has_error() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AppError` is never used [INFO] [stdout] --> packages/web/src/views/role_based/components/error_boundary.rs:299:10 [INFO] [stdout] | [INFO] [stdout] 299 | pub enum AppError { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `user_message` and `error_type` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/error_boundary.rs:311:12 [INFO] [stdout] | [INFO] [stdout] 309 | impl AppError { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 310 | /// Get user-friendly error message [INFO] [stdout] 311 | pub fn user_message(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 324 | pub fn error_type(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `current`, and `with_click` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 126 | impl BreadcrumbItem { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 127 | pub fn new(label: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn current(mut self) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn with_click(mut self, on_click: EventHandler<()>) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_icon`, and `with_badge` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:216:12 [INFO] [stdout] | [INFO] [stdout] 215 | impl TabItem { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 216 | pub fn new(id: impl Into, label: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | pub fn with_icon(mut self, icon: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn with_badge(mut self, badge: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_description`, `with_icon`, and `with_click` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:304:12 [INFO] [stdout] | [INFO] [stdout] 303 | impl QuickAction { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 304 | pub fn new(id: impl Into, title: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | pub fn with_description(mut self, description: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 319 | pub fn with_icon(mut self, icon: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 324 | pub fn with_click(mut self, on_click: EventHandler<()>) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NavigationUtils` is never constructed [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:407:12 [INFO] [stdout] | [INFO] [stdout] 407 | pub struct NavigationUtils; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `breadcrumbs_from_route` and `format_route_part` are never used [INFO] [stdout] --> packages/web/src/views/role_based/components/navigation.rs:411:12 [INFO] [stdout] | [INFO] [stdout] 409 | impl NavigationUtils { [INFO] [stdout] | -------------------- associated functions in this implementation [INFO] [stdout] 410 | /// Generate breadcrumb items from a route path [INFO] [stdout] 411 | pub fn breadcrumbs_from_route(route: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 430 | fn format_route_part(part: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Warning` and `Gray` are never constructed [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 124 | pub enum BadgeVariant { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 125 | Success, [INFO] [stdout] 126 | Warning, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | Gray, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BadgeVariant` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Success`, `Warning`, and `Danger` are never constructed [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:229:5 [INFO] [stdout] | [INFO] [stdout] 226 | pub enum ButtonVariant { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 229 | Success, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 230 | Warning, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 231 | Danger, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ButtonVariant` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Large` is never constructed [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:240:5 [INFO] [stdout] | [INFO] [stdout] 237 | pub enum ButtonSize { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 240 | Large, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ButtonSize` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/forms.rs:135:12 [INFO] [stdout] | [INFO] [stdout] 134 | impl SelectOption { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 135 | pub fn new(value: impl Into, label: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/tables.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 77 | impl TableColumn { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 78 | pub fn new(key: impl Into, label: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_cell`, and `get_cell_value` are never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/tables.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 92 | impl TableRow { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 93 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn with_cell(mut self, key: impl Into, value: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn get_cell_value(&self, key: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_change`, and `with_icon` are never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/tables.rs:173:12 [INFO] [stdout] | [INFO] [stdout] 172 | impl StatItem { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 173 | pub fn new(label: impl Into, value: impl Into, color: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn with_change(mut self, change: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub fn with_icon(mut self, icon: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> packages/web/src/views/role_based/shared/charts.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 153 | impl ChartItem { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 154 | pub fn new(label: impl Into, value: f32, color: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `className` should have a snake case name [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | className: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `className` should have a snake case name [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | className: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `className` should have a snake case name [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | className: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `className` should have a snake case name [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | className: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `className` should have a snake case name [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | className: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `className` should have a snake case name [INFO] [stdout] --> packages/web/src/views/role_based/shared/common.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | className: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized] target(s) in 2m 05s [INFO] running `Command { std: "docker" "inspect" "b42c3d2ad844eedf32b52f6f820f01f599dc4328caef31155b39bf168c34603a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b42c3d2ad844eedf32b52f6f820f01f599dc4328caef31155b39bf168c34603a", kill_on_drop: false }` [INFO] [stdout] b42c3d2ad844eedf32b52f6f820f01f599dc4328caef31155b39bf168c34603a