[INFO] fetching crate rustango 0.55.0...
[INFO] documenting rustango-0.55.0 against 824336ad4127ce295849937a24c08a4aeff6ada7 for pr-162169
[INFO] extracting crate rustango 0.55.0 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate rustango 0.55.0
[INFO] finished tweaking crates.io crate rustango 0.55.0
[INFO] tweaked toml for crates.io crate rustango 0.55.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate rustango 0.55.0 on toolchain 824336ad4127ce295849937a24c08a4aeff6ada7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+824336ad4127ce295849937a24c08a4aeff6ada7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rustango 0.55.0 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" "+824336ad4127ce295849937a24c08a4aeff6ada7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.118
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.118
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.118
[INFO] [stderr]   Downloaded js-sys v0.3.95
[INFO] [stderr]   Downloaded symlink v0.1.0
[INFO] [stderr]   Downloaded tracing-appender v0.2.5
[INFO] [stderr]   Downloaded ignore v0.4.25
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.118
[INFO] [stderr]   Downloaded rust_decimal v1.42.0
[INFO] [stderr]   Downloaded borsh-derive v1.6.1
[INFO] [stderr]   Downloaded cc v1.2.61
[INFO] [stderr]   Downloaded redox_syscall v0.7.4
[INFO] [stderr]   Downloaded rtoolbox v0.0.5
[INFO] [stderr]   Downloaded tokio v1.52.1
[INFO] [stderr]   Downloaded rustango-macros v0.55.0
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.68
[INFO] [stderr]   Downloaded web-sys v0.3.95
[INFO] [stderr]   Downloaded email-encoding v0.4.1
[INFO] [stderr]   Downloaded redis v0.27.6
[INFO] [stderr]   Downloaded password-hash v0.5.0
[INFO] [stderr]   Downloaded quoted_printable v0.5.2
[INFO] [stderr]   Downloaded lettre v0.11.22
[INFO] [stderr]   Downloaded argon2 v0.5.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb
[INFO] running `Command { std: "docker" "start" "b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb", 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" "b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb" "/opt/rustwide/cargo-home/bin/cargo" "+824336ad4127ce295849937a24c08a4aeff6ada7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb", 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" "b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb" "/opt/rustwide/cargo-home/bin/cargo" "+824336ad4127ce295849937a24c08a4aeff6ada7" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking futures-sink v0.3.32
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling cc v1.2.61
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking rustls-pki-types v1.14.1
[INFO] [stderr]     Checking hashbrown v0.17.0
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling rust_decimal v1.42.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]    Compiling pest v2.8.6
[INFO] [stderr]     Checking tinyvec v1.11.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.20
[INFO] [stderr]     Checking bstr v1.12.1
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]    Compiling winnow v1.0.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]     Checking crc-catalog v2.5.0
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]     Checking globset v0.4.18
[INFO] [stderr]     Checking crc v3.4.0
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]    Compiling pest_meta v2.8.6
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]     Checking tokio v1.52.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]     Checking uuid v1.23.1
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking unicode-normalization v0.1.25
[INFO] [stderr]     Checking hashlink v0.10.0
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]    Compiling toml_edit v0.25.11+spec-1.1.0
[INFO] [stderr]     Checking tungstenite v0.29.0
[INFO] [stderr]     Checking stringprep v0.1.5
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking ignore v0.4.25
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]    Compiling pest_generator v2.8.6
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking webpki-roots v1.0.7
[INFO] [stderr]     Checking atoi v2.0.0
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]     Checking futures-intrusive v0.5.0
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]     Checking dotenvy v0.15.7
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking winnow v0.7.15
[INFO] [stderr]     Checking simd-adler32 v0.3.9
[INFO] [stderr]     Checking whoami v1.6.1
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]     Checking home v0.5.12
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking spin v0.9.9
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking poly1305 v0.8.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]     Checking globwalk v0.9.1
[INFO] [stderr]     Checking chacha20 v0.9.1
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking sqlx-core v0.8.6
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking tokio-tungstenite v0.29.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking rtoolbox v0.0.5
[INFO] [stderr]     Checking unicode-segmentation v1.13.2
[INFO] [stderr]     Checking symlink v0.1.0
[INFO] [stderr]     Checking matchit v0.8.4
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking tracing-appender v0.2.5
[INFO] [stderr]     Checking rpassword v7.5.4
[INFO] [stderr]     Checking chacha20poly1305 v0.10.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling rustango-macros v0.55.0
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking tera v1.20.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking inventory v0.3.24
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking axum v0.8.9
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking sqlx-postgres v0.8.6
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]  Documenting rustango v0.55.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unresolved link to `tenancy::session`
[INFO] [stdout]   --> src/lib.rs:90:16
[INFO] [stdout]    |
[INFO] [stdout] 90 | //!   across [`tenancy::session`] + [`admin::session`] (different
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^ no item named `tenancy` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `tenancy::TenantPools`
[INFO] [stdout]    --> src/lib.rs:128:32
[INFO] [stdout]     |
[INFO] [stdout] 128 | //! tri-dialect since v0.33: [`tenancy::TenantPools`] is generic over
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::operator_console`
[INFO] [stdout]    --> src/audit.rs:135:21
[INFO] [stdout]     |
[INFO] [stdout] 135 |     /// console's [`crate::tenancy::operator_console`] audit writes.
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `emit_one_my`
[INFO] [stdout]    --> src/audit.rs:653:34
[INFO] [stdout]     |
[INFO] [stdout] 653 | /// [`emit_one`] (Postgres) or [`emit_one_my`] (MySQL). **Not
[INFO] [stdout]     |                                  ^^^^^^^^^^^ no item named `emit_one_my` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `emit_one_tx`
[INFO] [stdout]     |
[INFO] [stdout] 653 - /// [`emit_one`] (Postgres) or [`emit_one_my`] (MySQL). **Not
[INFO] [stdout] 653 + /// [`emit_one`] (Postgres) or [`emit_one_tx`] (MySQL). **Not
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Dialect::placeholder`
[INFO] [stdout]    --> src/audit.rs:677:20
[INFO] [stdout]     |
[INFO] [stdout] 677 | /// rendered via [`Dialect::placeholder`] + [`Dialect::quote_ident`].
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^ no item named `Dialect` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Dialect::quote_ident`
[INFO] [stdout]    --> src/audit.rs:677:47
[INFO] [stdout]     |
[INFO] [stdout] 677 | /// rendered via [`Dialect::placeholder`] + [`Dialect::quote_ident`].
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^ no item named `Dialect` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `emit_one_*`
[INFO] [stdout]    --> src/audit.rs:895:31
[INFO] [stdout]     |
[INFO] [stdout] 895 | /// falls back to a per-row [`emit_one_*`] loop inside a single
[INFO] [stdout]     |                               ^^^^^^^^^^ no item named `emit_one_*` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `emit_one`
[INFO] [stdout]     |
[INFO] [stdout] 895 - /// falls back to a per-row [`emit_one_*`] loop inside a single
[INFO] [stdout] 895 + /// falls back to a per-row [`emit_one`] loop inside a single
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::for_each_tenant`
[INFO] [stdout]    --> src/audit.rs:997:20
[INFO] [stdout]     |
[INFO] [stdout] 997 | /// Fan out with [`crate::tenancy::for_each_tenant`] (#1226).
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::executor::bind_query`
[INFO] [stdout]     --> src/audit.rs:1072:7
[INFO] [stdout]      |
[INFO] [stdout] 1072 | /// [`crate::sql::executor::bind_query`] / `bind_query_my` (private
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `executor` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ensure_seeded`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`ensure_seeded()`] walks `inventory::iter::<ModelEntry>()` and
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ensure_seeded` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ContentType::for_model`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`ContentType::for_model`] resolves a model type to its
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ContentType` in scope
[INFO] [stdout]   = help: there's a similarly named item `contenttypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ContentType::all_ordered`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`ContentType::all_ordered`] / [`ContentType::by_id`] /
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ContentType` in scope
[INFO] [stdout]   = help: there's a similarly named item `contenttypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ContentType::by_id`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`ContentType::all_ordered`] / [`ContentType::by_id`] /
[INFO] [stdout]                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ContentType` in scope
[INFO] [stdout]   = help: there's a similarly named item `contenttypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ContentType::by_natural_key`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`ContentType::by_natural_key`] cover the lookup shapes the
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ContentType` in scope
[INFO] [stdout]   = help: there's a similarly named item `contenttypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Expr`
[INFO] [stdout]    --> src/core/column.rs:433:60
[INFO] [stdout]     |
[INFO] [stdout] 433 |     /// `SET column = <expression>` for an UPDATE — full [`Expr`] form,
[INFO] [stdout]     |                                                            ^^^^ no item named `Expr` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `::phrase`
[INFO] [stdout]   --> src/core/fts.rs:39:34
[INFO] [stdout]    |
[INFO] [stdout] 39 | //! - [`SearchQuery::plain`] / [`::phrase`] / [`::websearch`] / [`::raw`] —
[INFO] [stdout]    |                                  ^^^^^^^^ no item named `phrase` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `::websearch`
[INFO] [stdout]   --> src/core/fts.rs:39:49
[INFO] [stdout]    |
[INFO] [stdout] 39 | //! - [`SearchQuery::plain`] / [`::phrase`] / [`::websearch`] / [`::raw`] —
[INFO] [stdout]    |                                                 ^^^^^^^^^^^ no item named `websearch` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `::raw`
[INFO] [stdout]   --> src/core/fts.rs:39:67
[INFO] [stdout]    |
[INFO] [stdout] 39 | //! - [`SearchQuery::plain`] / [`::phrase`] / [`::websearch`] / [`::raw`] —
[INFO] [stdout]    |                                                                   ^^^^^ no item named `raw` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::core::QuerySet::select_related`
[INFO] [stdout]  --> src/core/joins.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! Where [`crate::core::QuerySet::select_related`] follows FK edges
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `QuerySet` in module `core`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Between`
[INFO] [stdout]   --> src/core/query.rs:49:58
[INFO] [stdout]    |
[INFO] [stdout] 49 |     /// Negated range check. Bound value shape matches [`Between`]
[INFO] [stdout]    |                                                          ^^^^^^^ no item named `Between` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `by_pk`
[INFO] [stdout]    --> src/core/query.rs:793:52
[INFO] [stdout]     |
[INFO] [stdout] 793 |     /// Multi-PK `IN (...)` lookup. Companion to [`by_pk`] for the
[INFO] [stdout]     |                                                    ^^^^^ no item named `by_pk` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::bulk_update`
[INFO] [stdout]     --> src/core/query.rs:1532:17
[INFO] [stdout]      |
[INFO] [stdout] 1532 | /// Built via [`crate::sql::bulk_update`] or directly.
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^ no item named `bulk_update` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `rustango::tenancy::permissions::auto_create_permissions`
[INFO] [stdout]    --> src/core/schema.rs:394:11
[INFO] [stdout]     |
[INFO] [stdout] 394 |     /// [`rustango::tenancy::permissions::auto_create_permissions`].
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QuerySet::using`
[INFO] [stdout]    --> src/databases.rs:245:7
[INFO] [stdout]     |
[INFO] [stdout] 245 | /// [`QuerySet::using`]. Carries the read terminals that resolve against
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^ no item named `QuerySet` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_migration_callback`
[INFO] [stdout]  --> src/migrate/callbacks.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | //! callback is registered at startup via [`register_migration_callback!`]
[INFO] [stdout]   |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `register_migration_callback` in scope
[INFO] [stdout]   |
[INFO] [stdout]   = note: `macro_rules` named `register_migration_callback` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_migration_callback`
[INFO] [stdout]   --> src/migrate/callbacks.rs:63:7
[INFO] [stdout]    |
[INFO] [stdout] 63 | /// [`register_migration_callback!`] macro.
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `register_migration_callback` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_migration_callback` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Dialect::translate_default_expr`
[INFO] [stdout]     --> src/migrate/diff.rs:1376:27
[INFO] [stdout]      |
[INFO] [stdout] 1376 | /// then routed through [`Dialect::translate_default_expr`] like any other
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `Dialect` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `list_dir` links to private item `validate_chain`
[INFO] [stdout]    --> src/migrate/file.rs:211:21
[INFO] [stdout]     |
[INFO] [stdout] 211 | /// validated via [`validate_chain`] — a migration declaring
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout]     = note: `#[warn(rustdoc::private_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `tz`
[INFO] [stdout]   --> src/migrate/inspectdb.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout] 28 | //!   bool, timestamp[tz], date, uuid/blob, json[b]/text-as-json,
[INFO] [stdout]    |                       ^^ no item named `tz` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `b`
[INFO] [stdout]   --> src/migrate/inspectdb.rs:28:50
[INFO] [stdout]    |
[INFO] [stdout] 28 | //!   bool, timestamp[tz], date, uuid/blob, json[b]/text-as-json,
[INFO] [stdout]    |                                                  ^ no item named `b` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `hex`
[INFO] [stdout]     --> src/migrate/manage.rs:3001:29
[INFO] [stdout]      |
[INFO] [stdout] 3001 | ///   Time / Uuid / Binary [hex] / String)
[INFO] [stdout]      |                             ^^^ no item named `hex` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy`
[INFO] [stdout]     --> src/migrate/runner.rs:1451:7
[INFO] [stdout]      |
[INFO] [stdout] 1451 | /// [`crate::tenancy`] provisioning) — user migrations go through the
[INFO] [stdout]      |       ^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `tenancy::permissions::auto_create_permissions`
[INFO] [stdout]    --> src/migrate/scaffold.rs:370:32
[INFO] [stdout]     |
[INFO] [stdout] 370 | /// `permissions = true`, so [`tenancy::permissions::auto_create_permissions`]
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ModelScope::Tenant`
[INFO] [stdout]    --> src/migrate/snapshot.rs:373:44
[INFO] [stdout]     |
[INFO] [stdout] 373 |     /// snapshot was written) default to [`ModelScope::Tenant`] —
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^ no item named `ModelScope` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `from_registry`
[INFO] [stdout]    --> src/migrate/snapshot.rs:462:35
[INFO] [stdout]     |
[INFO] [stdout] 462 |     /// agnostic counterpart of [`from_registry`]. Used by callers that
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^ no item named `from_registry` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `from_registry`
[INFO] [stdout]    --> src/migrate/snapshot.rs:468:19
[INFO] [stdout]     |
[INFO] [stdout] 468 |     /// rule as [`from_registry`].
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ no item named `from_registry` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QueryError::DistinctOnOrderBy`
[INFO] [stdout]    --> src/query/mod.rs:375:19
[INFO] [stdout]     |
[INFO] [stdout] 375 |     /// returns [`QueryError::DistinctOnOrderBy`] otherwise — the order
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `QueryError` has no variant or associated item named `DistinctOnOrderBy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::transaction`
[INFO] [stdout]    --> src/query/mod.rs:394:11
[INFO] [stdout]     |
[INFO] [stdout] 394 |     /// [`crate::sql::transaction`] / [`crate::sql::transaction_pg`]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^ no item named `transaction` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::transaction_pg`
[INFO] [stdout]    --> src/query/mod.rs:394:41
[INFO] [stdout]     |
[INFO] [stdout] 394 |     /// [`crate::sql::transaction`] / [`crate::sql::transaction_pg`]
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `transaction_pg` in module `sql`
[INFO] [stdout]     |
[INFO] [stdout] help: there's a similarly named item `transaction_pool`
[INFO] [stdout]     |
[INFO] [stdout] 394 -     /// [`crate::sql::transaction`] / [`crate::sql::transaction_pg`]
[INFO] [stdout] 394 +     /// [`crate::sql::transaction`] / [`crate::sql::transaction_pool`]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `write_expr_compare`
[INFO] [stdout]     --> src/query/mod.rs:3421:46
[INFO] [stdout]      |
[INFO] [stdout] 3421 | /// Expr::Literal(value)` for every op the [`write_expr_compare`] writer
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^^^^^^ no item named `write_expr_compare` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::fetch_values_dict_pool`
[INFO] [stdout]     --> src/query/mod.rs:4409:7
[INFO] [stdout]      |
[INFO] [stdout] 4409 | /// [`crate::sql::fetch_values_dict_pool`].
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `fetch_values_dict_pool` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::fetch`
[INFO] [stdout]     --> src/query/mod.rs:4529:15
[INFO] [stdout]      |
[INFO] [stdout] 4529 | /// [`fetch`](Self::fetch) emits
[INFO] [stdout]      |               ^^^^^^^^^^^ the struct `DatesQuerySet` has no field or associated item named `fetch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `DatesQuerySet::order_desc(true)`
[INFO] [stdout]     --> src/query/mod.rs:4586:11
[INFO] [stdout]      |
[INFO] [stdout] 4586 |     /// [`DatesQuerySet::order_desc(true)`] for newest-first.
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `DatesQuerySet` has no field or associated item named `order_desc(true)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Array` links to private item `self`
[INFO] [stdout]   --> src/sql/array.rs:49:59
[INFO] [stdout]    |
[INFO] [stdout] 49 | /// Typed PostgreSQL array column — see the [module docs](self).
[INFO] [stdout]    |                                                           ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `write_json_contains`
[INFO] [stdout]    --> src/sql/dialect.rs:650:22
[INFO] [stdout]     |
[INFO] [stdout] 650 |     /// Inverse of [`write_json_contains`]: `<col> <@ <p>::jsonb` (Postgres) /
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^ no item named `write_json_contains` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `write_json_has_any_keys`
[INFO] [stdout]    --> src/sql/dialect.rs:678:41
[INFO] [stdout]     |
[INFO] [stdout] 678 |     /// `JsonHasAllKeys` companion of [`write_json_has_any_keys`].
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^ no item named `write_json_has_any_keys` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `acquire_session_lock_sql`
[INFO] [stdout]    --> src/sql/dialect.rs:738:11
[INFO] [stdout]     |
[INFO] [stdout] 738 |     /// [`acquire_session_lock_sql`]. Default `None`. Errors during
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `acquire_session_lock_sql` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QuerySet::fetch_paginated_on`
[INFO] [stdout]  --> src/sql/executor/page.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | /// Result of [`QuerySet::fetch_paginated_on`] — a slice of rows
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `QuerySet` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | /// Like [`insert`] but accepts any sqlx executor — `&PgPool`,
[INFO] [stdout]    |            ^^^^^^ no item named `insert` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | /// As [`insert`].
[INFO] [stdout]    |          ^^^^^^ no item named `insert` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert_returning`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | /// Like [`insert_returning`] but accepts any sqlx executor.
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^ no item named `insert_returning` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `insert_returning_on`
[INFO] [stdout]    |
[INFO] [stdout] 46 | /// Like [`insert_returning_on`] but accepts any sqlx executor.
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert_returning`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:49:10
[INFO] [stdout]    |
[INFO] [stdout] 49 | /// As [`insert_returning`].
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^ no item named `insert_returning` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `insert_returning_on`
[INFO] [stdout]    |
[INFO] [stdout] 49 | /// As [`insert_returning_on`].
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_insert`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | /// Like [`bulk_insert`] but accepts any sqlx executor.
[INFO] [stdout]    |            ^^^^^^^^^^^ no item named `bulk_insert` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `bulk_insert_on`
[INFO] [stdout]    |
[INFO] [stdout] 70 | /// Like [`bulk_insert_on`] but accepts any sqlx executor.
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_insert`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 73 | /// As [`bulk_insert`].
[INFO] [stdout]    |          ^^^^^^^^^^^ no item named `bulk_insert` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `bulk_insert_on`
[INFO] [stdout]    |
[INFO] [stdout] 73 | /// As [`bulk_insert_on`].
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `update`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:95:12
[INFO] [stdout]    |
[INFO] [stdout] 95 | /// Like [`update`] but accepts any sqlx executor.
[INFO] [stdout]    |            ^^^^^^ no item named `update` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `update`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 98 | /// As [`update`].
[INFO] [stdout]    |          ^^^^^^ no item named `update` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `delete`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout] 113 | /// Like [`delete`] but accepts any sqlx executor.
[INFO] [stdout]     |            ^^^^^^ no item named `delete` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `delete`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:116:10
[INFO] [stdout]     |
[INFO] [stdout] 116 | /// As [`delete`].
[INFO] [stdout]     |          ^^^^^^ no item named `delete` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_rows`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 130 | /// Like [`select_rows`] but accepts any sqlx executor — `&PgPool`,
[INFO] [stdout]     |            ^^^^^^^^^^^ no item named `select_rows` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_rows_on`
[INFO] [stdout]     |
[INFO] [stdout] 130 | /// Like [`select_rows_on`] but accepts any sqlx executor — `&PgPool`,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::extractors::Tenant`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:133:7
[INFO] [stdout]     |
[INFO] [stdout] 133 | /// [`crate::extractors::Tenant`] rather than a single global pool.
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `extractors` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_rows`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:136:10
[INFO] [stdout]     |
[INFO] [stdout] 136 | /// As [`select_rows`].
[INFO] [stdout]     |          ^^^^^^^^^^^ no item named `select_rows` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_rows_on`
[INFO] [stdout]     |
[INFO] [stdout] 136 | /// As [`select_rows_on`].
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_one_row`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 152 | /// Like [`select_one_row`] but accepts any sqlx executor.
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ no item named `select_one_row` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_one_row_on`
[INFO] [stdout]     |
[INFO] [stdout] 152 | /// Like [`select_one_row_on`] but accepts any sqlx executor.
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_one_row`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:155:10
[INFO] [stdout]     |
[INFO] [stdout] 155 | /// As [`select_one_row`].
[INFO] [stdout]     |          ^^^^^^^^^^^^^^ no item named `select_one_row` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_one_row_on`
[INFO] [stdout]     |
[INFO] [stdout] 155 | /// As [`select_one_row_on`].
[INFO] [stdout]     |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `row_to_json_sqlite`
[INFO] [stdout]   --> src/sql/executor/row_to_json.rs:47:39
[INFO] [stdout]    |
[INFO] [stdout] 47 | /// types) and continues to live in [`row_to_json_sqlite`].
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^ no item named `row_to_json_sqlite` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QuerySet::explain_on`
[INFO] [stdout]   --> src/sql/executor/explain.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 | /// Knobs for [`QuerySet::explain_on`]. Defaults render plain
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^ no item named `QuerySet` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `atomic`
[INFO] [stdout]   --> src/sql/executor/atomic.rs:49:51
[INFO] [stdout]    |
[INFO] [stdout] 49 | /// Future>>` is the standard escape hatch. The [`atomic!`] macro
[INFO] [stdout]    |                                                   ^^^^^^^ this link resolves to the function `atomic`, which is not a macro
[INFO] [stdout]    |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]    |
[INFO] [stdout] 49 - /// Future>>` is the standard escape hatch. The [`atomic!`] macro
[INFO] [stdout] 49 + /// Future>>` is the standard escape hatch. The [`atomic()`] macro
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `fetch_aggregate_dict` links to private item `fetch_values_dict`
[INFO] [stdout]    --> src/sql/executor/values.rs:238:38
[INFO] [stdout]     |
[INFO] [stdout] 238 | /// the tri-dialect counterpart of [`fetch_values_dict`] for the
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Sqlx`
[INFO] [stdout]    --> src/sql/executor/values.rs:567:13
[INFO] [stdout]     |
[INFO] [stdout] 567 |     /// - [`ExecError::Sqlx`] for driver / network / decode failures.
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Sqlx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Sqlx`
[INFO] [stdout]    --> src/sql/executor/values.rs:634:13
[INFO] [stdout]     |
[INFO] [stdout] 634 |     /// - [`ExecError::Sqlx`] for driver / network / decode failures.
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Sqlx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]    --> src/sql/executor/values.rs:735:11
[INFO] [stdout]     |
[INFO] [stdout] 735 |     /// [`ExecError::Query(QueryError::UnknownField)`] (with field
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]    --> src/sql/executor/values.rs:866:11
[INFO] [stdout]     |
[INFO] [stdout] 866 |     /// [`ExecError::Query(QueryError::UnknownField)`] when `col`
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `UpdaterPool::execute_pool`
[INFO] [stdout]     --> src/sql/executor/values.rs:1070:14
[INFO] [stdout]      |
[INFO] [stdout] 1070 |     /// As [`UpdaterPool::execute_pool`], plus
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `UpdaterPool` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]     --> src/sql/executor/values.rs:1071:11
[INFO] [stdout]      |
[INFO] [stdout] 1071 |     /// [`ExecError::Query(QueryError::UnknownField)`] when `col`
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Updater`
[INFO] [stdout]    --> src/sql/executor/mod.rs:704:39
[INFO] [stdout]     |
[INFO] [stdout] 704 | /// Backend-agnostic counterpart of [`Updater`]. `UpdateBuilder` gets
[INFO] [stdout]     |                                       ^^^^^^^ no item named `Updater` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Updater::execute`
[INFO] [stdout]    --> src/sql/executor/mod.rs:715:14
[INFO] [stdout]     |
[INFO] [stdout] 715 |     /// As [`Updater::execute`].
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^ no item named `Updater` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `raw_query`
[INFO] [stdout]    --> src/sql/executor/mod.rs:941:12
[INFO] [stdout]     |
[INFO] [stdout] 941 | /// Like [`raw_query`] but accepts any sqlx executor.
[INFO] [stdout]     |            ^^^^^^^^^ no item named `raw_query` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `raw_query_on`
[INFO] [stdout]     |
[INFO] [stdout] 941 | /// Like [`raw_query_on`] but accepts any sqlx executor.
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `raw_query`
[INFO] [stdout]    --> src/sql/executor/mod.rs:944:10
[INFO] [stdout]     |
[INFO] [stdout] 944 | /// As [`raw_query`].
[INFO] [stdout]     |          ^^^^^^^^^ no item named `raw_query` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `raw_query_on`
[INFO] [stdout]     |
[INFO] [stdout] 944 | /// As [`raw_query_on`].
[INFO] [stdout]     |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `fetch_aggregate`
[INFO] [stdout]    --> src/sql/executor/mod.rs:964:12
[INFO] [stdout]     |
[INFO] [stdout] 964 | /// Like [`fetch_aggregate`] but accepts any sqlx executor.
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ no item named `fetch_aggregate` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `fetch_aggregate_on`
[INFO] [stdout]     |
[INFO] [stdout] 964 | /// Like [`fetch_aggregate_on`] but accepts any sqlx executor.
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `fetch_aggregate`
[INFO] [stdout]    --> src/sql/executor/mod.rs:967:10
[INFO] [stdout]     |
[INFO] [stdout] 967 | /// As [`fetch_aggregate`].
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^ no item named `fetch_aggregate` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `fetch_aggregate_on`
[INFO] [stdout]     |
[INFO] [stdout] 967 | /// As [`fetch_aggregate_on`].
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1092:54
[INFO] [stdout]      |
[INFO] [stdout] 1092 | /// `INSERT` against either backend. Equivalent to [`insert`] but
[INFO] [stdout]      |                                                      ^^^^^^ no item named `insert` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1097:10
[INFO] [stdout]      |
[INFO] [stdout] 1097 | /// As [`insert`].
[INFO] [stdout]      |          ^^^^^^ no item named `insert` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SqlError::OperatorNotSupportedInDialect`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1126:9
[INFO] [stdout]      |
[INFO] [stdout] 1126 | /// - [`SqlError::OperatorNotSupportedInDialect`] from the writer when
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `SqlError` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InsertReturningPool::MySqlAutoId`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1134:7
[INFO] [stdout]      |
[INFO] [stdout] 1134 | /// [`InsertReturningPool::MySqlAutoId`] — callers handle the two
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `InsertReturningPool` has no variant or associated item named `MySqlAutoId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `update`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1239:10
[INFO] [stdout]      |
[INFO] [stdout] 1239 | /// As [`update`].
[INFO] [stdout]      |          ^^^^^^ no item named `update` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `delete`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1248:10
[INFO] [stdout]      |
[INFO] [stdout] 1248 | /// As [`delete`].
[INFO] [stdout]      |          ^^^^^^ no item named `delete` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `count_rows`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1257:10
[INFO] [stdout]      |
[INFO] [stdout] 1257 | /// As [`count_rows`].
[INFO] [stdout]      |          ^^^^^^^^^^ no item named `count_rows` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_insert`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1264:7
[INFO] [stdout]      |
[INFO] [stdout] 1264 | /// [`bulk_insert`] does for Postgres' `RETURNING` shape — the macro
[INFO] [stdout]      |       ^^^^^^^^^^^ no item named `bulk_insert` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `bulk_insert_on`
[INFO] [stdout]      |
[INFO] [stdout] 1264 | /// [`bulk_insert_on`] does for Postgres' `RETURNING` shape — the macro
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_insert`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1269:10
[INFO] [stdout]      |
[INFO] [stdout] 1269 | /// As [`bulk_insert`].
[INFO] [stdout]      |          ^^^^^^^^^^^ no item named `bulk_insert` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `bulk_insert_on`
[INFO] [stdout]      |
[INFO] [stdout] 1269 | /// As [`bulk_insert_on`].
[INFO] [stdout]      |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_update`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1283:10
[INFO] [stdout]      |
[INFO] [stdout] 1283 | /// As [`bulk_update`].
[INFO] [stdout]      |          ^^^^^^^^^^^ no item named `bulk_update` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_rows`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1744:31
[INFO] [stdout]      |
[INFO] [stdout] 1744 | /// into `T`. Equivalent to [`select_rows`] but takes [`Pool`] and
[INFO] [stdout]      |                               ^^^^^^^^^^^ no item named `select_rows` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_rows_on`
[INFO] [stdout]      |
[INFO] [stdout] 1744 | /// into `T`. Equivalent to [`select_rows_on`] but takes [`Pool`] and
[INFO] [stdout]      |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_rows`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1750:10
[INFO] [stdout]      |
[INFO] [stdout] 1750 | /// As [`select_rows`].
[INFO] [stdout]      |          ^^^^^^^^^^^ no item named `select_rows` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_rows_on`
[INFO] [stdout]      |
[INFO] [stdout] 1750 | /// As [`select_rows_on`].
[INFO] [stdout]      |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_one_row`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1795:10
[INFO] [stdout]      |
[INFO] [stdout] 1795 | /// As [`select_one_row`] but routed through `&Pool`.
[INFO] [stdout]      |          ^^^^^^^^^^^^^^ no item named `select_one_row` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_one_row_on`
[INFO] [stdout]      |
[INFO] [stdout] 1795 | /// As [`select_one_row_on`] but routed through `&Pool`.
[INFO] [stdout]      |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `fetch_aggregate`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1861:10
[INFO] [stdout]      |
[INFO] [stdout] 1861 | /// of [`fetch_aggregate`].
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ no item named `fetch_aggregate` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `fetch_aggregate_on`
[INFO] [stdout]      |
[INFO] [stdout] 1861 | /// of [`fetch_aggregate_on`].
[INFO] [stdout]      |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `fetch_aggregate`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1868:10
[INFO] [stdout]      |
[INFO] [stdout] 1868 | /// As [`fetch_aggregate`].
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ no item named `fetch_aggregate` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `fetch_aggregate_on`
[INFO] [stdout]      |
[INFO] [stdout] 1868 | /// As [`fetch_aggregate_on`].
[INFO] [stdout]      |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `raw_query`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1926:7
[INFO] [stdout]      |
[INFO] [stdout] 1926 | /// [`raw_query`].
[INFO] [stdout]      |       ^^^^^^^^^ no item named `raw_query` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `raw_query_on`
[INFO] [stdout]      |
[INFO] [stdout] 1926 | /// [`raw_query_on`].
[INFO] [stdout]      |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `raw_query`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1934:10
[INFO] [stdout]      |
[INFO] [stdout] 1934 | /// As [`raw_query`].
[INFO] [stdout]      |          ^^^^^^^^^ no item named `raw_query` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `raw_query_on`
[INFO] [stdout]      |
[INFO] [stdout] 1934 | /// As [`raw_query_on`].
[INFO] [stdout]      |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2602:11
[INFO] [stdout]      |
[INFO] [stdout] 2602 |     /// [`ExecError::Query(QueryError::UnknownField)`] (field `"<pk>"`)
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Driver(sqlx::Error::RowNotFound)`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2624:11
[INFO] [stdout]      |
[INFO] [stdout] 2624 |     /// [`ExecError::Driver(sqlx::Error::RowNotFound)`] when the
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Driver(sqlx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Driver(sqlx::Error::RowNotFound)`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2674:11
[INFO] [stdout]      |
[INFO] [stdout] 2674 |     /// [`ExecError::Driver(sqlx::Error::RowNotFound)`] on empty
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Driver(sqlx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `iterator` links to private item `ChunkedIter`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2805:36
[INFO] [stdout]      |
[INFO] [stdout] 2805 |     ///   chunks but outside the [`ChunkedIter`] API.
[INFO] [stdout]      |                                    ^^^^^^^^^^^ this item is private
[INFO] [stdout]      |
[INFO] [stdout]      = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QueryError`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2811:19
[INFO] [stdout]      |
[INFO] [stdout] 2811 |     /// Returns [`QueryError`] if the queryset fails to compile.
[INFO] [stdout]      |                   ^^^^^^^^^^ no item named `QueryError` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Fetcher`
[INFO] [stdout]    --> src/sql/foreign_key.rs:275:58
[INFO] [stdout]     |
[INFO] [stdout] 275 |     /// * Any [`ExecError`] produced by the underlying [`Fetcher`].
[INFO] [stdout]     |                                                          ^^^^^^^ no item named `Fetcher` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Point` links to private item `self`
[INFO] [stdout]   --> src/sql/geometry.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 45 | /// [module docs](self). Carries its SRID so it round-trips losslessly
[INFO] [stdout]    |                   ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `HStore` links to private item `self`
[INFO] [stdout]   --> src/sql/hstore.rs:50:62
[INFO] [stdout]    |
[INFO] [stdout] 50 | /// Typed PostgreSQL `hstore` column — see the [module docs](self).
[INFO] [stdout]    |                                                              ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]   --> src/sql/model_shortcuts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | /// [`ExecError::Query(QueryError::UnknownField)`] keyed by the
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]   --> src/sql/model_shortcuts.rs:41:7
[INFO] [stdout]    |
[INFO] [stdout] 41 | /// [`ExecError::Query(QueryError::UnknownField)`] when the model
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `UpdaterPool::execute_pool`
[INFO] [stdout]   --> src/sql/model_shortcuts.rs:72:10
[INFO] [stdout]    |
[INFO] [stdout] 72 | /// As [`UpdaterPool::execute_pool`]; or
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `UpdaterPool` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]   --> src/sql/model_shortcuts.rs:73:7
[INFO] [stdout]    |
[INFO] [stdout] 73 | /// [`ExecError::Query(QueryError::UnknownField)`] when `col` does
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FetcherPool::fetch`
[INFO] [stdout]    --> src/sql/model_shortcuts.rs:176:10
[INFO] [stdout]     |
[INFO] [stdout] 176 | /// As [`FetcherPool::fetch`]; or
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^ no item named `FetcherPool` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]    --> src/sql/model_shortcuts.rs:177:7
[INFO] [stdout]     |
[INFO] [stdout] 177 | /// [`ExecError::Query(QueryError::UnknownField)`] when any
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::MySql`
[INFO] [stdout]   --> src/sql/pool.rs:47:38
[INFO] [stdout]    |
[INFO] [stdout] 47 | //!   `pool.dialect()` returns the [`crate::sql::MySql`] dialect with
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^ no item named `MySql` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PoolError::MysqlNotYetImplemented`
[INFO] [stdout]    --> src/sql/pool.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |     ///   [`PoolError::MysqlNotYetImplemented`] in batch1, full
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `PoolError` has no variant or associated item named `MysqlNotYetImplemented`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PoolError::MysqlNotYetImplemented`
[INFO] [stdout]    --> src/sql/pool.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |     /// - [`PoolError::MysqlNotYetImplemented`] — see error variant.
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `PoolError` has no variant or associated item named `MysqlNotYetImplemented`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Range` links to private item `self`
[INFO] [stdout]   --> src/sql/range.rs:66:59
[INFO] [stdout]    |
[INFO] [stdout] 66 | /// Typed PostgreSQL range column — see the [module docs](self).
[INFO] [stdout]    |                                                           ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Vector` links to private item `self`
[INFO] [stdout]   --> src/sql/vector.rs:47:55
[INFO] [stdout]    |
[INFO] [stdout] 47 | /// pgvector embedding column — see the [module docs](self). Transparent
[INFO] [stdout]    |                                                       ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Expr::RelAggregate`
[INFO] [stdout]     --> src/sql/writers.rs:3632:44
[INFO] [stdout]      |
[INFO] [stdout] 3632 | /// subquery ([`WhereExpr::RelExists`] / [`Expr::RelAggregate`], issue
[INFO] [stdout]      |                                            ^^^^^^^^^^^^^^^^^^ no item named `Expr` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Expr::OuterRef`
[INFO] [stdout]     --> src/sql/writers.rs:3636:7
[INFO] [stdout]      |
[INFO] [stdout] 3636 | /// [`Expr::OuterRef`], whose referent is the second-from-top frame).
[INFO] [stdout]      |       ^^^^^^^^^^^^^^ no item named `Expr` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `active_filter`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`active_filter`] returns `None`, [`compose_with_active`] returns
[INFO] [stdout]            ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `active_filter` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `compose_with_active`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`active_filter`] returns `None`, [`compose_with_active`] returns
[INFO] [stdout]                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `compose_with_active` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `urls`
[INFO] [stdout]   --> src/admin/mod.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | //! - [`urls`] — `router(pool)`, `Builder`, `Config`, `AppState` (route table).
[INFO] [stdout]    |         ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `views`
[INFO] [stdout]   --> src/admin/mod.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 | //! - [`views`] — one async fn per route; consumes the inventory registry.
[INFO] [stdout]    |         ^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `helpers`
[INFO] [stdout]   --> src/admin/mod.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | //! - [`helpers`] — model lookup, FK joins, render_cell, render_form, pager.
[INFO] [stdout]    |         ^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `templates`
[INFO] [stdout]   --> src/admin/mod.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | //! - [`templates`] — bundled Tera registry + render entry-point.
[INFO] [stdout]    |         ^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `errors`
[INFO] [stdout]   --> src/admin/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 | //! - [`errors`] — `AdminError` and its `IntoResponse` impl.
[INFO] [stdout]    |         ^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::TenantUserModel`
[INFO] [stdout]   --> src/admin/helpers.rs:26:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | /// [`crate::tenancy::TenantUserModel`] visible to the admin even when
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::Org`
[INFO] [stdout]   --> src/admin/helpers.rs:58:20
[INFO] [stdout]    |
[INFO] [stdout] 58 | /// the resolved [`crate::tenancy::Org`].
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AdminError::Internal`
[INFO] [stdout]    --> src/admin/helpers.rs:272:36
[INFO] [stdout]     |
[INFO] [stdout] 272 | /// `Option::None` no-PK case to [`AdminError::Internal`]. Folds the
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^ no item named `AdminError` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_cell`
[INFO] [stdout]    --> src/admin/helpers.rs:445:42
[INFO] [stdout]     |
[INFO] [stdout] 445 | /// v0.37 — JSON-bridge counterpart of [`render_cell`]. Same FK-link
[INFO] [stdout]     |                                          ^^^^^^^^^^^ no item named `render_cell` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_admin_inline`
[INFO] [stdout]   --> src/admin/inlines.rs:79:7
[INFO] [stdout]    |
[INFO] [stdout] 79 | /// [`register_admin_inline!`] invocation.
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^ no item named `register_admin_inline` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_admin_inline` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ensure_table`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           bootstrapped idempotently via [`ensure_table`] (the same pattern as
[INFO] [stdout]                                          ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ensure_table` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AdminTotp::SCHEMA`
[INFO] [stdout]   --> src/admin/totp_store.rs:40:33
[INFO] [stdout]    |
[INFO] [stdout] 40 | /// Drift-free: rendered from [`AdminTotp::SCHEMA`] through the migration
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^ the struct `AdminTotp` has no field or associated item named `SCHEMA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_value_for_input`
[INFO] [stdout]   --> src/admin/render.rs:72:39
[INFO] [stdout]    |
[INFO] [stdout] 72 | /// Backend-agnostic counterpart of [`render_value_for_input`]. Takes
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^^^^^ no item named `render_value_for_input` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `render_value_for_input_json`
[INFO] [stdout]    |
[INFO] [stdout] 72 | /// Backend-agnostic counterpart of [`render_value_for_input_json`]. Takes
[INFO] [stdout]    |                                                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_value`
[INFO] [stdout]    --> src/admin/render.rs:469:34
[INFO] [stdout]     |
[INFO] [stdout] 469 | /// Tri-dialect counterpart of [`render_value`]. Takes a JSON object
[INFO] [stdout]     |                                  ^^^^^^^^^^^^ no item named `render_value` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `render_input`
[INFO] [stdout]     |
[INFO] [stdout] 469 - /// Tri-dialect counterpart of [`render_value`]. Takes a JSON object
[INFO] [stdout] 469 + /// Tri-dialect counterpart of [`render_input`]. Takes a JSON object
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `read_joined_value_as_html`
[INFO] [stdout]    --> src/admin/render.rs:586:34
[INFO] [stdout]     |
[INFO] [stdout] 586 | /// Tri-dialect counterpart of [`read_joined_value_as_html`]. Reads
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `read_joined_value_as_html` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `read_joined_value_as_html_json`
[INFO] [stdout]     |
[INFO] [stdout] 586 | /// Tri-dialect counterpart of [`read_joined_value_as_html_json`]. Reads
[INFO] [stdout]     |                                                           +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `read_value_as_json`
[INFO] [stdout]    --> src/admin/render.rs:634:34
[INFO] [stdout]     |
[INFO] [stdout] 634 | /// Tri-dialect counterpart of [`read_value_as_json`]. Walks the
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^ no item named `read_value_as_json` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `read_value_as_string`
[INFO] [stdout]     |
[INFO] [stdout] 634 - /// Tri-dialect counterpart of [`read_value_as_json`]. Walks the
[INFO] [stdout] 634 + /// Tri-dialect counterpart of [`read_value_as_string`]. Walks the
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AdminAction`
[INFO] [stdout]   --> src/admin/urls.rs:20:29
[INFO] [stdout]    |
[INFO] [stdout] 20 | /// Future returned by an [`AdminAction`] handler.
[INFO] [stdout]    |                             ^^^^^^^^^^^ no item named `AdminAction` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `AdminActionFn`
[INFO] [stdout]    |
[INFO] [stdout] 20 | /// Future returned by an [`AdminActionFn`] handler.
[INFO] [stdout]    |                                        ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `branding::build_brand_css`
[INFO] [stdout]    --> src/admin/urls.rs:111:43
[INFO] [stdout]     |
[INFO] [stdout] 111 |     /// the tenancy admin builds it via [`branding::build_brand_css`]
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `branding` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::RouteConfig::audit_url`
[INFO] [stdout]    --> src/admin/urls.rs:406:11
[INFO] [stdout]     |
[INFO] [stdout] 406 |     /// [`crate::tenancy::RouteConfig::audit_url`] (which since
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::RouteConfig::static_url`
[INFO] [stdout]    --> src/admin/urls.rs:421:16
[INFO] [stdout]     |
[INFO] [stdout] 421 |     /// from [`crate::tenancy::RouteConfig::static_url`] —
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::RouteConfig::change_password_url`
[INFO] [stdout]    --> src/admin/urls.rs:435:11
[INFO] [stdout]     |
[INFO] [stdout] 435 |     /// [`crate::tenancy::RouteConfig::change_password_url`].
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SecurityHeadersLayer`
[INFO] [stdout]    --> src/config/sections.rs:587:15
[INFO] [stdout]     |
[INFO] [stdout] 587 |     /// the [`SecurityHeadersLayer`] preset.
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^ no item named `SecurityHeadersLayer` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Model`
[INFO] [stdout]  --> src/forms/mod.rs:9:29
[INFO] [stdout]   |
[INFO] [stdout] 9 | //! | [`ModelForm`] | Any [`Model`] table — parse + validate + save without a dedicated struct |
[INFO] [stdout]   |                             ^^^^^ no item named `Model` in scope
[INFO] [stdout]   |
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Layer`
[INFO] [stdout]   --> src/forms/csrf.rs:63:45
[INFO] [stdout]    |
[INFO] [stdout] 63 | /// Create the CSRF middleware as a tower [`Layer`].
[INFO] [stdout]    |                                             ^^^^^ no item named `Layer` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `layer`
[INFO] [stdout]    |
[INFO] [stdout] 63 - /// Create the CSRF middleware as a tower [`Layer`].
[INFO] [stdout] 63 + /// Create the CSRF middleware as a tower [`layer`].
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Layer`
[INFO] [stdout]    --> src/forms/csrf.rs:289:17
[INFO] [stdout]     |
[INFO] [stdout] 289 | /// The tower [`Layer`] implementation. Wraps inner services with
[INFO] [stdout]     |                 ^^^^^ no item named `Layer` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `layer`
[INFO] [stdout]     |
[INFO] [stdout] 289 - /// The tower [`Layer`] implementation. Wraps inner services with
[INFO] [stdout] 289 + /// The tower [`layer`] implementation. Wraps inner services with
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Model`
[INFO] [stdout]    --> src/forms/mod.rs:487:56
[INFO] [stdout]     |
[INFO] [stdout] 487 | /// Schema-driven form that can insert or update any [`Model`] row.
[INFO] [stdout]     |                                                        ^^^^^ no item named `Model` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `set` links to private item `Self::columns`
[INFO] [stdout]    --> src/forms/mod.rs:719:19
[INFO] [stdout]     |
[INFO] [stdout] 719 |     /// inspect [`Self::columns`] / [`Self::has`] first.
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NullCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`NullCache`] | `cache` | No-op; all reads return `None`. Good for tests. |
[INFO] [stdout]              ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NullCache` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemoryCache`] | `cache` | Per-process HashMap with TTL. Zero external deps. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryCache` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FileCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`FileCache`] | `cache` | File-system, one file per key (#408). |
[INFO] [stdout]              ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FileCache` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `db_backend::DatabaseCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`DatabaseCache`](db_backend::DatabaseCache) | `cache` + any DB feature | DB table, tri-dialect upsert (#409). |
[INFO] [stdout]                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `db_backend` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `redis_backend::RedisCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`RedisCache`](redis_backend::RedisCache) | `cache-redis` | Redis-backed via async connection manager. |
[INFO] [stdout]                            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `redis_backend` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `BoxedCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Use [`BoxedCache`] as a convenient alias.
[INFO] [stdout]                ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `BoxedCache` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `redis_backend::RedisCache`
[INFO] [stdout]    --> src/cache/mod.rs:306:21
[INFO] [stdout]     |
[INFO] [stdout] 306 | /// - `"redis"` → [`redis_backend::RedisCache`] (requires
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `redis_backend` in scope
[INFO] [stdout]     |
[INFO] [stdout] help: there's a similarly named item `db_backend`
[INFO] [stdout]     |
[INFO] [stdout] 306 - /// - `"redis"` → [`redis_backend::RedisCache`] (requires
[INFO] [stdout] 306 + /// - `"redis"` → [`db_backend::RedisCache`] (requires
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `cached_render`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           This module ships [`cached_render`], the handler-side equivalent:
[INFO] [stdout]                              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `cached_render` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `request`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           `got_request_exception`) live in [`request`] — separate registry,
[INFO] [stdout]                                             ^^^^^^^^^
[INFO] [stdout]   = note: no item named `request` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `request::RequestSignalsLayer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`request::RequestSignalsLayer`] tower layer that fires them
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `request` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `prune_all`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           CLI or call [`prune_all`] from app code (cron, background job,
[INFO] [stdout]                        ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `prune_all` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_prunable`
[INFO] [stdout]   --> src/prunable.rs:78:22
[INFO] [stdout]    |
[INFO] [stdout] 78 | /// must also call [`register_prunable!`] to advertise the impl to
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^ no item named `register_prunable` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_prunable` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::for_each_tenant`
[INFO] [stdout]    --> src/prunable.rs:206:30
[INFO] [stdout]     |
[INFO] [stdout] 206 | /// `public`. Fan out with [`crate::tenancy::for_each_tenant`] (#1226).
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Cache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           sliding-window counter on top of the same [`Cache`] trait.
[INFO] [stdout]                                                      ^^^^^^^
[INFO] [stdout]   = note: no item named `Cache` in scope
[INFO] [stdout]   = help: there's a similarly named item `cache`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HealthRouter::check`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Add additional checks (Redis, S3, external APIs) via [`HealthRouter::check`]:
[INFO] [stdout]                                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HealthRouter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HealthRouter::cache_probe`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`HealthRouter::cache_probe`] — `Cache::set`/`get` round-trip
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HealthRouter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HealthRouter::http_probe`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`HealthRouter::http_probe`] — GET a URL, checking it returns 2xx
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HealthRouter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HealthRouter::tcp_probe`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`HealthRouter::tcp_probe`] — open a TCP connection. Always
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HealthRouter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HttpClient`
[INFO] [stdout]    --> src/health.rs:215:45
[INFO] [stdout]     |
[INFO] [stdout] 215 |     /// Built-in probe — issues a GET via [`HttpClient`] and checks the
[INFO] [stdout]     |                                             ^^^^^^^^^^ no item named `HttpClient` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ConsoleMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`ConsoleMailer`] | Development — prints emails to stdout. Default. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ConsoleMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemoryMailer`] | Tests — captures emails into a `Vec` for assertions. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FileMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`FileMailer`] | Dev / staging — writes one `.eml` per send under a directory. |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FileMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NullMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`NullMailer`] | Production guardrail — accepts and discards every send (CI / disabled mail). |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NullMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SmtpMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`SmtpMailer`] | Production — async lettre + rustls SMTP relay (`email-smtp` feature). |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SmtpMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SmtpMailer`
[INFO] [stdout]    --> src/email/mod.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 |     /// * [`SmtpMailer`] (feature `email-smtp`) — sent as a SinglePart
[INFO] [stdout]     |             ^^^^^^^^^^ no item named `SmtpMailer` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Email`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - The full [`Email`] (subject, bodies, recipients, headers) is
[INFO] [stdout]                       ^^^^^^^
[INFO] [stdout]   = note: no item named `Email` in scope
[INFO] [stdout]   = help: there's a similarly named item `email`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Cast`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           A model field typed [`Cast<C>`] stores its logical value `C::Value`
[INFO] [stdout]                                ^^^^^^^^^
[INFO] [stdout]   = note: no item named `Cast` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CastValue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           in memory but reads/writes the database through the [`CastValue`]
[INFO] [stdout]                                                                ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CastValue` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CastValue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Implement [`CastValue`] for your own marker type and use it as
[INFO] [stdout]                      ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CastValue` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EncryptedString`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`EncryptedString`] built-in is the reference implementation; a
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `EncryptedString` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `tenancy::admin`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           by [`signed_url`], [`auth_flows`], and [`tenancy::admin`]; promoted
[INFO] [stdout]                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `url_codec` links to private item `crypto`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`pagination`], [`urls`], [`crypto`], [`default_filters`]) import it.
[INFO] [stdout]                                       ^^^^^^^^
[INFO] [stdout]   = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::admin`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`crate::auth_flows`], and [`crate::tenancy::admin`] before the
[INFO] [stdout]                                       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `sign_request`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Use [`sign_request`] to build the `Authorization` header value
[INFO] [stdout]                ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `sign_request` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::jwt_lifecycle`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Standalone alternative to [`crate::tenancy::jwt_lifecycle`] (which
[INFO] [stdout]                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `tenancy::jwt_lifecycle::JwtLifecycle`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`tenancy::jwt_lifecycle::JwtLifecycle`] and the impersonation
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryJtiStore`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`InMemoryJtiStore`] — process-local `Mutex<HashMap<jti, exp>>`.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryJtiStore` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `JtiStore`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - Roll your own — implement [`JtiStore`] against Redis, a
[INFO] [stdout]                                          ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `JtiStore` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::cache::RedisCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`crate::cache::RedisCache`] is the smallest possible bridge.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RedisCache` in module `cache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::jwt_lifecycle::JwtLifecycle`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`crate::tenancy::jwt_lifecycle::JwtLifecycle`] and the
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Media`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           DDL bootstrap. See the [`Media`] struct for the column definitions.
[INFO] [stdout]                                   ^^^^^^^
[INFO] [stdout]   = note: no item named `Media` in scope
[INFO] [stdout]   = help: there's a similarly named item `media`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::testkit::migrate_framework`
[INFO] [stdout]   --> src/media/tag.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | //! tests, materialized by [`crate::testkit::migrate_framework`]). There is
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `testkit` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::for_each_tenant`
[INFO] [stdout]    --> src/media/mod.rs:587:27
[INFO] [stdout]     |
[INFO] [stdout] 587 |     /// fan it out with [`crate::tenancy::for_each_tenant`] and reach for
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NotificationDispatch`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           2. You impl `Notification<User>` for it, returning a [`NotificationDispatch`]
[INFO] [stdout]                                                                 ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NotificationDispatch` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NotificationResult`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           database / log delivery. The returned [`NotificationResult`] reports
[INFO] [stdout]                                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NotificationResult` in scope
[INFO] [stdout]   = help: there's a similarly named item `notifications`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryJobQueue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemoryJobQueue`] | Single-process apps, dev, tests. Jobs lost on restart. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryJobQueue` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordReset::issue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           1. User requests a reset → call [`PasswordReset::issue`] with their
[INFO] [stdout]                                              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordReset` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordReset::verify`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]              [`PasswordReset::verify`] → if Ok, render the "set new password" form.
[INFO] [stdout]               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordReset` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EmailVerification`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Same pattern with [`EmailVerification`] — issue the URL after signup,
[INFO] [stdout]                              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `EmailVerification` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `LocalStorage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`LocalStorage`] | Single-server deployments — files on local disk |
[INFO] [stdout]              ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `LocalStorage` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryStorage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemoryStorage`] | Tests — files in a `HashMap`, never touch disk |
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryStorage` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `s3::S3Storage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`s3::S3Storage`] | AWS S3, Cloudflare R2, Backblaze B2, MinIO — any S3-compatible API. Behind the `storage-s3` feature. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `s3` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::config::sections::I18nSettings`
[INFO] [stdout]    --> src/i18n/mod.rs:695:39
[INFO] [stdout]     |
[INFO] [stdout] 695 |     /// Build a `Translator` from a [`crate::config::sections::I18nSettings`]
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `sections` in module `config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::for_each_tenant`
[INFO] [stdout]   --> src/scheduler/mod.rs:97:11
[INFO] [stdout]    |
[INFO] [stdout] 97 |     /// [`crate::tenancy::for_each_tenant`] (#1226), and a
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EnvSecrets`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`EnvSecrets`] | Reads from environment variables (with optional prefix) |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `EnvSecrets` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemorySecrets`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemorySecrets`] | Tests — secrets in a HashMap |
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemorySecrets` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RequestId`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`RequestId`] axum extractor so handlers can include it in log events.
[INFO] [stdout]            ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RequestId` in scope
[INFO] [stdout]   = help: there's a similarly named item `request_id`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RequestIdLayer::always_generate`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           a fresh one with [`RequestIdLayer::always_generate`].
[INFO] [stdout]                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RequestIdLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AllowedHostsLayer::from_settings_list`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`AllowedHostsLayer::from_settings_list`]. Empty list disables
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `AllowedHostsLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SslRedirectLayer::proxy_ssl_header`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           header pair with [`SslRedirectLayer::proxy_ssl_header`] (Django
[INFO] [stdout]                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SslRedirectLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SslRedirectLayer::exempt`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`SslRedirectLayer::exempt`] takes prefix patterns; a request
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SslRedirectLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RealIp`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           request extensions as a [`RealIp`] value.
[INFO] [stdout]                                    ^^^^^^^^
[INFO] [stdout]   = note: no item named `RealIp` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `IdempotencyLayer::cache_status_codes`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`IdempotencyLayer::cache_status_codes`].
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `IdempotencyLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `IdempotencyLayer::scope`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`IdempotencyLayer::scope`] when you have multiple endpoints whose
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `IdempotencyLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StaticFiles::no_canonicalize`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             with [`StaticFiles::no_canonicalize`] if you intentionally
[INFO] [stdout]                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `StaticFiles` in scope
[INFO] [stdout]   = help: there's a similarly named item `static_files`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StaticFiles::serve_hidden`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             default — toggle via [`StaticFiles::serve_hidden`].
[INFO] [stdout]                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `StaticFiles` in scope
[INFO] [stdout]   = help: there's a similarly named item `static_files`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StaticFiles::cache_control`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             Override with [`StaticFiles::cache_control`].
[INFO] [stdout]                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `StaticFiles` in scope
[INFO] [stdout]   = help: there's a similarly named item `static_files`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ProblemDetails::with_extension`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           standard ones. Add them with [`ProblemDetails::with_extension`]:
[INFO] [stdout]                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ProblemDetails` in scope
[INFO] [stdout]   = help: there's a similarly named item `problem_details`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::cache::RedisCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Pair with [`crate::cache::RedisCache`] for cross-replica visibility.
[INFO] [stdout]                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RedisCache` in module `cache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FeatureFlags::ttl`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           with [`FeatureFlags::ttl`].
[INFO] [stdout]                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FeatureFlags` in scope
[INFO] [stdout]   = help: there's a similarly named item `feature_flags`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `DistributedLock::for_tenant`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`DistributedLock::for_tenant`] so each tenant gets its own lock
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `DistributedLock` in scope
[INFO] [stdout]   = help: there's a similarly named item `distributed_lock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `http.method`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`http.method`], [`http.status_code`]) that pre-date the current
[INFO] [stdout]             ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `http.method` in scope
[INFO] [stdout]   = help: there's a similarly named item `http_methods`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `http.status_code`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`http.method`], [`http.status_code`]) that pre-date the current
[INFO] [stdout]                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `http.status_code` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SignatureFormat`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             chosen [`SignatureFormat`]).
[INFO] [stdout]                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SignatureFormat` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `WebhookSubscription::header`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - Any extra headers added via [`WebhookSubscription::header`].
[INFO] [stdout]                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `WebhookSubscription` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `WebhookSubscription::retry_status_codes`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Customize per-subscription with [`WebhookSubscription::retry_status_codes`].
[INFO] [stdout]                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `WebhookSubscription` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::auth_backends`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           table + `ApiKeyBackend`), see [`crate::tenancy::auth_backends`]. This
[INFO] [stdout]                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::password`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`crate::tenancy::password`]. This module is the lower-level standalone
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Paginator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Page-number shape: [`Paginator`] + [`Page`]
[INFO] [stdout]                                  ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Paginator` in scope
[INFO] [stdout]   = help: there's a similarly named item `pagination`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Page`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Page-number shape: [`Paginator`] + [`Page`]
[INFO] [stdout]                                                  ^^^^^^
[INFO] [stdout]   = note: no item named `Page` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CursorPaginator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Cursor shape: [`CursorPaginator`] + [`Cursor`] + [`CursorPage`]
[INFO] [stdout]                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CursorPaginator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Cursor`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Cursor shape: [`CursorPaginator`] + [`Cursor`] + [`CursorPage`]
[INFO] [stdout]                                                   ^^^^^^^^
[INFO] [stdout]   = note: no item named `Cursor` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CursorPage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Cursor shape: [`CursorPaginator`] + [`Cursor`] + [`CursorPage`]
[INFO] [stdout]                                                                ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CursorPage` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SecurityHeadersLayer::strict`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`SecurityHeadersLayer::strict`] — production: HSTS 1y + preload, XFO=DENY,
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SecurityHeadersLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SecurityHeadersLayer::relaxed`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`SecurityHeadersLayer::relaxed`] — embeddable: HSTS 1y, XFO=SAMEORIGIN,
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SecurityHeadersLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SecurityHeadersLayer::dev`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`SecurityHeadersLayer::dev`] — local: nosniff only (HSTS would lock you to https forever)
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SecurityHeadersLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CSP_NONCE_PLACEHOLDER`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           header. If it contains the literal string [`CSP_NONCE_PLACEHOLDER`]
[INFO] [stdout]                                                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CSP_NONCE_PLACEHOLDER` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `verify`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`verify`] only checks the signature + expiry — it does **not** make
[INFO] [stdout]            ^^^^^^^^
[INFO] [stdout]   = note: no item named `verify` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EventBus`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           WebSocket handler scaffold — fan-out via the SSE [`EventBus`].
[INFO] [stdout]                                                               ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `EventBus` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Provider`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`OAuth2Provider`] handles **both** pure OAuth2 (GitHub, Discord, Slack)
[INFO] [stdout]            ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Provider` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Registry`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`OAuth2Registry`] maps `(tenant_id, provider_name)` to a configured
[INFO] [stdout]            ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Registry` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Provider`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`OAuth2Provider`]. Build it from config at startup, OR back it with the
[INFO] [stdout]            ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Provider` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Provider::from_discovery`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`OAuth2Provider::from_discovery`] fetches `.well-known/openid-configuration`
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Provider` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HttpClient`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`HttpClient`] when you want consistent retry + timeout behavior
[INFO] [stdout]            ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HttpClient` in scope
[INFO] [stdout]   = help: there's a similarly named item `http_client`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RequestBuilder::send_with_retry`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`RequestBuilder::send_with_retry`] (the call must be idempotent)
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RequestBuilder` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QueryRouterExt::query`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`QueryRouterExt::query`] wraps the *entire* existing [`MethodRouter`]
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `QueryRouterExt` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `MethodRouter`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`QueryRouterExt::query`] wraps the *entire* existing [`MethodRouter`]
[INFO] [stdout]                                                                  ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `MethodRouter` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Params`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`Params<T>`] deserializes `T` from the request querystring on GET /
[INFO] [stdout]            ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Params` in scope
[INFO] [stdout]   = help: there's a similarly named item `params`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PathItem::query`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           attaches a `QUERY` operation (RFC 10008) via [`PathItem::query`] is
[INFO] [stdout]                                                         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PathItem` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OpenApiSpec::new`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           1. **Hand-build** the spec with [`OpenApiSpec::new`] + the `add_*`
[INFO] [stdout]                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OpenApiSpec` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Schema::for_serializer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           2. **Generate** from [`Schema::for_serializer`] (when the
[INFO] [stdout]                                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Schema` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::middleware::RouterAuthExt`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Pair with [`RouterAuthExt`](crate::tenancy::middleware::RouterAuthExt)
[INFO] [stdout]                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Model`
[INFO] [stdout]    --> src/viewset/mod.rs:577:62
[INFO] [stdout]     |
[INFO] [stdout] 577 | /// Builder for a set of REST CRUD endpoints over a single [`Model`] table.
[INFO] [stdout]     |                                                              ^^^^^ no item named `Model` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `serializer` links to private item `Bridge`
[INFO] [stdout]    --> src/viewset/mod.rs:646:30
[INFO] [stdout]     |
[INFO] [stdout] 646 |     /// Internally boxes a [`Bridge<S>`] behind a [`SerializerBridge`]
[INFO] [stdout]     |                              ^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `serializer` links to private item `SerializerBridge`
[INFO] [stdout]    --> src/viewset/mod.rs:646:53
[INFO] [stdout]     |
[INFO] [stdout] 646 |     /// Internally boxes a [`Bridge<S>`] behind a [`SerializerBridge`]
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::tenant_router`
[INFO] [stdout]    --> src/viewset/mod.rs:880:47
[INFO] [stdout]     |
[INFO] [stdout] 880 |     /// `&PgPool`. For tenancy projects use [`Self::tenant_router`]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^ the struct `ViewSet` has no field or associated item named `tenant_router`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PgPool`
[INFO] [stdout]    --> src/viewset/mod.rs:987:13
[INFO] [stdout]     |
[INFO] [stdout] 987 | /// owned [`PgPool`] (the legacy `router(prefix, pool)` path); `Tenant`
[INFO] [stdout]     |             ^^^^^^ no item named `PgPool` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `Pool`
[INFO] [stdout]     |
[INFO] [stdout] 987 - /// owned [`PgPool`] (the legacy `router(prefix, pool)` path); `Tenant`
[INFO] [stdout] 987 + /// owned [`Pool`] (the legacy `router(prefix, pool)` path); `Tenant`
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Tenant`
[INFO] [stdout]    --> src/viewset/mod.rs:988:57
[INFO] [stdout]     |
[INFO] [stdout] 988 | /// is a marker that defers resolution to per-request [`Tenant`]
[INFO] [stdout]     |                                                         ^^^^^^ no item named `Tenant` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ViewSet::tenant_router`
[INFO] [stdout]    --> src/viewset/mod.rs:989:29
[INFO] [stdout]     |
[INFO] [stdout] 989 | /// extraction (the v0.30 [`ViewSet::tenant_router`] path).
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^ the struct `ViewSet` has no field or associated item named `tenant_router`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RESERVED_LIST_KEYS`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * [`RESERVED_LIST_KEYS`] / [`is_reserved_list_key`] — the param
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RESERVED_LIST_KEYS` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `is_reserved_list_key`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * [`RESERVED_LIST_KEYS`] / [`is_reserved_list_key`] — the param
[INFO] [stdout]                                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `is_reserved_list_key` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `parse_ordering`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * [`parse_ordering`] — the `?ordering=col,-col2,col3` split with
[INFO] [stdout]              ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `parse_ordering` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `clamp_page_size`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * [`clamp_page_size`] — the `?page_size=N` resolver with the
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `clamp_page_size` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ListView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`ListView`] | Paginated list — `?page=N` query param | `<table>_list.html` |
[INFO] [stdout]              ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ListView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `DetailView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`DetailView`] | Single row by primary key — `/{pk}` | `<table>_detail.html` |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `DetailView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CreateView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`CreateView`] | GET empty form / POST insert / 303 to `success_url` | `<table>_form.html` |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CreateView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `UpdateView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`UpdateView`] | GET prefilled form / POST update / 303 | `<table>_form.html` |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `UpdateView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `DeleteView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`DeleteView`] | GET confirm / POST delete / 303 | `<table>_confirm_delete.html` |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `DeleteView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::extractors::Tenant`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`crate::extractors::Tenant`] extractor. Mirrors
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `extractors` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ListView::tenant_action`
[INFO] [stdout]    --> src/template_views.rs:131:7
[INFO] [stdout]     |
[INFO] [stdout] 131 | /// [`ListView::tenant_action`] (per-request tenant connection).
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^ the struct `ListView` has no field or associated item named `tenant_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::tenant_action`
[INFO] [stdout]    --> src/template_views.rs:181:11
[INFO] [stdout]     |
[INFO] [stdout] 181 |     /// [`Self::tenant_action`].
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^ the struct `ListView` has no field or associated item named `tenant_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::tenant_action`
[INFO] [stdout]    --> src/template_views.rs:190:11
[INFO] [stdout]     |
[INFO] [stdout] 190 |     /// [`Self::tenant_action`] are not gated by this flag (mirrors
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^ the struct `ListView` has no field or associated item named `tenant_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::tenant_action`
[INFO] [stdout]    --> src/template_views.rs:405:11
[INFO] [stdout]     |
[INFO] [stdout] 405 |     /// [`Self::tenant_action`].
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^ the struct `ListView` has no field or associated item named `tenant_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::tenant_action`
[INFO] [stdout]    --> src/template_views.rs:462:15
[INFO] [stdout]     |
[INFO] [stdout] 462 |     /// Use [`Self::tenant_action`] inside tenancy projects.
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^ the struct `ListView` has no field or associated item named `tenant_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::tenant_action`
[INFO] [stdout]    --> src/template_views.rs:505:11
[INFO] [stdout]     |
[INFO] [stdout] 505 |     /// [`Self::tenant_action`] are NOT gated by this flag —
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^ the struct `ListView` has no field or associated item named `tenant_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::tenant_router`
[INFO] [stdout]    --> src/template_views.rs:599:47
[INFO] [stdout]     |
[INFO] [stdout] 599 |     /// same pool. For tenancy projects use [`Self::tenant_router`].
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^ the struct `ListView` has no field or associated item named `tenant_router`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `enabled`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           This module provides the inverse path. [`enabled`] decides whether
[INFO] [stdout]                                                   ^^^^^^^^^
[INFO] [stdout]   = note: no item named `enabled` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RUSTANGO_ENV`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           tiered-settings convention ([`RUSTANGO_ENV`] != `"prod"`, or the
[INFO] [stdout]                                        ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RUSTANGO_ENV` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `error_page_html`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           explicit `RUSTANGO_TEMPLATE_DEBUG=1` override). [`error_page_html`]
[INFO] [stdout]                                                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `error_page_html` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `apply_to_tera`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           them up via [`apply_to_tera`].
[INFO] [stdout]                        ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `apply_to_tera` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `apply_to_tera`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           must call [`apply_to_tera`] explicitly. It's a no-op when no
[INFO] [stdout]                      ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `apply_to_tera` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::auth_decorators::login_required_or_401`
[INFO] [stdout]    --> src/shortcuts.rs:490:17
[INFO] [stdout]     |
[INFO] [stdout] 490 | /// Pair with [`crate::auth_decorators::login_required_or_401`] for
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `login_required_or_401` in module `auth_decorators`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::auth_decorators::user_passes_test_or_403`
[INFO] [stdout]    --> src/shortcuts.rs:503:7
[INFO] [stdout]     |
[INFO] [stdout] 503 | /// [`crate::auth_decorators::user_passes_test_or_403`].
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `user_passes_test_or_403` in module `auth_decorators`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_filters`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Call [`register_filters`] on a Tera instance to make them available:
[INFO] [stdout]                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `register_filters` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `timeuntil`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           mirror [`timeuntil`] returns the duration from `now` to a future
[INFO] [stdout]                   ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `timeuntil` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `timeuntil`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`timeuntil`].
[INFO] [stdout]              ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `timeuntil` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_filters`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`register_filters`] on a Tera instance to make them available:
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `register_filters` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `text::is_blank`
[INFO] [stdout]     --> src/default_filters.rs:1188:47
[INFO] [stdout]      |
[INFO] [stdout] 1188 | /// `{{ value|is_blank }}` → boolean. Wraps [`text::is_blank`].
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^ no item named `text` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `text::truncate_middle`
[INFO] [stdout]     --> src/default_filters.rs:1205:44
[INFO] [stdout]      |
[INFO] [stdout] 1205 | /// ellipsis + tail truncation, surfaces [`text::truncate_middle`]
[INFO] [stdout]      |                                            ^^^^^^^^^^^^^^^^^^^^^ no item named `text` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::auth`
[INFO] [stdout]     --> src/validators.rs:1025:18
[INFO] [stdout]      |
[INFO] [stdout] 1025 | /// error. Use [`crate::auth`] / `jsonwebtoken` to actually verify
[INFO] [stdout]      |                  ^^^^^^^^^^^ no item named `auth` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `reverse`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           through [`reverse`]. The shape mirrors Django's URL conf:
[INFO] [stdout]                    ^^^^^^^^^
[INFO] [stdout]   = note: no item named `reverse` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ReverseError`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           or extra params return a [`ReverseError`] at call time — there's
[INFO] [stdout]                                     ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ReverseError` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `duplicates`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           finds in the inventory. Call [`duplicates`] at boot to surface any
[INFO] [stdout]                                         ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `duplicates` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_url`
[INFO] [stdout]   --> src/urls.rs:75:16
[INFO] [stdout]    |
[INFO] [stdout] 75 | /// time via [`register_url!`] (which calls `inventory::submit!`
[INFO] [stdout]    |                ^^^^^^^^^^^^^ no item named `register_url` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_url` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_url`
[INFO] [stdout]    --> src/urls.rs:132:7
[INFO] [stdout]     |
[INFO] [stdout] 132 | /// [`register_url!`] across every loaded module. Useful for boot-time
[INFO] [stdout]     |       ^^^^^^^^^^^^^ no item named `register_url` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = note: `macro_rules` named `register_url` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `int_to_base36`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`int_to_base36`](int_to_base36) / [`base36_to_int`](base36_to_int).
[INFO] [stdout]                             ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `int_to_base36` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `base36_to_int`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`int_to_base36`](int_to_base36) / [`base36_to_int`](base36_to_int).
[INFO] [stdout]                                                                ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `base36_to_int` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `int_to_base62`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`int_to_base62`](int_to_base62) / [`base62_to_int`](base62_to_int).
[INFO] [stdout]                             ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `int_to_base62` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `base62_to_int`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`int_to_base62`](int_to_base62) / [`base62_to_int`](base62_to_int).
[INFO] [stdout]                                                                ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `base62_to_int` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `words`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           The `common` flag on [`words`] / [`paragraphs`] mirrors Django's
[INFO] [stdout]                                 ^^^^^^^
[INFO] [stdout]   = note: no item named `words` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `paragraphs`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           The `common` flag on [`words`] / [`paragraphs`] mirrors Django's
[INFO] [stdout]                                             ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `paragraphs` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `COMMON_PARAGRAPH_TEXT`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`COMMON_PARAGRAPH_TEXT`].
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `COMMON_PARAGRAPH_TEXT` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `format_datetime`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           format-char dispatch in [`format_datetime`] for the exhaustive
[INFO] [stdout]                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `format_datetime` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `signing` links to private item `crate::crypto`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Gated behind the same feature union as [`crate::crypto`] —
[INFO] [stdout]                                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `signing` links to private item `crate::crypto`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`crate::crypto`] — purpose-isolated per `salt`.
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HeaderValue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           (and an axum [`HeaderValue`] convenience).
[INFO] [stdout]                         ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HeaderValue` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `extract_next`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           after a successful auth. Use [`extract_next`] for the read +
[INFO] [stdout]                                         ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `extract_next` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `safe_next`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`safe_next`] to defend against open-redirect attacks:
[INFO] [stdout]            ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `safe_next` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `login_required`
[INFO] [stdout]   --> src/auth_decorators.rs:75:25
[INFO] [stdout]    |
[INFO] [stdout] 75 | /// Configuration for [`login_required`]. Defaults match Django:
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^ no item named `login_required` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AuthBackendChain`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`AuthBackendChain`] walks an ordered list of [`AuthBackend`]s,
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `AuthBackendChain` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AuthBackend`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`AuthBackendChain`] walks an ordered list of [`AuthBackend`]s,
[INFO] [stdout]                                                          ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `AuthBackend` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Principal`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## What [`Principal`] is
[INFO] [stdout]                    ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Principal` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Principal`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           native records. [`Principal`] is the lowest-common-denominator
[INFO] [stdout]                            ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Principal` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Plug an ordered list of [`PasswordValidator`]s into a
[INFO] [stdout]                                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordValidator` in scope
[INFO] [stdout]   = help: there's a similarly named item `password_validators`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordValidatorChain`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`PasswordValidatorChain`]; call [`PasswordValidatorChain::validate`]
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordValidatorChain` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordValidatorChain::validate`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`PasswordValidatorChain`]; call [`PasswordValidatorChain::validate`]
[INFO] [stdout]                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordValidatorChain` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `MinimumLengthValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`MinimumLengthValidator`] — Django's `MinimumLengthValidator`.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `MinimumLengthValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `MaximumLengthValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`MaximumLengthValidator`] — extra rustango safeguard; some
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `MaximumLengthValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NumericPasswordValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`NumericPasswordValidator`] — Django's same-named validator.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NumericPasswordValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `UserAttributeSimilarityValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`UserAttributeSimilarityValidator`] — Django's same. Rejects
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `UserAttributeSimilarityValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CommonPasswordValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`CommonPasswordValidator`] — small built-in top-N list. The
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CommonPasswordValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Custom validators implement [`PasswordValidator`] (one method).
[INFO] [stdout]                                        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordValidator` in scope
[INFO] [stdout]   = help: there's a similarly named item `password_validators`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordHasher`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Every entry in the chain implements [`PasswordHasher`]. The
[INFO] [stdout]                                                ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordHasher` in scope
[INFO] [stdout]   = help: there's a similarly named item `password_hashers`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordHasher::identify`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Each hasher's [`PasswordHasher::identify`] returns `true` when
[INFO] [stdout]                          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordHasher` in scope
[INFO] [stdout]   = help: there's a similarly named item `password_hashers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `tenancy::session`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           signed cookie ([`tenancy::session`], [`admin::session`]) so the
[INFO] [stdout]                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `sign`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`sign`] to produce the MAC. That way two layers can share one
[INFO] [stdout]            ^^^^^^
[INFO] [stdout]   = note: no item named `sign` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_sitemap`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           that calls [`render_sitemap`] / [`render_sitemap_index`] and
[INFO] [stdout]                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_sitemap` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_sitemap_index`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           that calls [`render_sitemap`] / [`render_sitemap_index`] and
[INFO] [stdout]                                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_sitemap_index` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_sitemap_index`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Large sites split the sitemap across multiple files. [`render_sitemap_index`]
[INFO] [stdout]                                                                 ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_sitemap_index` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Feed`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Build a [`Feed`] (channel metadata + a `Vec<FeedItem>`) and call
[INFO] [stdout]                    ^^^^^^
[INFO] [stdout]   = note: no item named `Feed` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_rss`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`render_rss`] for an RSS 2.0 document or [`render_atom`] for an
[INFO] [stdout]            ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_rss` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_atom`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`render_rss`] for an RSS 2.0 document or [`render_atom`] for an
[INFO] [stdout]                                                      ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_atom` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RedirectMap`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Hand-roll a [`RedirectMap`] (or load it from a CSV / hard-coded
[INFO] [stdout]                        ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RedirectMap` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `redirects_middleware`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           list) and mount [`redirects_middleware`] on your axum router.
[INFO] [stdout]                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `redirects_middleware` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FlatPageMap`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Build a [`FlatPageMap`] (path → `FlatPage { title, body }`) and
[INFO] [stdout]                    ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FlatPageMap` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `flatpages_middleware`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           mount [`flatpages_middleware`] on your axum router; matching
[INFO] [stdout]                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `flatpages_middleware` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FlatPage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Each [`FlatPage`] holds a fully-rendered HTML body. The
[INFO] [stdout]                 ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FlatPage` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FlatPage::title`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Per-page `<title>` is exposed via [`FlatPage::title`] so callers
[INFO] [stdout]                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FlatPage` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status`] — exact-status match against a u16.
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status_in`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status_in`] — status is one of an allowed set.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status_in` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status_2xx`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status_2xx`] — status is in the 200–299 range.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status_2xx` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status_4xx`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status_4xx`] — status is in the 400–499 range.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status_4xx` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status_5xx`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status_5xx`] — status is in the 500–599 range.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status_5xx` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_contains`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_contains`] — response body contains a UTF-8 substring.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_contains` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_not_contains`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_not_contains`] — body does NOT contain a substring.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_not_contains` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_contains_count`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_contains_count`] — body contains fragment N times
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_contains_count` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_redirects`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_redirects`] — 3xx status + `Location` header equality.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_redirects` in scope
[INFO] [stdout]   = help: there's a similarly named item `ssl_redirect`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_header`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_header`] — exact header value match.
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_header` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_content_type`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_content_type`] — sugar for `assert_header("content-type", ...)`.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_content_type` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_json_eq`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_json_eq`] — body parses as JSON and equals expected
[INFO] [stdout]              ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_json_eq` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_json_not_eq`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_json_not_eq`] — body parses as JSON and DIFFERS from
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_json_not_eq` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_redirect_chain`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_redirect_chain`] — inspect the chain produced by
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_redirect_chain` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_messages`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_messages`] — read + assert on the flash-messages cookie
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_messages` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_cookie_set`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_cookie_set`] — assert a `Set-Cookie` header for the
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_cookie_set` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_cookie_not_set`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_cookie_not_set`] — inverse: assert no `Set-Cookie` for
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_cookie_not_set` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::executor`
[INFO] [stdout]   --> src/test_assertions/query_counter.rs:74:46
[INFO] [stdout]    |
[INFO] [stdout] 74 | /// Called by every `_pool` entry point in [`crate::sql::executor`].
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^ no item named `executor` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Sequence`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           useful on top of that: a [`Sequence`] for thread-safe per-call
[INFO] [stdout]                                     ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Sequence` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Factory`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           unique values, and a [`Factory`] trait that adds [`Factory::build_batch`]
[INFO] [stdout]                                 ^^^^^^^^^
[INFO] [stdout]   = note: no item named `Factory` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Factory::build_batch`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           unique values, and a [`Factory`] trait that adds [`Factory::build_batch`]
[INFO] [stdout]                                                             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Factory` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Factory::build_pool`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           / [`Factory::build_pool`] for the create-many DB pattern.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Factory` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Settings`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Runs an async closure with a task-local [`Settings`] overlay.
[INFO] [stdout]                                                    ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Settings` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `current`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Code that reads via [`current`] sees the override for the
[INFO] [stdout]                                ^^^^^^^^^
[INFO] [stdout]   = note: no item named `current` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `server::Builder`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Django-style runserver — [`server::Builder`] owns every line of
[INFO] [stdout]                                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Builder` in module `server`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `server::Builder`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           The full multi-tenant [`server::Builder`] is gated inside the
[INFO] [stdout]                                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Builder` in module `server`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `super::Builder`
[INFO] [stdout]  --> src/server/app.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! The Django-style multi-tenant [`super::Builder`] is hardcoded to
[INFO] [stdout]   |                                     ^^^^^^^^^^^^^^ no item named `Builder` in module `server`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::manage::run`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             (or [`crate::tenancy::manage::run`] when [`Cli::tenancy`] is on).
[INFO] [stdout]                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Cli::tenancy`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             (or [`crate::tenancy::manage::run`] when [`Cli::tenancy`] is on).
[INFO] [stdout]                                                       ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Cli` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Settings`
[INFO] [stdout]   --> src/manage.rs:66:18
[INFO] [stdout]    |
[INFO] [stdout] 66 |     /// Cloned [`Settings`] handle stored by [`Cli::with_settings`].
[INFO] [stdout]    |                  ^^^^^^^^ no item named `Settings` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::manage::run`
[INFO] [stdout]    --> src/manage.rs:444:11
[INFO] [stdout]     |
[INFO] [stdout] 444 |     /// [`crate::tenancy::manage::run`] handles `create-tenant`,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `tenancy` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::server::Builder`
[INFO] [stdout]    --> src/manage.rs:447:11
[INFO] [stdout]     |
[INFO] [stdout] 447 |     /// [`crate::server::Builder`].
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^ no item named `Builder` in module `server`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_admin_inline`
[INFO] [stdout]    --> src/admin/inlines.rs:230:7
[INFO] [stdout]     |
[INFO] [stdout] 230 | /// [`register_admin_inline!`] but takes `ct` + `pk` instead of `fk`.
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^ no item named `register_admin_inline` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = note: `macro_rules` named `register_admin_inline` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]    --> src/contenttypes.rs:819:25
[INFO] [stdout]     |
[INFO] [stdout] 819 | ///   [`ensure_seeded`](crate::contenttypes::ensure_seeded) first).
[INFO] [stdout]     |        ---------------  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]     |        |
[INFO] [stdout]     |        because label contains path that resolves to same destination
[INFO] [stdout]     |
[INFO] [stdout]     = note: when a link's destination is not specified,
[INFO] [stdout]             the label is used to resolve intra-doc links
[INFO] [stdout]     = note: `#[warn(rustdoc::redundant_explicit_links)]` on by default
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]     |
[INFO] [stdout] 819 - ///   [`ensure_seeded`](crate::contenttypes::ensure_seeded) first).
[INFO] [stdout] 819 + ///   [`ensure_seeded`] first).
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `op`
[INFO] [stdout]    --> src/core/column.rs:601:17
[INFO] [stdout]     |
[INFO] [stdout] 601 |     /// "column <op> expr" predicate. Used by [`Column::eq_expr`] &
[INFO] [stdout]     |                 ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(rustdoc::invalid_html_tags)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `SqlValue`
[INFO] [stdout]    --> src/core/expr.rs:685:51
[INFO] [stdout]     |
[INFO] [stdout] 685 | /// with `From<SqlValue> for Expr` (SqlValue: Into<SqlValue> trivially).
[INFO] [stdout]     |                                                   ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: try marking as source code
[INFO] [stdout]     |
[INFO] [stdout] 685 | /// with `From<SqlValue> for Expr` (SqlValue: `Into<SqlValue>` trivially).
[INFO] [stdout]     |                                               +              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/core/fts.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 | //!   [`WhereExpr`](crate::core::WhereExpr) for `.where_raw(...)`.
[INFO] [stdout]    |        -----------  ^^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |        |
[INFO] [stdout]    |        because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 44 - //!   [`WhereExpr`](crate::core::WhereExpr) for `.where_raw(...)`.
[INFO] [stdout] 44 + //!   [`WhereExpr`] for `.where_raw(...)`.
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `X`
[INFO] [stdout]    --> src/core/schema.rs:502:36
[INFO] [stdout]     |
[INFO] [stdout] 502 |     /// headers, breadcrumbs, "Add <X>" buttons, and any other surface
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this URL is not a hyperlink
[INFO] [stdout]     --> src/migrate/manage.rs:1814:33
[INFO] [stdout]      |
[INFO] [stdout] 1814 | /// `manage docs` — try to open https://docs.rs/rustango in the user's browser.
[INFO] [stdout]      |                                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: bare URLs are not automatically turned into clickable links
[INFO] [stdout]      = note: `#[warn(rustdoc::bare_urls)]` on by default
[INFO] [stdout] help: use an automatic link instead
[INFO] [stdout]      |
[INFO] [stdout] 1814 | /// `manage docs` — try to open <https://docs.rs/rustango> in the user's browser.
[INFO] [stdout]      |                                 +                        +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `table`
[INFO] [stdout]     --> src/migrate/manage.rs:3606:5
[INFO] [stdout]      |
[INFO] [stdout] 3606 | /// <table>` in registration order; sequences are NOT reset
[INFO] [stdout]      |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]     --> src/query/mod.rs:1922:36
[INFO] [stdout]      |
[INFO] [stdout] 1922 |     /// [`WhereExpr::ExprCompare`](crate::core::WhereExpr::ExprCompare)
[INFO] [stdout]      |          ------------------------  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]      |          |
[INFO] [stdout]      |          because label contains path that resolves to same destination
[INFO] [stdout]      |
[INFO] [stdout]      = note: when a link's destination is not specified,
[INFO] [stdout]              the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]      |
[INFO] [stdout] 1922 -     /// [`WhereExpr::ExprCompare`](crate::core::WhereExpr::ExprCompare)
[INFO] [stdout] 1922 +     /// [`WhereExpr::ExprCompare`]
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `T`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1265:36
[INFO] [stdout]      |
[INFO] [stdout] 1265 | /// layer in batch6 will route Auto<T>-bearing models to a different
[INFO] [stdout]      |                                    ^^^
[INFO] [stdout]      |
[INFO] [stdout] help: try marking as source code
[INFO] [stdout]      |
[INFO] [stdout] 1265 | /// layer in batch6 will route `Auto<T>`-bearing models to a different
[INFO] [stdout]      |                                +       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `T`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2527:51
[INFO] [stdout]      |
[INFO] [stdout] 2527 |     /// ASC" — the natural insertion order on Auto<T> PKs and stable
[INFO] [stdout]      |                                                   ^^^
[INFO] [stdout]      |
[INFO] [stdout] help: try marking as source code
[INFO] [stdout]      |
[INFO] [stdout] 2527 |     /// ASC" — the natural insertion order on `Auto<T>` PKs and stable
[INFO] [stdout]      |                                               +       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `username`
[INFO] [stdout]   --> src/admin/session.rs:59:41
[INFO] [stdout]    |
[INFO] [stdout] 59 |     /// chrome can render "Signed in as <username>" without a DB hit
[INFO] [stdout]    |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `table`
[INFO] [stdout]    --> src/admin/views.rs:822:5
[INFO] [stdout]     |
[INFO] [stdout] 822 | /// <table> GROUP BY <col> ORDER BY <col>`. For dynamic admin pages
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `provider`
[INFO] [stdout]    --> src/config/sections.rs:216:36
[INFO] [stdout]     |
[INFO] [stdout] 216 |     /// Turns on the "Sign in with <provider>" button on the admin login.
[INFO] [stdout]     |                                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `T`
[INFO] [stdout]     --> src/forms/mod.rs:1187:26
[INFO] [stdout]      |
[INFO] [stdout] 1187 |     /// schema (sans Auto<T> PK on create).
[INFO] [stdout]      |                          ^^^
[INFO] [stdout]      |
[INFO] [stdout] help: try marking as source code
[INFO] [stdout]      |
[INFO] [stdout] 1187 |     /// schema (sans `Auto<T>` PK on create).
[INFO] [stdout]      |                      +       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]  --> src/cache/scoped.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! [`Cache`](super::Cache) is a flat `&str`-keyed store. That is the
[INFO] [stdout]   |      -------  ^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]   |      |
[INFO] [stdout]   |      because label contains path that resolves to same destination
[INFO] [stdout]   |
[INFO] [stdout]   = note: when a link's destination is not specified,
[INFO] [stdout]           the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]   |
[INFO] [stdout] 3 - //! [`Cache`](super::Cache) is a flat `&str`-keyed store. That is the
[INFO] [stdout] 3 + //! [`Cache`] is a flat `&str`-keyed store. That is the
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/cache/scoped.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | //! [`BoxedCache`](super::BoxedCache) and folds a namespace into every
[INFO] [stdout]    |      ------------  ^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |      |
[INFO] [stdout]    |      because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 10 - //! [`BoxedCache`](super::BoxedCache) and folds a namespace into every
[INFO] [stdout] 10 + //! [`BoxedCache`] and folds a namespace into every
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: could not parse code block as Rust code
[INFO] [stdout]    --> src/distributed_lock.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |       /// ```ignore
[INFO] [stdout]     |  _________^
[INFO] [stdout] 109 | |     /// let lock = DistributedLock::new(cache).for_tenant(&org.slug);
[INFO] [stdout] 110 | |     /// lock.with_lock("daily_report", ttl, || async { … }).await;
[INFO] [stdout] 111 | |     /// ```
[INFO] [stdout]     | |___________^
[INFO] [stdout]     |
[INFO] [stdout] help: `ignore` code blocks require valid Rust code for syntax highlighting; mark blocks that do not contain Rust code as text: ```text
[INFO] [stdout]    --> src/distributed_lock.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     /// ```ignore
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     = note: error from rustc: unknown start of token: \u{2026}
[INFO] [stdout]     = note: `#[warn(rustdoc::invalid_rust_codeblocks)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: could not parse code block as Rust code
[INFO] [stdout]   |
[INFO] [stdout]   = help: `ignore` code blocks require valid Rust code for syntax highlighting; mark blocks that do not contain Rust code as text: ```text
[INFO] [stdout]   = note: error from rustc: unknown start of token: \u{2026}
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `DB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `Postgres`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `DB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this URL is not a hyperlink
[INFO] [stdout]    --> src/urls.rs:372:18
[INFO] [stdout]     |
[INFO] [stdout] 372 | /// "navigate to https://evil.com" (the absent scheme defaults to the
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: bare URLs are not automatically turned into clickable links
[INFO] [stdout] help: use an automatic link instead
[INFO] [stdout]     |
[INFO] [stdout] 372 | /// "navigate to <https://evil.com>" (the absent scheme defaults to the
[INFO] [stdout]     |                  +                +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: could not parse code block as Rust code
[INFO] [stdout]   |
[INFO] [stdout]   = help: `ignore` code blocks require valid Rust code for syntax highlighting; mark blocks that do not contain Rust code as text: ```text
[INFO] [stdout]   = note: error from rustc: non-ASCII character in byte string literal
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: could not parse code block as Rust code
[INFO] [stdout]   |
[INFO] [stdout]   = help: `ignore` code blocks require valid Rust code for syntax highlighting; mark blocks that do not contain Rust code as text: ```text
[INFO] [stdout]   = note: error from rustc: unknown start of token: \u{2026}
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `Tera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `concat` is both a function and a macro
[INFO] [stdout]    --> src/core/funcs.rs:237:11
[INFO] [stdout]     |
[INFO] [stdout] 237 | /// See [`concat`] re: passing args as already-lifted `Expr`.
[INFO] [stdout]     |           ^^^^^^ ambiguous link
[INFO] [stdout]     |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]     |
[INFO] [stdout] 237 | /// See [`concat()`] re: passing args as already-lifted `Expr`.
[INFO] [stdout]     |                 ++
[INFO] [stdout] help: to link to the macro, add an exclamation mark
[INFO] [stdout]     |
[INFO] [stdout] 237 | /// See [`concat!`] re: passing args as already-lifted `Expr`.
[INFO] [stdout]     |                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 30s
[INFO] [stderr]    Generated /opt/rustwide/target/doc/rustango/index.html
[INFO] running `Command { std: "docker" "inspect" "b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb", 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" "-e" "DOCS_RS=1" "-e" "RUSTC_BOOTSTRAP=1" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb" "/opt/rustwide/cargo-home/bin/cargo" "+824336ad4127ce295849937a24c08a4aeff6ada7" "rustdoc" "--lib" "-Zrustdoc-map" "--all-features" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--document-private-items\"]" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking spin v0.9.9
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking rust_decimal v1.42.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking atoi v2.0.0
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking pkcs1 v0.7.5
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking flume v0.11.1
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking poly1305 v0.8.0
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking chacha20 v0.9.1
[INFO] [stderr]     Checking globwalk v0.9.1
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking backon v1.6.0
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]     Checking combine v4.6.7
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking sqlx-core v0.8.6
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking multer v3.1.0
[INFO] [stderr]     Checking email-encoding v0.4.1
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking nom v8.0.0
[INFO] [stderr]     Checking email_address v0.2.9
[INFO] [stderr]     Checking quoted_printable v0.5.2
[INFO] [stderr]     Checking tera v1.20.1
[INFO] [stderr]     Checking tracing-appender v0.2.5
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking chacha20poly1305 v0.10.1
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking tungstenite v0.29.0
[INFO] [stderr]     Checking num-bigint-dig v0.8.6
[INFO] [stderr]     Checking sqlx-postgres v0.8.6
[INFO] [stderr]     Checking lettre v0.11.22
[INFO] [stderr]     Checking tokio-tungstenite v0.29.0
[INFO] [stderr]     Checking redis v0.27.6
[INFO] [stderr]     Checking axum v0.8.9
[INFO] [stderr]     Checking rsa v0.9.10
[INFO] [stderr]     Checking sqlx-mysql v0.8.6
[INFO] [stderr]     Checking sqlx-sqlite v0.8.6
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]  Documenting rustango v0.55.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unresolved link to `Dialect::placeholder`
[INFO] [stdout]    --> src/audit.rs:677:20
[INFO] [stdout]     |
[INFO] [stdout] 677 | /// rendered via [`Dialect::placeholder`] + [`Dialect::quote_ident`].
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^ no item named `Dialect` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Dialect::quote_ident`
[INFO] [stdout]    --> src/audit.rs:677:47
[INFO] [stdout]     |
[INFO] [stdout] 677 | /// rendered via [`Dialect::placeholder`] + [`Dialect::quote_ident`].
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^ no item named `Dialect` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `emit_one_*`
[INFO] [stdout]    --> src/audit.rs:895:31
[INFO] [stdout]     |
[INFO] [stdout] 895 | /// falls back to a per-row [`emit_one_*`] loop inside a single
[INFO] [stdout]     |                               ^^^^^^^^^^ no item named `emit_one_*` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `emit_one`
[INFO] [stdout]     |
[INFO] [stdout] 895 - /// falls back to a per-row [`emit_one_*`] loop inside a single
[INFO] [stdout] 895 + /// falls back to a per-row [`emit_one`] loop inside a single
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::executor::bind_query`
[INFO] [stdout]     --> src/audit.rs:1072:7
[INFO] [stdout]      |
[INFO] [stdout] 1072 | /// [`crate::sql::executor::bind_query`] / `bind_query_my` (private
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `executor` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ensure_seeded`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`ensure_seeded()`] walks `inventory::iter::<ModelEntry>()` and
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ensure_seeded` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ContentType::for_model`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`ContentType::for_model`] resolves a model type to its
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ContentType` in scope
[INFO] [stdout]   = help: there's a similarly named item `contenttypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ContentType::all_ordered`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`ContentType::all_ordered`] / [`ContentType::by_id`] /
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ContentType` in scope
[INFO] [stdout]   = help: there's a similarly named item `contenttypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ContentType::by_id`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`ContentType::all_ordered`] / [`ContentType::by_id`] /
[INFO] [stdout]                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ContentType` in scope
[INFO] [stdout]   = help: there's a similarly named item `contenttypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ContentType::by_natural_key`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`ContentType::by_natural_key`] cover the lookup shapes the
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ContentType` in scope
[INFO] [stdout]   = help: there's a similarly named item `contenttypes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Expr`
[INFO] [stdout]    --> src/core/column.rs:433:60
[INFO] [stdout]     |
[INFO] [stdout] 433 |     /// `SET column = <expression>` for an UPDATE — full [`Expr`] form,
[INFO] [stdout]     |                                                            ^^^^ no item named `Expr` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `::phrase`
[INFO] [stdout]   --> src/core/fts.rs:39:34
[INFO] [stdout]    |
[INFO] [stdout] 39 | //! - [`SearchQuery::plain`] / [`::phrase`] / [`::websearch`] / [`::raw`] —
[INFO] [stdout]    |                                  ^^^^^^^^ no item named `phrase` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `::websearch`
[INFO] [stdout]   --> src/core/fts.rs:39:49
[INFO] [stdout]    |
[INFO] [stdout] 39 | //! - [`SearchQuery::plain`] / [`::phrase`] / [`::websearch`] / [`::raw`] —
[INFO] [stdout]    |                                                 ^^^^^^^^^^^ no item named `websearch` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `::raw`
[INFO] [stdout]   --> src/core/fts.rs:39:67
[INFO] [stdout]    |
[INFO] [stdout] 39 | //! - [`SearchQuery::plain`] / [`::phrase`] / [`::websearch`] / [`::raw`] —
[INFO] [stdout]    |                                                                   ^^^^^ no item named `raw` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::core::QuerySet::select_related`
[INFO] [stdout]  --> src/core/joins.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! Where [`crate::core::QuerySet::select_related`] follows FK edges
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `QuerySet` in module `core`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Between`
[INFO] [stdout]   --> src/core/query.rs:49:58
[INFO] [stdout]    |
[INFO] [stdout] 49 |     /// Negated range check. Bound value shape matches [`Between`]
[INFO] [stdout]    |                                                          ^^^^^^^ no item named `Between` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `by_pk`
[INFO] [stdout]    --> src/core/query.rs:793:52
[INFO] [stdout]     |
[INFO] [stdout] 793 |     /// Multi-PK `IN (...)` lookup. Companion to [`by_pk`] for the
[INFO] [stdout]     |                                                    ^^^^^ no item named `by_pk` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::bulk_update`
[INFO] [stdout]     --> src/core/query.rs:1532:17
[INFO] [stdout]      |
[INFO] [stdout] 1532 | /// Built via [`crate::sql::bulk_update`] or directly.
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^ no item named `bulk_update` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QuerySet::using`
[INFO] [stdout]    --> src/databases.rs:245:7
[INFO] [stdout]     |
[INFO] [stdout] 245 | /// [`QuerySet::using`]. Carries the read terminals that resolve against
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^ no item named `QuerySet` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_migration_callback`
[INFO] [stdout]  --> src/migrate/callbacks.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | //! callback is registered at startup via [`register_migration_callback!`]
[INFO] [stdout]   |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `register_migration_callback` in scope
[INFO] [stdout]   |
[INFO] [stdout]   = note: `macro_rules` named `register_migration_callback` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_migration_callback`
[INFO] [stdout]   --> src/migrate/callbacks.rs:63:7
[INFO] [stdout]    |
[INFO] [stdout] 63 | /// [`register_migration_callback!`] macro.
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `register_migration_callback` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_migration_callback` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `list_dir` links to private item `validate_chain`
[INFO] [stdout]    --> src/migrate/file.rs:211:21
[INFO] [stdout]     |
[INFO] [stdout] 211 | /// validated via [`validate_chain`] — a migration declaring
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout]     = note: `#[warn(rustdoc::private_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ModelScope::Tenant`
[INFO] [stdout]    --> src/migrate/snapshot.rs:373:44
[INFO] [stdout]     |
[INFO] [stdout] 373 |     /// snapshot was written) default to [`ModelScope::Tenant`] —
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^ no item named `ModelScope` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `from_registry`
[INFO] [stdout]    --> src/migrate/snapshot.rs:462:35
[INFO] [stdout]     |
[INFO] [stdout] 462 |     /// agnostic counterpart of [`from_registry`]. Used by callers that
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^ no item named `from_registry` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `from_registry`
[INFO] [stdout]    --> src/migrate/snapshot.rs:468:19
[INFO] [stdout]     |
[INFO] [stdout] 468 |     /// rule as [`from_registry`].
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ no item named `from_registry` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QueryError::DistinctOnOrderBy`
[INFO] [stdout]    --> src/query/mod.rs:375:19
[INFO] [stdout]     |
[INFO] [stdout] 375 |     /// returns [`QueryError::DistinctOnOrderBy`] otherwise — the order
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `QueryError` has no variant or associated item named `DistinctOnOrderBy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::transaction`
[INFO] [stdout]    --> src/query/mod.rs:394:11
[INFO] [stdout]     |
[INFO] [stdout] 394 |     /// [`crate::sql::transaction`] / [`crate::sql::transaction_pg`]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^ no item named `transaction` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::transaction_pg`
[INFO] [stdout]    --> src/query/mod.rs:394:41
[INFO] [stdout]     |
[INFO] [stdout] 394 |     /// [`crate::sql::transaction`] / [`crate::sql::transaction_pg`]
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `transaction_pg` in module `sql`
[INFO] [stdout]     |
[INFO] [stdout] help: there's a similarly named item `transaction_pool`
[INFO] [stdout]     |
[INFO] [stdout] 394 -     /// [`crate::sql::transaction`] / [`crate::sql::transaction_pg`]
[INFO] [stdout] 394 +     /// [`crate::sql::transaction`] / [`crate::sql::transaction_pool`]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::sql::fetch_values_dict_pool`
[INFO] [stdout]     --> src/query/mod.rs:4409:7
[INFO] [stdout]      |
[INFO] [stdout] 4409 | /// [`crate::sql::fetch_values_dict_pool`].
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `fetch_values_dict_pool` in module `sql`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::fetch`
[INFO] [stdout]     --> src/query/mod.rs:4529:15
[INFO] [stdout]      |
[INFO] [stdout] 4529 | /// [`fetch`](Self::fetch) emits
[INFO] [stdout]      |               ^^^^^^^^^^^ the struct `DatesQuerySet` has no field or associated item named `fetch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `DatesQuerySet::order_desc(true)`
[INFO] [stdout]     --> src/query/mod.rs:4586:11
[INFO] [stdout]      |
[INFO] [stdout] 4586 |     /// [`DatesQuerySet::order_desc(true)`] for newest-first.
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `DatesQuerySet` has no field or associated item named `order_desc(true)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Array` links to private item `self`
[INFO] [stdout]   --> src/sql/array.rs:49:59
[INFO] [stdout]    |
[INFO] [stdout] 49 | /// Typed PostgreSQL array column — see the [module docs](self).
[INFO] [stdout]    |                                                           ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `write_json_contains`
[INFO] [stdout]    --> src/sql/dialect.rs:650:22
[INFO] [stdout]     |
[INFO] [stdout] 650 |     /// Inverse of [`write_json_contains`]: `<col> <@ <p>::jsonb` (Postgres) /
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^ no item named `write_json_contains` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `write_json_has_any_keys`
[INFO] [stdout]    --> src/sql/dialect.rs:678:41
[INFO] [stdout]     |
[INFO] [stdout] 678 |     /// `JsonHasAllKeys` companion of [`write_json_has_any_keys`].
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^ no item named `write_json_has_any_keys` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `acquire_session_lock_sql`
[INFO] [stdout]    --> src/sql/dialect.rs:738:11
[INFO] [stdout]     |
[INFO] [stdout] 738 |     /// [`acquire_session_lock_sql`]. Default `None`. Errors during
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `acquire_session_lock_sql` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QuerySet::fetch_paginated_on`
[INFO] [stdout]  --> src/sql/executor/page.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | /// Result of [`QuerySet::fetch_paginated_on`] — a slice of rows
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `QuerySet` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | /// Like [`insert`] but accepts any sqlx executor — `&PgPool`,
[INFO] [stdout]    |            ^^^^^^ no item named `insert` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | /// As [`insert`].
[INFO] [stdout]    |          ^^^^^^ no item named `insert` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert_returning`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | /// Like [`insert_returning`] but accepts any sqlx executor.
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^ no item named `insert_returning` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `insert_returning_on`
[INFO] [stdout]    |
[INFO] [stdout] 46 | /// Like [`insert_returning_on`] but accepts any sqlx executor.
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert_returning`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:49:10
[INFO] [stdout]    |
[INFO] [stdout] 49 | /// As [`insert_returning`].
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^ no item named `insert_returning` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `insert_returning_on`
[INFO] [stdout]    |
[INFO] [stdout] 49 | /// As [`insert_returning_on`].
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_insert`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | /// Like [`bulk_insert`] but accepts any sqlx executor.
[INFO] [stdout]    |            ^^^^^^^^^^^ no item named `bulk_insert` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `bulk_insert_on`
[INFO] [stdout]    |
[INFO] [stdout] 70 | /// Like [`bulk_insert_on`] but accepts any sqlx executor.
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_insert`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 73 | /// As [`bulk_insert`].
[INFO] [stdout]    |          ^^^^^^^^^^^ no item named `bulk_insert` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `bulk_insert_on`
[INFO] [stdout]    |
[INFO] [stdout] 73 | /// As [`bulk_insert_on`].
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `update`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:95:12
[INFO] [stdout]    |
[INFO] [stdout] 95 | /// Like [`update`] but accepts any sqlx executor.
[INFO] [stdout]    |            ^^^^^^ no item named `update` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `update`
[INFO] [stdout]   --> src/sql/executor/pg_on.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 98 | /// As [`update`].
[INFO] [stdout]    |          ^^^^^^ no item named `update` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `delete`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout] 113 | /// Like [`delete`] but accepts any sqlx executor.
[INFO] [stdout]     |            ^^^^^^ no item named `delete` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `delete`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:116:10
[INFO] [stdout]     |
[INFO] [stdout] 116 | /// As [`delete`].
[INFO] [stdout]     |          ^^^^^^ no item named `delete` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_rows`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 130 | /// Like [`select_rows`] but accepts any sqlx executor — `&PgPool`,
[INFO] [stdout]     |            ^^^^^^^^^^^ no item named `select_rows` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_rows_on`
[INFO] [stdout]     |
[INFO] [stdout] 130 | /// Like [`select_rows_on`] but accepts any sqlx executor — `&PgPool`,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_rows`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:136:10
[INFO] [stdout]     |
[INFO] [stdout] 136 | /// As [`select_rows`].
[INFO] [stdout]     |          ^^^^^^^^^^^ no item named `select_rows` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_rows_on`
[INFO] [stdout]     |
[INFO] [stdout] 136 | /// As [`select_rows_on`].
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_one_row`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 152 | /// Like [`select_one_row`] but accepts any sqlx executor.
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ no item named `select_one_row` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_one_row_on`
[INFO] [stdout]     |
[INFO] [stdout] 152 | /// Like [`select_one_row_on`] but accepts any sqlx executor.
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_one_row`
[INFO] [stdout]    --> src/sql/executor/pg_on.rs:155:10
[INFO] [stdout]     |
[INFO] [stdout] 155 | /// As [`select_one_row`].
[INFO] [stdout]     |          ^^^^^^^^^^^^^^ no item named `select_one_row` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_one_row_on`
[INFO] [stdout]     |
[INFO] [stdout] 155 | /// As [`select_one_row_on`].
[INFO] [stdout]     |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QuerySet::explain_on`
[INFO] [stdout]   --> src/sql/executor/explain.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 | /// Knobs for [`QuerySet::explain_on`]. Defaults render plain
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^ no item named `QuerySet` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `atomic`
[INFO] [stdout]   --> src/sql/executor/atomic.rs:49:51
[INFO] [stdout]    |
[INFO] [stdout] 49 | /// Future>>` is the standard escape hatch. The [`atomic!`] macro
[INFO] [stdout]    |                                                   ^^^^^^^ this link resolves to the function `atomic`, which is not a macro
[INFO] [stdout]    |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]    |
[INFO] [stdout] 49 - /// Future>>` is the standard escape hatch. The [`atomic!`] macro
[INFO] [stdout] 49 + /// Future>>` is the standard escape hatch. The [`atomic()`] macro
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `LoadRelated`
[INFO] [stdout]   --> src/sql/executor/traits.rs:46:28
[INFO] [stdout]    |
[INFO] [stdout] 46 | /// MySQL counterpart of [`LoadRelated`]. The proc-macro emits this
[INFO] [stdout]    |                            ^^^^^^^^^^^ no item named `LoadRelated` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `LoadRelatedMy`
[INFO] [stdout]    |
[INFO] [stdout] 46 | /// MySQL counterpart of [`LoadRelatedMy`]. The proc-macro emits this
[INFO] [stdout]    |                                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `LoadRelated::__rustango_load_related`
[INFO] [stdout]   --> src/sql/executor/traits.rs:57:28
[INFO] [stdout]    |
[INFO] [stdout] 57 |     /// Same contract as [`LoadRelated::__rustango_load_related`] —
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `LoadRelated` in scope
[INFO] [stdout]    |
[INFO] [stdout] help: there's a similarly named item `LoadRelatedMy`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     /// Same contract as [`LoadRelatedMy::__rustango_load_related`] —
[INFO] [stdout]    |                                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `LoadRelated`
[INFO] [stdout]    --> src/sql/executor/traits.rs:122:29
[INFO] [stdout]     |
[INFO] [stdout] 122 | /// SQLite counterpart of [`LoadRelated`] / [`LoadRelatedMy`]. The
[INFO] [stdout]     |                             ^^^^^^^^^^^ no item named `LoadRelated` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `LoadRelatedMy`
[INFO] [stdout]     |
[INFO] [stdout] 122 | /// SQLite counterpart of [`LoadRelatedMy`] / [`LoadRelatedMy`]. The
[INFO] [stdout]     |                                        ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `LoadRelated::__rustango_load_related`
[INFO] [stdout]    --> src/sql/executor/traits.rs:128:28
[INFO] [stdout]     |
[INFO] [stdout] 128 |     /// Same contract as [`LoadRelated::__rustango_load_related`].
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `LoadRelated` in scope
[INFO] [stdout]     |
[INFO] [stdout] help: there's a similarly named item `LoadRelatedMy`
[INFO] [stdout]     |
[INFO] [stdout] 128 |     /// Same contract as [`LoadRelatedMy::__rustango_load_related`].
[INFO] [stdout]     |                                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `fetch_aggregate_dict` links to private item `fetch_values_dict`
[INFO] [stdout]    --> src/sql/executor/values.rs:238:38
[INFO] [stdout]     |
[INFO] [stdout] 238 | /// the tri-dialect counterpart of [`fetch_values_dict`] for the
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Sqlx`
[INFO] [stdout]    --> src/sql/executor/values.rs:567:13
[INFO] [stdout]     |
[INFO] [stdout] 567 |     /// - [`ExecError::Sqlx`] for driver / network / decode failures.
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Sqlx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Sqlx`
[INFO] [stdout]    --> src/sql/executor/values.rs:634:13
[INFO] [stdout]     |
[INFO] [stdout] 634 |     /// - [`ExecError::Sqlx`] for driver / network / decode failures.
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Sqlx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]    --> src/sql/executor/values.rs:735:11
[INFO] [stdout]     |
[INFO] [stdout] 735 |     /// [`ExecError::Query(QueryError::UnknownField)`] (with field
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]    --> src/sql/executor/values.rs:866:11
[INFO] [stdout]     |
[INFO] [stdout] 866 |     /// [`ExecError::Query(QueryError::UnknownField)`] when `col`
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `UpdaterPool::execute_pool`
[INFO] [stdout]     --> src/sql/executor/values.rs:1070:14
[INFO] [stdout]      |
[INFO] [stdout] 1070 |     /// As [`UpdaterPool::execute_pool`], plus
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `UpdaterPool` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]     --> src/sql/executor/values.rs:1071:11
[INFO] [stdout]      |
[INFO] [stdout] 1071 |     /// [`ExecError::Query(QueryError::UnknownField)`] when `col`
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Updater`
[INFO] [stdout]    --> src/sql/executor/mod.rs:704:39
[INFO] [stdout]     |
[INFO] [stdout] 704 | /// Backend-agnostic counterpart of [`Updater`]. `UpdateBuilder` gets
[INFO] [stdout]     |                                       ^^^^^^^ no item named `Updater` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Updater::execute`
[INFO] [stdout]    --> src/sql/executor/mod.rs:715:14
[INFO] [stdout]     |
[INFO] [stdout] 715 |     /// As [`Updater::execute`].
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^ no item named `Updater` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `raw_query`
[INFO] [stdout]    --> src/sql/executor/mod.rs:941:12
[INFO] [stdout]     |
[INFO] [stdout] 941 | /// Like [`raw_query`] but accepts any sqlx executor.
[INFO] [stdout]     |            ^^^^^^^^^ no item named `raw_query` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `raw_query_on`
[INFO] [stdout]     |
[INFO] [stdout] 941 | /// Like [`raw_query_on`] but accepts any sqlx executor.
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `raw_query`
[INFO] [stdout]    --> src/sql/executor/mod.rs:944:10
[INFO] [stdout]     |
[INFO] [stdout] 944 | /// As [`raw_query`].
[INFO] [stdout]     |          ^^^^^^^^^ no item named `raw_query` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `raw_query_on`
[INFO] [stdout]     |
[INFO] [stdout] 944 | /// As [`raw_query_on`].
[INFO] [stdout]     |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `fetch_aggregate`
[INFO] [stdout]    --> src/sql/executor/mod.rs:964:12
[INFO] [stdout]     |
[INFO] [stdout] 964 | /// Like [`fetch_aggregate`] but accepts any sqlx executor.
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^ no item named `fetch_aggregate` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `fetch_aggregate_on`
[INFO] [stdout]     |
[INFO] [stdout] 964 | /// Like [`fetch_aggregate_on`] but accepts any sqlx executor.
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `fetch_aggregate`
[INFO] [stdout]    --> src/sql/executor/mod.rs:967:10
[INFO] [stdout]     |
[INFO] [stdout] 967 | /// As [`fetch_aggregate`].
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^ no item named `fetch_aggregate` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `fetch_aggregate_on`
[INFO] [stdout]     |
[INFO] [stdout] 967 | /// As [`fetch_aggregate_on`].
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1092:54
[INFO] [stdout]      |
[INFO] [stdout] 1092 | /// `INSERT` against either backend. Equivalent to [`insert`] but
[INFO] [stdout]      |                                                      ^^^^^^ no item named `insert` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `insert`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1097:10
[INFO] [stdout]      |
[INFO] [stdout] 1097 | /// As [`insert`].
[INFO] [stdout]      |          ^^^^^^ no item named `insert` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SqlError::OperatorNotSupportedInDialect`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1126:9
[INFO] [stdout]      |
[INFO] [stdout] 1126 | /// - [`SqlError::OperatorNotSupportedInDialect`] from the writer when
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `SqlError` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `update`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1239:10
[INFO] [stdout]      |
[INFO] [stdout] 1239 | /// As [`update`].
[INFO] [stdout]      |          ^^^^^^ no item named `update` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `delete`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1248:10
[INFO] [stdout]      |
[INFO] [stdout] 1248 | /// As [`delete`].
[INFO] [stdout]      |          ^^^^^^ no item named `delete` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `count_rows`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1257:10
[INFO] [stdout]      |
[INFO] [stdout] 1257 | /// As [`count_rows`].
[INFO] [stdout]      |          ^^^^^^^^^^ no item named `count_rows` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_insert`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1264:7
[INFO] [stdout]      |
[INFO] [stdout] 1264 | /// [`bulk_insert`] does for Postgres' `RETURNING` shape — the macro
[INFO] [stdout]      |       ^^^^^^^^^^^ no item named `bulk_insert` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `bulk_insert_on`
[INFO] [stdout]      |
[INFO] [stdout] 1264 | /// [`bulk_insert_on`] does for Postgres' `RETURNING` shape — the macro
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_insert`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1269:10
[INFO] [stdout]      |
[INFO] [stdout] 1269 | /// As [`bulk_insert`].
[INFO] [stdout]      |          ^^^^^^^^^^^ no item named `bulk_insert` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `bulk_insert_on`
[INFO] [stdout]      |
[INFO] [stdout] 1269 | /// As [`bulk_insert_on`].
[INFO] [stdout]      |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `bulk_update`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1283:10
[INFO] [stdout]      |
[INFO] [stdout] 1283 | /// As [`bulk_update`].
[INFO] [stdout]      |          ^^^^^^^^^^^ no item named `bulk_update` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_rows`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1744:31
[INFO] [stdout]      |
[INFO] [stdout] 1744 | /// into `T`. Equivalent to [`select_rows`] but takes [`Pool`] and
[INFO] [stdout]      |                               ^^^^^^^^^^^ no item named `select_rows` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_rows_on`
[INFO] [stdout]      |
[INFO] [stdout] 1744 | /// into `T`. Equivalent to [`select_rows_on`] but takes [`Pool`] and
[INFO] [stdout]      |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_rows`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1750:10
[INFO] [stdout]      |
[INFO] [stdout] 1750 | /// As [`select_rows`].
[INFO] [stdout]      |          ^^^^^^^^^^^ no item named `select_rows` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_rows_on`
[INFO] [stdout]      |
[INFO] [stdout] 1750 | /// As [`select_rows_on`].
[INFO] [stdout]      |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `select_one_row`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1795:10
[INFO] [stdout]      |
[INFO] [stdout] 1795 | /// As [`select_one_row`] but routed through `&Pool`.
[INFO] [stdout]      |          ^^^^^^^^^^^^^^ no item named `select_one_row` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `select_one_row_on`
[INFO] [stdout]      |
[INFO] [stdout] 1795 | /// As [`select_one_row_on`] but routed through `&Pool`.
[INFO] [stdout]      |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `fetch_aggregate`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1861:10
[INFO] [stdout]      |
[INFO] [stdout] 1861 | /// of [`fetch_aggregate`].
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ no item named `fetch_aggregate` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `fetch_aggregate_on`
[INFO] [stdout]      |
[INFO] [stdout] 1861 | /// of [`fetch_aggregate_on`].
[INFO] [stdout]      |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `fetch_aggregate`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1868:10
[INFO] [stdout]      |
[INFO] [stdout] 1868 | /// As [`fetch_aggregate`].
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ no item named `fetch_aggregate` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `fetch_aggregate_on`
[INFO] [stdout]      |
[INFO] [stdout] 1868 | /// As [`fetch_aggregate_on`].
[INFO] [stdout]      |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `raw_query`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1926:7
[INFO] [stdout]      |
[INFO] [stdout] 1926 | /// [`raw_query`].
[INFO] [stdout]      |       ^^^^^^^^^ no item named `raw_query` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `raw_query_on`
[INFO] [stdout]      |
[INFO] [stdout] 1926 | /// [`raw_query_on`].
[INFO] [stdout]      |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `raw_query`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1934:10
[INFO] [stdout]      |
[INFO] [stdout] 1934 | /// As [`raw_query`].
[INFO] [stdout]      |          ^^^^^^^^^ no item named `raw_query` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `raw_query_on`
[INFO] [stdout]      |
[INFO] [stdout] 1934 | /// As [`raw_query_on`].
[INFO] [stdout]      |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2602:11
[INFO] [stdout]      |
[INFO] [stdout] 2602 |     /// [`ExecError::Query(QueryError::UnknownField)`] (field `"<pk>"`)
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Driver(sqlx::Error::RowNotFound)`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2624:11
[INFO] [stdout]      |
[INFO] [stdout] 2624 |     /// [`ExecError::Driver(sqlx::Error::RowNotFound)`] when the
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Driver(sqlx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Driver(sqlx::Error::RowNotFound)`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2674:11
[INFO] [stdout]      |
[INFO] [stdout] 2674 |     /// [`ExecError::Driver(sqlx::Error::RowNotFound)`] on empty
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Driver(sqlx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `iterator` links to private item `ChunkedIter`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2805:36
[INFO] [stdout]      |
[INFO] [stdout] 2805 |     ///   chunks but outside the [`ChunkedIter`] API.
[INFO] [stdout]      |                                    ^^^^^^^^^^^ this item is private
[INFO] [stdout]      |
[INFO] [stdout]      = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QueryError`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2811:19
[INFO] [stdout]      |
[INFO] [stdout] 2811 |     /// Returns [`QueryError`] if the queryset fails to compile.
[INFO] [stdout]      |                   ^^^^^^^^^^ no item named `QueryError` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Fetcher`
[INFO] [stdout]    --> src/sql/foreign_key.rs:275:58
[INFO] [stdout]     |
[INFO] [stdout] 275 |     /// * Any [`ExecError`] produced by the underlying [`Fetcher`].
[INFO] [stdout]     |                                                          ^^^^^^^ no item named `Fetcher` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Point` links to private item `self`
[INFO] [stdout]   --> src/sql/geometry.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 45 | /// [module docs](self). Carries its SRID so it round-trips losslessly
[INFO] [stdout]    |                   ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `HStore` links to private item `self`
[INFO] [stdout]   --> src/sql/hstore.rs:50:62
[INFO] [stdout]    |
[INFO] [stdout] 50 | /// Typed PostgreSQL `hstore` column — see the [module docs](self).
[INFO] [stdout]    |                                                              ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]   --> src/sql/model_shortcuts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | /// [`ExecError::Query(QueryError::UnknownField)`] keyed by the
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]   --> src/sql/model_shortcuts.rs:41:7
[INFO] [stdout]    |
[INFO] [stdout] 41 | /// [`ExecError::Query(QueryError::UnknownField)`] when the model
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `UpdaterPool::execute_pool`
[INFO] [stdout]   --> src/sql/model_shortcuts.rs:72:10
[INFO] [stdout]    |
[INFO] [stdout] 72 | /// As [`UpdaterPool::execute_pool`]; or
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `UpdaterPool` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]   --> src/sql/model_shortcuts.rs:73:7
[INFO] [stdout]    |
[INFO] [stdout] 73 | /// [`ExecError::Query(QueryError::UnknownField)`] when `col` does
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FetcherPool::fetch`
[INFO] [stdout]    --> src/sql/model_shortcuts.rs:176:10
[INFO] [stdout]     |
[INFO] [stdout] 176 | /// As [`FetcherPool::fetch`]; or
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^ no item named `FetcherPool` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExecError::Query(QueryError::UnknownField)`
[INFO] [stdout]    --> src/sql/model_shortcuts.rs:177:7
[INFO] [stdout]     |
[INFO] [stdout] 177 | /// [`ExecError::Query(QueryError::UnknownField)`] when any
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `ExecError` has no variant or associated item named `Query(QueryError`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PoolError::MysqlNotYetImplemented`
[INFO] [stdout]    --> src/sql/pool.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |     ///   [`PoolError::MysqlNotYetImplemented`] in batch1, full
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `PoolError` has no variant or associated item named `MysqlNotYetImplemented`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PoolError::MysqlNotYetImplemented`
[INFO] [stdout]    --> src/sql/pool.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |     /// - [`PoolError::MysqlNotYetImplemented`] — see error variant.
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `PoolError` has no variant or associated item named `MysqlNotYetImplemented`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Range` links to private item `self`
[INFO] [stdout]   --> src/sql/range.rs:66:59
[INFO] [stdout]    |
[INFO] [stdout] 66 | /// Typed PostgreSQL range column — see the [module docs](self).
[INFO] [stdout]    |                                                           ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Vector` links to private item `self`
[INFO] [stdout]   --> src/sql/vector.rs:47:55
[INFO] [stdout]    |
[INFO] [stdout] 47 | /// pgvector embedding column — see the [module docs](self). Transparent
[INFO] [stdout]    |                                                       ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `active_filter`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`active_filter`] returns `None`, [`compose_with_active`] returns
[INFO] [stdout]            ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `active_filter` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `compose_with_active`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`active_filter`] returns `None`, [`compose_with_active`] returns
[INFO] [stdout]                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `compose_with_active` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `urls`
[INFO] [stdout]   --> src/admin/mod.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | //! - [`urls`] — `router(pool)`, `Builder`, `Config`, `AppState` (route table).
[INFO] [stdout]    |         ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `views`
[INFO] [stdout]   --> src/admin/mod.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 | //! - [`views`] — one async fn per route; consumes the inventory registry.
[INFO] [stdout]    |         ^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `helpers`
[INFO] [stdout]   --> src/admin/mod.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | //! - [`helpers`] — model lookup, FK joins, render_cell, render_form, pager.
[INFO] [stdout]    |         ^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `templates`
[INFO] [stdout]   --> src/admin/mod.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | //! - [`templates`] — bundled Tera registry + render entry-point.
[INFO] [stdout]    |         ^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `admin` links to private item `errors`
[INFO] [stdout]   --> src/admin/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 | //! - [`errors`] — `AdminError` and its `IntoResponse` impl.
[INFO] [stdout]    |         ^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_admin_inline`
[INFO] [stdout]   --> src/admin/inlines.rs:79:7
[INFO] [stdout]    |
[INFO] [stdout] 79 | /// [`register_admin_inline!`] invocation.
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^ no item named `register_admin_inline` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_admin_inline` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ResolvedSso`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`ResolvedSso`] from a [`SsoProvider`](crate::sso::SsoProvider) row,
[INFO] [stdout]            ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ResolvedSso` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `sso` links to private item `crate::tenancy::sso`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           downstream callers (e.g. [`crate::tenancy::sso`]).
[INFO] [stdout]                                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `sso_provider` links to private item `crate::tenancy::sso`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           paths resolving for existing callers (e.g. [`crate::tenancy::sso`],
[INFO] [stdout]                                                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `sso_provider` links to private item `crate::admin::urls`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`crate::admin::urls`]). The table name (`rustango_sso_providers`) and
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ensure_table`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           bootstrapped idempotently via [`ensure_table`] (the same pattern as
[INFO] [stdout]                                          ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ensure_table` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AdminTotp::SCHEMA`
[INFO] [stdout]   --> src/admin/totp_store.rs:40:33
[INFO] [stdout]    |
[INFO] [stdout] 40 | /// Drift-free: rendered from [`AdminTotp::SCHEMA`] through the migration
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^ the struct `AdminTotp` has no field or associated item named `SCHEMA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AdminAction`
[INFO] [stdout]   --> src/admin/urls.rs:20:29
[INFO] [stdout]    |
[INFO] [stdout] 20 | /// Future returned by an [`AdminAction`] handler.
[INFO] [stdout]    |                             ^^^^^^^^^^^ no item named `AdminAction` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `AdminActionFn`
[INFO] [stdout]    |
[INFO] [stdout] 20 | /// Future returned by an [`AdminActionFn`] handler.
[INFO] [stdout]    |                                        ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SecurityHeadersLayer`
[INFO] [stdout]    --> src/config/sections.rs:587:15
[INFO] [stdout]     |
[INFO] [stdout] 587 |     /// the [`SecurityHeadersLayer`] preset.
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^ no item named `SecurityHeadersLayer` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Model`
[INFO] [stdout]  --> src/forms/mod.rs:9:29
[INFO] [stdout]   |
[INFO] [stdout] 9 | //! | [`ModelForm`] | Any [`Model`] table — parse + validate + save without a dedicated struct |
[INFO] [stdout]   |                             ^^^^^ no item named `Model` in scope
[INFO] [stdout]   |
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Layer`
[INFO] [stdout]   --> src/forms/csrf.rs:63:45
[INFO] [stdout]    |
[INFO] [stdout] 63 | /// Create the CSRF middleware as a tower [`Layer`].
[INFO] [stdout]    |                                             ^^^^^ no item named `Layer` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `layer`
[INFO] [stdout]    |
[INFO] [stdout] 63 - /// Create the CSRF middleware as a tower [`Layer`].
[INFO] [stdout] 63 + /// Create the CSRF middleware as a tower [`layer`].
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Layer`
[INFO] [stdout]    --> src/forms/csrf.rs:289:17
[INFO] [stdout]     |
[INFO] [stdout] 289 | /// The tower [`Layer`] implementation. Wraps inner services with
[INFO] [stdout]     |                 ^^^^^ no item named `Layer` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `layer`
[INFO] [stdout]     |
[INFO] [stdout] 289 - /// The tower [`Layer`] implementation. Wraps inner services with
[INFO] [stdout] 289 + /// The tower [`layer`] implementation. Wraps inner services with
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Model`
[INFO] [stdout]    --> src/forms/mod.rs:487:56
[INFO] [stdout]     |
[INFO] [stdout] 487 | /// Schema-driven form that can insert or update any [`Model`] row.
[INFO] [stdout]     |                                                        ^^^^^ no item named `Model` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `set` links to private item `Self::columns`
[INFO] [stdout]    --> src/forms/mod.rs:719:19
[INFO] [stdout]     |
[INFO] [stdout] 719 |     /// inspect [`Self::columns`] / [`Self::has`] first.
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NullCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`NullCache`] | `cache` | No-op; all reads return `None`. Good for tests. |
[INFO] [stdout]              ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NullCache` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemoryCache`] | `cache` | Per-process HashMap with TTL. Zero external deps. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryCache` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FileCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`FileCache`] | `cache` | File-system, one file per key (#408). |
[INFO] [stdout]              ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FileCache` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `db_backend::DatabaseCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`DatabaseCache`](db_backend::DatabaseCache) | `cache` + any DB feature | DB table, tri-dialect upsert (#409). |
[INFO] [stdout]                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `db_backend` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `redis_backend::RedisCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`RedisCache`](redis_backend::RedisCache) | `cache-redis` | Redis-backed via async connection manager. |
[INFO] [stdout]                            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `redis_backend` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `BoxedCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Use [`BoxedCache`] as a convenient alias.
[INFO] [stdout]                ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `BoxedCache` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `cached_render`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           This module ships [`cached_render`], the handler-side equivalent:
[INFO] [stdout]                              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `cached_render` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CachePageLayer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           1. [`CachePageLayer`] — a tower layer that caches successful GET
[INFO] [stdout]               ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CachePageLayer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CachePageLayer::cache_query`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]              [`CachePageLayer::cache_query`], which folds a digest of the
[INFO] [stdout]               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CachePageLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CacheControl`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           2. [`CacheControl`] — fluent builder for the `Cache-Control`
[INFO] [stdout]               ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CacheControl` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `never_cache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           3. [`never_cache`] — shorthand for `Cache-Control: no-store,
[INFO] [stdout]               ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `never_cache` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `vary_on`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           4. [`vary_on`] — builds a `Vary` header from a list of header names.
[INFO] [stdout]               ^^^^^^^^^
[INFO] [stdout]   = note: no item named `vary_on` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CachePageLayer::cache_query`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             is cached only when [`CachePageLayer::cache_query`] is enabled;
[INFO] [stdout]                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CachePageLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CachePageLayer::cache_authenticated`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`CachePageLayer::cache_authenticated`].
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CachePageLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `request`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           `got_request_exception`) live in [`request`] — separate registry,
[INFO] [stdout]                                             ^^^^^^^^^
[INFO] [stdout]   = note: no item named `request` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `request::RequestSignalsLayer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`request::RequestSignalsLayer`] tower layer that fires them
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `request` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `prune_all`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           CLI or call [`prune_all`] from app code (cron, background job,
[INFO] [stdout]                        ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `prune_all` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_prunable`
[INFO] [stdout]   --> src/prunable.rs:78:22
[INFO] [stdout]    |
[INFO] [stdout] 78 | /// must also call [`register_prunable!`] to advertise the impl to
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^ no item named `register_prunable` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_prunable` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Cache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           sliding-window counter on top of the same [`Cache`] trait.
[INFO] [stdout]                                                      ^^^^^^^
[INFO] [stdout]   = note: no item named `Cache` in scope
[INFO] [stdout]   = help: there's a similarly named item `cache`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HealthRouter::check`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Add additional checks (Redis, S3, external APIs) via [`HealthRouter::check`]:
[INFO] [stdout]                                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HealthRouter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HealthRouter::cache_probe`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`HealthRouter::cache_probe`] — `Cache::set`/`get` round-trip
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HealthRouter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HealthRouter::http_probe`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`HealthRouter::http_probe`] — GET a URL, checking it returns 2xx
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HealthRouter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HealthRouter::tcp_probe`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`HealthRouter::tcp_probe`] — open a TCP connection. Always
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HealthRouter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HttpClient`
[INFO] [stdout]    --> src/health.rs:215:45
[INFO] [stdout]     |
[INFO] [stdout] 215 |     /// Built-in probe — issues a GET via [`HttpClient`] and checks the
[INFO] [stdout]     |                                             ^^^^^^^^^^ no item named `HttpClient` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ConsoleMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`ConsoleMailer`] | Development — prints emails to stdout. Default. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ConsoleMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemoryMailer`] | Tests — captures emails into a `Vec` for assertions. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FileMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`FileMailer`] | Dev / staging — writes one `.eml` per send under a directory. |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FileMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NullMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`NullMailer`] | Production guardrail — accepts and discards every send (CI / disabled mail). |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NullMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SmtpMailer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`SmtpMailer`] | Production — async lettre + rustls SMTP relay (`email-smtp` feature). |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SmtpMailer` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Email`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - The full [`Email`] (subject, bodies, recipients, headers) is
[INFO] [stdout]                       ^^^^^^^
[INFO] [stdout]   = note: no item named `Email` in scope
[INFO] [stdout]   = help: there's a similarly named item `email`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Cast`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           A model field typed [`Cast<C>`] stores its logical value `C::Value`
[INFO] [stdout]                                ^^^^^^^^^
[INFO] [stdout]   = note: no item named `Cast` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CastValue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           in memory but reads/writes the database through the [`CastValue`]
[INFO] [stdout]                                                                ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CastValue` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CastValue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Implement [`CastValue`] for your own marker type and use it as
[INFO] [stdout]                      ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CastValue` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EncryptedString`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`EncryptedString`] built-in is the reference implementation; a
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `EncryptedString` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `url_codec` links to private item `crypto`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`pagination`], [`urls`], [`crypto`], [`default_filters`]) import it.
[INFO] [stdout]                                       ^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `sign_request`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Use [`sign_request`] to build the `Authorization` header value
[INFO] [stdout]                ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `sign_request` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryJtiStore`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`InMemoryJtiStore`] — process-local `Mutex<HashMap<jti, exp>>`.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryJtiStore` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `JtiStore`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - Roll your own — implement [`JtiStore`] against Redis, a
[INFO] [stdout]                                          ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `JtiStore` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::cache::RedisCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`crate::cache::RedisCache`] is the smallest possible bridge.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RedisCache` in module `cache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Media`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           DDL bootstrap. See the [`Media`] struct for the column definitions.
[INFO] [stdout]                                   ^^^^^^^
[INFO] [stdout]   = note: no item named `Media` in scope
[INFO] [stdout]   = help: there's a similarly named item `media`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NotificationDispatch`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           2. You impl `Notification<User>` for it, returning a [`NotificationDispatch`]
[INFO] [stdout]                                                                 ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NotificationDispatch` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NotificationResult`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           database / log delivery. The returned [`NotificationResult`] reports
[INFO] [stdout]                                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NotificationResult` in scope
[INFO] [stdout]   = help: there's a similarly named item `notifications`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryJobQueue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemoryJobQueue`] | Single-process apps, dev, tests. Jobs lost on restart. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryJobQueue` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordReset::issue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           1. User requests a reset → call [`PasswordReset::issue`] with their
[INFO] [stdout]                                              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordReset` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordReset::verify`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]              [`PasswordReset::verify`] → if Ok, render the "set new password" form.
[INFO] [stdout]               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordReset` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EmailVerification`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Same pattern with [`EmailVerification`] — issue the URL after signup,
[INFO] [stdout]                              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `EmailVerification` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `LocalStorage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`LocalStorage`] | Single-server deployments — files on local disk |
[INFO] [stdout]              ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `LocalStorage` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemoryStorage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemoryStorage`] | Tests — files in a `HashMap`, never touch disk |
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemoryStorage` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `s3::S3Storage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`s3::S3Storage`] | AWS S3, Cloudflare R2, Backblaze B2, MinIO — any S3-compatible API. Behind the `storage-s3` feature. |
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `s3` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::config::sections::I18nSettings`
[INFO] [stdout]    --> src/i18n/mod.rs:695:39
[INFO] [stdout]     |
[INFO] [stdout] 695 |     /// Build a `Translator` from a [`crate::config::sections::I18nSettings`]
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `sections` in module `config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EnvSecrets`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`EnvSecrets`] | Reads from environment variables (with optional prefix) |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `EnvSecrets` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `InMemorySecrets`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`InMemorySecrets`] | Tests — secrets in a HashMap |
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `InMemorySecrets` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `BulkAction::run`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           v0.38 slice 6 — fully tri-dialect. [`BulkAction::run`] takes
[INFO] [stdout]                                                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `BulkAction` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `BulkActionRegistry`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           populated from a [`BulkActionRegistry`] mounted on the
[INFO] [stdout]                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `BulkActionRegistry` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RequestId`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`RequestId`] axum extractor so handlers can include it in log events.
[INFO] [stdout]            ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RequestId` in scope
[INFO] [stdout]   = help: there's a similarly named item `request_id`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RequestIdLayer::always_generate`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           a fresh one with [`RequestIdLayer::always_generate`].
[INFO] [stdout]                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RequestIdLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AllowedHostsLayer::from_settings_list`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`AllowedHostsLayer::from_settings_list`]. Empty list disables
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `AllowedHostsLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SslRedirectLayer::proxy_ssl_header`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           header pair with [`SslRedirectLayer::proxy_ssl_header`] (Django
[INFO] [stdout]                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SslRedirectLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SslRedirectLayer::exempt`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`SslRedirectLayer::exempt`] takes prefix patterns; a request
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SslRedirectLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RealIp`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           request extensions as a [`RealIp`] value.
[INFO] [stdout]                                    ^^^^^^^^
[INFO] [stdout]   = note: no item named `RealIp` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `IdempotencyLayer::cache_status_codes`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`IdempotencyLayer::cache_status_codes`].
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `IdempotencyLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `IdempotencyLayer::scope`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`IdempotencyLayer::scope`] when you have multiple endpoints whose
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `IdempotencyLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StaticFiles::no_canonicalize`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             with [`StaticFiles::no_canonicalize`] if you intentionally
[INFO] [stdout]                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `StaticFiles` in scope
[INFO] [stdout]   = help: there's a similarly named item `static_files`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StaticFiles::serve_hidden`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             default — toggle via [`StaticFiles::serve_hidden`].
[INFO] [stdout]                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `StaticFiles` in scope
[INFO] [stdout]   = help: there's a similarly named item `static_files`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StaticFiles::cache_control`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             Override with [`StaticFiles::cache_control`].
[INFO] [stdout]                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `StaticFiles` in scope
[INFO] [stdout]   = help: there's a similarly named item `static_files`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ProblemDetails::with_extension`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           standard ones. Add them with [`ProblemDetails::with_extension`]:
[INFO] [stdout]                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ProblemDetails` in scope
[INFO] [stdout]   = help: there's a similarly named item `problem_details`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::cache::RedisCache`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Pair with [`crate::cache::RedisCache`] for cross-replica visibility.
[INFO] [stdout]                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RedisCache` in module `cache`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FeatureFlags::ttl`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           with [`FeatureFlags::ttl`].
[INFO] [stdout]                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FeatureFlags` in scope
[INFO] [stdout]   = help: there's a similarly named item `feature_flags`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `DistributedLock::for_tenant`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`DistributedLock::for_tenant`] so each tenant gets its own lock
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `DistributedLock` in scope
[INFO] [stdout]   = help: there's a similarly named item `distributed_lock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `http.method`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`http.method`], [`http.status_code`]) that pre-date the current
[INFO] [stdout]             ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `http.method` in scope
[INFO] [stdout]   = help: there's a similarly named item `http_methods`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `http.status_code`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`http.method`], [`http.status_code`]) that pre-date the current
[INFO] [stdout]                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `http.status_code` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SignatureFormat`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             chosen [`SignatureFormat`]).
[INFO] [stdout]                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SignatureFormat` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `WebhookSubscription::header`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - Any extra headers added via [`WebhookSubscription::header`].
[INFO] [stdout]                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `WebhookSubscription` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `WebhookSubscription::retry_status_codes`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Customize per-subscription with [`WebhookSubscription::retry_status_codes`].
[INFO] [stdout]                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `WebhookSubscription` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ensure_table`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             bootstrapped idempotently via [`ensure_table`] (the `audit` /
[INFO] [stdout]                                            ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ensure_table` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `WebauthnCredential::SCHEMA`
[INFO] [stdout]   --> src/passkey/mod.rs:75:31
[INFO] [stdout]    |
[INFO] [stdout] 75 | /// index) is rendered from [`WebauthnCredential::SCHEMA`] through the
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `WebauthnCredential` has no field or associated item named `SCHEMA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Paginator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Page-number shape: [`Paginator`] + [`Page`]
[INFO] [stdout]                                  ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Paginator` in scope
[INFO] [stdout]   = help: there's a similarly named item `pagination`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Page`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Page-number shape: [`Paginator`] + [`Page`]
[INFO] [stdout]                                                  ^^^^^^
[INFO] [stdout]   = note: no item named `Page` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CursorPaginator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Cursor shape: [`CursorPaginator`] + [`Cursor`] + [`CursorPage`]
[INFO] [stdout]                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CursorPaginator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Cursor`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Cursor shape: [`CursorPaginator`] + [`Cursor`] + [`CursorPage`]
[INFO] [stdout]                                                   ^^^^^^^^
[INFO] [stdout]   = note: no item named `Cursor` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CursorPage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## Cursor shape: [`CursorPaginator`] + [`Cursor`] + [`CursorPage`]
[INFO] [stdout]                                                                ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CursorPage` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SecurityHeadersLayer::strict`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`SecurityHeadersLayer::strict`] — production: HSTS 1y + preload, XFO=DENY,
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SecurityHeadersLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SecurityHeadersLayer::relaxed`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`SecurityHeadersLayer::relaxed`] — embeddable: HSTS 1y, XFO=SAMEORIGIN,
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SecurityHeadersLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SecurityHeadersLayer::dev`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`SecurityHeadersLayer::dev`] — local: nosniff only (HSTS would lock you to https forever)
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SecurityHeadersLayer` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CSP_NONCE_PLACEHOLDER`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           header. If it contains the literal string [`CSP_NONCE_PLACEHOLDER`]
[INFO] [stdout]                                                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CSP_NONCE_PLACEHOLDER` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `verify`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`verify`] only checks the signature + expiry — it does **not** make
[INFO] [stdout]            ^^^^^^^^
[INFO] [stdout]   = note: no item named `verify` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EventBus`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           WebSocket handler scaffold — fan-out via the SSE [`EventBus`].
[INFO] [stdout]                                                               ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `EventBus` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Provider`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`OAuth2Provider`] handles **both** pure OAuth2 (GitHub, Discord, Slack)
[INFO] [stdout]            ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Provider` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Registry`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`OAuth2Registry`] maps `(tenant_id, provider_name)` to a configured
[INFO] [stdout]            ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Registry` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Provider`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`OAuth2Provider`]. Build it from config at startup, OR back it with the
[INFO] [stdout]            ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Provider` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Provider::from_discovery`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`OAuth2Provider::from_discovery`] fetches `.well-known/openid-configuration`
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Provider` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `sso` links to private item `crate::tenancy::sso`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`crate::tenancy::sso`]), and members ([`crate::tenancy::member_auth`]).
[INFO] [stdout]             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `sso` links to private item `crate::tenancy::sso`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           bare admin, the tenant admin console ([`crate::tenancy::sso`]), and
[INFO] [stdout]                                                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SsoProvider`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           admin UI (the [`SsoProvider`] / [`crate::tenancy::sso::SharedSsoProvider`]
[INFO] [stdout]                          ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SsoProvider` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `sso` links to private item `crate::tenancy::sso::SharedSsoProvider`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           admin UI (the [`SsoProvider`] / [`crate::tenancy::sso::SharedSsoProvider`]
[INFO] [stdout]                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Provider`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           builds one [`OAuth2Provider`] per login.
[INFO] [stdout]                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Provider` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Provider::begin`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`OAuth2Provider::begin`]/[`complete`](OAuth2Provider::complete) +
[INFO] [stdout]             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Provider` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OAuth2Provider::complete`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`OAuth2Provider::begin`]/[`complete`](OAuth2Provider::complete) +
[INFO] [stdout]                                                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OAuth2Provider` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `seal_flow`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`seal_flow`]/[`open_flow`]) to prove identity, then the *caller*
[INFO] [stdout]            ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `seal_flow` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `open_flow`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`seal_flow`]/[`open_flow`]) to prove identity, then the *caller*
[INFO] [stdout]                          ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `open_flow` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `provider` links to private item `crate::tenancy::sso::SharedSsoProvider`
[INFO] [stdout]   --> src/sso/provider.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | //! shared set is the sibling [`crate::tenancy::sso::SharedSsoProvider`].
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::tenancy::secrets::ChainSecretsResolver`
[INFO] [stdout]    --> src/sso/mod.rs:167:7
[INFO] [stdout]     |
[INFO] [stdout] 167 | /// [`crate::tenancy::secrets::ChainSecretsResolver`] instead.
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `secrets` in module `tenancy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `auth` links to private item `agent_token`
[INFO] [stdout]   --> src/mcp/auth.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 | //! * **HTTP handlers** — [`agent_token`] (the client-credentials
[INFO] [stdout]    |                             ^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `auth` links to private item `post_authed`
[INFO] [stdout]   --> src/mcp/auth.rs:12:53
[INFO] [stdout]    |
[INFO] [stdout] 12 | //!   `{name, secret}` → scoped-JWT endpoint) and [`post_authed`] (the
[INFO] [stdout]    |                                                     ^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `McpContext`
[INFO] [stdout]  --> src/mcp/progress.rs:5:61
[INFO] [stdout]   |
[INFO] [stdout] 5 | //!   the handler gets a live [`ProgressReporter`] on its [`McpContext`];
[INFO] [stdout]   |                                                             ^^^^^^^^^^ no item named `McpContext` in scope
[INFO] [stdout]   |
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `progress` links to private item `CancelGuard`
[INFO] [stdout]   --> src/mcp/progress.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | //!   ([`CancelGuard`]) so a panicking handler never leaks an entry.
[INFO] [stdout]    |          ^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_mcp_resource`
[INFO] [stdout]   --> src/mcp/resources.rs:10:35
[INFO] [stdout]    |
[INFO] [stdout] 10 | //!   resources registered with [`register_mcp_resource!`] (the same
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^ no item named `register_mcp_resource` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_mcp_resource` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `secure_tenant_router` links to private item `default_jwt`
[INFO] [stdout]   --> src/mcp/router.rs:74:62
[INFO] [stdout]    |
[INFO] [stdout] 74 | /// agent token. Signs with `RUSTANGO_SESSION_SECRET` (see [`default_jwt`]).
[INFO] [stdout]    |                                                              ^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `secure_tenant_router_from_settings` links to private item `default_jwt`
[INFO] [stdout]   --> src/mcp/router.rs:90:49
[INFO] [stdout]    |
[INFO] [stdout] 90 | /// Signs with `RUSTANGO_SESSION_SECRET` (see [`default_jwt`]). Slice 6 (#1019).
[INFO] [stdout]    |                                                 ^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_mcp_tool`
[INFO] [stdout]  --> src/mcp/tools.rs:3:49
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! Tools are registered at compile time with [`register_mcp_tool!`], which
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^^^^^^ no item named `register_mcp_tool` in scope
[INFO] [stdout]   |
[INFO] [stdout]   = note: `macro_rules` named `register_mcp_tool` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_mcp_tool`
[INFO] [stdout]   --> src/mcp/tools.rs:90:30
[INFO] [stdout]    |
[INFO] [stdout] 90 | /// `inventory::submit!`); [`register_mcp_tool!`] wraps the user's closure.
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^ no item named `register_mcp_tool` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_mcp_tool` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HttpClient`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`HttpClient`] when you want consistent retry + timeout behavior
[INFO] [stdout]            ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HttpClient` in scope
[INFO] [stdout]   = help: there's a similarly named item `http_client`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RequestBuilder::send_with_retry`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`RequestBuilder::send_with_retry`] (the call must be idempotent)
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RequestBuilder` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `QueryRouterExt::query`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`QueryRouterExt::query`] wraps the *entire* existing [`MethodRouter`]
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `QueryRouterExt` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `MethodRouter`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`QueryRouterExt::query`] wraps the *entire* existing [`MethodRouter`]
[INFO] [stdout]                                                                  ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `MethodRouter` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Params`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`Params<T>`] deserializes `T` from the request querystring on GET /
[INFO] [stdout]            ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Params` in scope
[INFO] [stdout]   = help: there's a similarly named item `params`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PathItem::query`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           attaches a `QUERY` operation (RFC 10008) via [`PathItem::query`] is
[INFO] [stdout]                                                         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PathItem` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `OpenApiSpec::new`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           1. **Hand-build** the spec with [`OpenApiSpec::new`] + the `add_*`
[INFO] [stdout]                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `OpenApiSpec` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Schema::for_serializer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           2. **Generate** from [`Schema::for_serializer`] (when the
[INFO] [stdout]                                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Schema` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `JwtLifecycle::issue_token_with`
[INFO] [stdout]   --> src/tenancy/jwt_lifecycle.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 |     /// [`JwtLifecycle::issue_token_with`]. Empty for tokens issued via
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `JwtLifecycle` has no field or associated item named `issue_token_with`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `reserved_claims`
[INFO] [stdout]   --> src/tenancy/jwt_lifecycle.rs:94:19
[INFO] [stdout]    |
[INFO] [stdout] 94 | /// Returned by [`reserved_claims`] for inspection.
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ no item named `reserved_claims` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `manage` links to private item `tenants`
[INFO] [stdout]   --> src/tenancy/manage/mod.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | //! - [`tenants`] — `create-tenant`, `drop-tenant`, `purge-tenant`,
[INFO] [stdout]    |         ^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `manage` links to private item `users`
[INFO] [stdout]   --> src/tenancy/manage/mod.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | //! - [`users`] — `create-operator`, `create-user`, plus the
[INFO] [stdout]    |         ^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `manage` links to private item `migrations`
[INFO] [stdout]   --> src/tenancy/manage/mod.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | //! - [`migrations`] — `init-tenancy`, `migrate`, `migrate-registry`,
[INFO] [stdout]    |         ^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `manage` links to private item `server`
[INFO] [stdout]   --> src/tenancy/manage/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 | //! - [`server`] — `run-server` (thin wrapper around
[INFO] [stdout]    |         ^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `manage` links to private item `args`
[INFO] [stdout]   --> src/tenancy/manage/mod.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 | //! - [`args`] — shared positional / flag parsing helpers.
[INFO] [stdout]    |         ^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `super::run_with_writer`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`super::run_with_writer`] is unchanged for shell consumers.
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `run_with_writer` in module `tenancy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `member_auth` links to private item `crate::tenancy::sso`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ([`crate::tenancy::sso`], [`crate::admin::sso`]). It reuses the exact
[INFO] [stdout]             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `provision_member`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             v1 uses the built-in default provisioning in [`provision_member`].
[INFO] [stdout]                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `provision_member` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `member_auth` links to private item `crate::tenancy::sso::SharedSsoProvider`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             ([`crate::tenancy::sso::SharedSsoProvider`]) is a follow-up.
[INFO] [stdout]               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `require_auth`
[INFO] [stdout]    --> src/tenancy/middleware.rs:201:16
[INFO] [stdout]     |
[INFO] [stdout] 201 |     /// Like [`require_auth`] but does NOT return 401 for anonymous requests.
[INFO] [stdout]     |                ^^^^^^^^^^^^ no item named `require_auth` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `operator_console` links to private item `org_edit_submit`
[INFO] [stdout]   --> src/tenancy/operator_console/mod.rs:29:38
[INFO] [stdout]    |
[INFO] [stdout] 29 | //! pool-rebuild side effect — see [`org_edit_submit`].
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `hash_with`
[INFO] [stdout]   --> src/tenancy/password.rs:10:36
[INFO] [stdout]    |
[INFO] [stdout] 10 | //! into stronger parameters via [`hash_with`].
[INFO] [stdout]    |                                    ^^^^^^^^^ no item named `hash_with` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ENSURE_SQL`
[INFO] [stdout]    --> src/tenancy/permissions.rs:727:37
[INFO] [stdout]     |
[INFO] [stdout] 727 | /// unique constraint declared in [`ENSURE_SQL`].
[INFO] [stdout]     |                                     ^^^^^^^^^^ no item named `ENSURE_SQL` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ENSURE_SQL`
[INFO] [stdout]    --> src/tenancy/permissions.rs:866:52
[INFO] [stdout]     |
[INFO] [stdout] 866 | /// `(user_id, codename)` unique constraint from [`ENSURE_SQL`]) lives
[INFO] [stdout]     |                                                    ^^^^^^^^^^ no item named `ENSURE_SQL` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Self::default_to`
[INFO] [stdout]    --> src/tenancy/secrets.rs:120:58
[INFO] [stdout]     |
[INFO] [stdout] 120 |     /// Construct an empty chain. Use [`Self::push`] / [`Self::default_to`]
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^ the struct `ChainSecretsResolver` has no field or associated item named `default_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `TenantPoolsConfig::max_cached_database_pools`
[INFO] [stdout]   --> src/tenancy/sweep.rs:58:10
[INFO] [stdout]    |
[INFO] [stdout] 58 | //! by [`TenantPoolsConfig::max_cached_database_pools`] (default **64**)
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `TenantPoolsConfig` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Tenant`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`Tenant`] | Tenant-scoped DB connection (org + pool) |
[INFO] [stdout]              ^^^^^^^^
[INFO] [stdout]   = note: no item named `Tenant` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SessionUser`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`SessionUser`] | Browser-session tenant user (`None` = anonymous) |
[INFO] [stdout]              ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SessionUser` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SessionOperator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`SessionOperator`] | Browser-session operator (`None` = anonymous) |
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `SessionOperator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SessionUser`
[INFO] [stdout]   --> src/extractors/tenant.rs:36:46
[INFO] [stdout]    |
[INFO] [stdout] 36 |     /// [`crate::server::Builder`] so that [`SessionUser`] can validate
[INFO] [stdout]    |                                              ^^^^^^^^^^^ no item named `SessionUser` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Model`
[INFO] [stdout]    --> src/viewset/mod.rs:577:62
[INFO] [stdout]     |
[INFO] [stdout] 577 | /// Builder for a set of REST CRUD endpoints over a single [`Model`] table.
[INFO] [stdout]     |                                                              ^^^^^ no item named `Model` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `serializer` links to private item `Bridge`
[INFO] [stdout]    --> src/viewset/mod.rs:646:30
[INFO] [stdout]     |
[INFO] [stdout] 646 |     /// Internally boxes a [`Bridge<S>`] behind a [`SerializerBridge`]
[INFO] [stdout]     |                              ^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `serializer` links to private item `SerializerBridge`
[INFO] [stdout]    --> src/viewset/mod.rs:646:53
[INFO] [stdout]     |
[INFO] [stdout] 646 |     /// Internally boxes a [`Bridge<S>`] behind a [`SerializerBridge`]
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RESERVED_LIST_KEYS`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * [`RESERVED_LIST_KEYS`] / [`is_reserved_list_key`] — the param
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RESERVED_LIST_KEYS` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `is_reserved_list_key`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * [`RESERVED_LIST_KEYS`] / [`is_reserved_list_key`] — the param
[INFO] [stdout]                                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `is_reserved_list_key` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `parse_ordering`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * [`parse_ordering`] — the `?ordering=col,-col2,col3` split with
[INFO] [stdout]              ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `parse_ordering` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `clamp_page_size`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * [`clamp_page_size`] — the `?page_size=N` resolver with the
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `clamp_page_size` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ListView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`ListView`] | Paginated list — `?page=N` query param | `<table>_list.html` |
[INFO] [stdout]              ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ListView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `DetailView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`DetailView`] | Single row by primary key — `/{pk}` | `<table>_detail.html` |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `DetailView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CreateView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`CreateView`] | GET empty form / POST insert / 303 to `success_url` | `<table>_form.html` |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CreateView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `UpdateView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`UpdateView`] | GET prefilled form / POST update / 303 | `<table>_form.html` |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `UpdateView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `DeleteView`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           | [`DeleteView`] | GET confirm / POST delete / 303 | `<table>_confirm_delete.html` |
[INFO] [stdout]              ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `DeleteView` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `enabled`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           This module provides the inverse path. [`enabled`] decides whether
[INFO] [stdout]                                                   ^^^^^^^^^
[INFO] [stdout]   = note: no item named `enabled` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RUSTANGO_ENV`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           tiered-settings convention ([`RUSTANGO_ENV`] != `"prod"`, or the
[INFO] [stdout]                                        ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RUSTANGO_ENV` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `error_page_html`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           explicit `RUSTANGO_TEMPLATE_DEBUG=1` override). [`error_page_html`]
[INFO] [stdout]                                                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `error_page_html` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `apply_to_tera`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           them up via [`apply_to_tera`].
[INFO] [stdout]                        ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `apply_to_tera` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `apply_to_tera`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           must call [`apply_to_tera`] explicitly. It's a no-op when no
[INFO] [stdout]                      ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `apply_to_tera` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_filters`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Call [`register_filters`] on a Tera instance to make them available:
[INFO] [stdout]                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `register_filters` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `timeuntil`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           mirror [`timeuntil`] returns the duration from `now` to a future
[INFO] [stdout]                   ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `timeuntil` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `timeuntil`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`timeuntil`].
[INFO] [stdout]              ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `timeuntil` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_filters`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`register_filters`] on a Tera instance to make them available:
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `register_filters` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::auth`
[INFO] [stdout]     --> src/validators.rs:1025:18
[INFO] [stdout]      |
[INFO] [stdout] 1025 | /// error. Use [`crate::auth`] / `jsonwebtoken` to actually verify
[INFO] [stdout]      |                  ^^^^^^^^^^^ no item named `auth` in module `rustango`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `reverse`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           through [`reverse`]. The shape mirrors Django's URL conf:
[INFO] [stdout]                    ^^^^^^^^^
[INFO] [stdout]   = note: no item named `reverse` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ReverseError`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           or extra params return a [`ReverseError`] at call time — there's
[INFO] [stdout]                                     ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `ReverseError` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `duplicates`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           finds in the inventory. Call [`duplicates`] at boot to surface any
[INFO] [stdout]                                         ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `duplicates` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_url`
[INFO] [stdout]   --> src/urls.rs:75:16
[INFO] [stdout]    |
[INFO] [stdout] 75 | /// time via [`register_url!`] (which calls `inventory::submit!`
[INFO] [stdout]    |                ^^^^^^^^^^^^^ no item named `register_url` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `macro_rules` named `register_url` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_url`
[INFO] [stdout]    --> src/urls.rs:132:7
[INFO] [stdout]     |
[INFO] [stdout] 132 | /// [`register_url!`] across every loaded module. Useful for boot-time
[INFO] [stdout]     |       ^^^^^^^^^^^^^ no item named `register_url` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = note: `macro_rules` named `register_url` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `int_to_base36`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`int_to_base36`](int_to_base36) / [`base36_to_int`](base36_to_int).
[INFO] [stdout]                             ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `int_to_base36` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `base36_to_int`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`int_to_base36`](int_to_base36) / [`base36_to_int`](base36_to_int).
[INFO] [stdout]                                                                ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `base36_to_int` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `int_to_base62`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`int_to_base62`](int_to_base62) / [`base62_to_int`](base62_to_int).
[INFO] [stdout]                             ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `int_to_base62` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `base62_to_int`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`int_to_base62`](int_to_base62) / [`base62_to_int`](base62_to_int).
[INFO] [stdout]                                                                ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `base62_to_int` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `words`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           The `common` flag on [`words`] / [`paragraphs`] mirrors Django's
[INFO] [stdout]                                 ^^^^^^^
[INFO] [stdout]   = note: no item named `words` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `paragraphs`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           The `common` flag on [`words`] / [`paragraphs`] mirrors Django's
[INFO] [stdout]                                             ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `paragraphs` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `COMMON_PARAGRAPH_TEXT`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`COMMON_PARAGRAPH_TEXT`].
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `COMMON_PARAGRAPH_TEXT` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `format_datetime`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           format-char dispatch in [`format_datetime`] for the exhaustive
[INFO] [stdout]                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `format_datetime` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `signing` links to private item `crate::crypto`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Gated behind the same feature union as [`crate::crypto`] —
[INFO] [stdout]                                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `signing` links to private item `crate::crypto`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             [`crate::crypto`] — purpose-isolated per `salt`.
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HeaderValue`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           (and an axum [`HeaderValue`] convenience).
[INFO] [stdout]                         ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `HeaderValue` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `extract_next`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           after a successful auth. Use [`extract_next`] for the read +
[INFO] [stdout]                                         ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `extract_next` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `safe_next`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`safe_next`] to defend against open-redirect attacks:
[INFO] [stdout]            ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `safe_next` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AuthBackendChain`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`AuthBackendChain`] walks an ordered list of [`AuthBackend`]s,
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `AuthBackendChain` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AuthBackend`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`AuthBackendChain`] walks an ordered list of [`AuthBackend`]s,
[INFO] [stdout]                                                          ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `AuthBackend` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Principal`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           ## What [`Principal`] is
[INFO] [stdout]                    ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Principal` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Principal`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           native records. [`Principal`] is the lowest-common-denominator
[INFO] [stdout]                            ^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Principal` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Plug an ordered list of [`PasswordValidator`]s into a
[INFO] [stdout]                                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordValidator` in scope
[INFO] [stdout]   = help: there's a similarly named item `password_validators`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordValidatorChain`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`PasswordValidatorChain`]; call [`PasswordValidatorChain::validate`]
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordValidatorChain` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordValidatorChain::validate`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`PasswordValidatorChain`]; call [`PasswordValidatorChain::validate`]
[INFO] [stdout]                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordValidatorChain` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `MinimumLengthValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`MinimumLengthValidator`] — Django's `MinimumLengthValidator`.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `MinimumLengthValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `MaximumLengthValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`MaximumLengthValidator`] — extra rustango safeguard; some
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `MaximumLengthValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NumericPasswordValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`NumericPasswordValidator`] — Django's same-named validator.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NumericPasswordValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `UserAttributeSimilarityValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`UserAttributeSimilarityValidator`] — Django's same. Rejects
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `UserAttributeSimilarityValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `CommonPasswordValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`CommonPasswordValidator`] — small built-in top-N list. The
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `CommonPasswordValidator` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordValidator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Custom validators implement [`PasswordValidator`] (one method).
[INFO] [stdout]                                        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordValidator` in scope
[INFO] [stdout]   = help: there's a similarly named item `password_validators`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordHasher`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Every entry in the chain implements [`PasswordHasher`]. The
[INFO] [stdout]                                                ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordHasher` in scope
[INFO] [stdout]   = help: there's a similarly named item `password_hashers`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PasswordHasher::identify`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Each hasher's [`PasswordHasher::identify`] returns `true` when
[INFO] [stdout]                          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `PasswordHasher` in scope
[INFO] [stdout]   = help: there's a similarly named item `password_hashers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `sign`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`sign`] to produce the MAC. That way two layers can share one
[INFO] [stdout]            ^^^^^^
[INFO] [stdout]   = note: no item named `sign` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_sitemap`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           that calls [`render_sitemap`] / [`render_sitemap_index`] and
[INFO] [stdout]                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_sitemap` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_sitemap_index`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           that calls [`render_sitemap`] / [`render_sitemap_index`] and
[INFO] [stdout]                                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_sitemap_index` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_sitemap_index`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Large sites split the sitemap across multiple files. [`render_sitemap_index`]
[INFO] [stdout]                                                                 ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_sitemap_index` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Feed`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Build a [`Feed`] (channel metadata + a `Vec<FeedItem>`) and call
[INFO] [stdout]                    ^^^^^^
[INFO] [stdout]   = note: no item named `Feed` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_rss`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`render_rss`] for an RSS 2.0 document or [`render_atom`] for an
[INFO] [stdout]            ^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_rss` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `render_atom`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`render_rss`] for an RSS 2.0 document or [`render_atom`] for an
[INFO] [stdout]                                                      ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `render_atom` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RedirectMap`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Hand-roll a [`RedirectMap`] (or load it from a CSV / hard-coded
[INFO] [stdout]                        ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `RedirectMap` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `redirects_middleware`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           list) and mount [`redirects_middleware`] on your axum router.
[INFO] [stdout]                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `redirects_middleware` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FlatPageMap`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Build a [`FlatPageMap`] (path → `FlatPage { title, body }`) and
[INFO] [stdout]                    ^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FlatPageMap` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `flatpages_middleware`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           mount [`flatpages_middleware`] on your axum router; matching
[INFO] [stdout]                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `flatpages_middleware` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FlatPage`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Each [`FlatPage`] holds a fully-rendered HTML body. The
[INFO] [stdout]                 ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FlatPage` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FlatPage::title`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Per-page `<title>` is exposed via [`FlatPage::title`] so callers
[INFO] [stdout]                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `FlatPage` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status`] — exact-status match against a u16.
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status_in`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status_in`] — status is one of an allowed set.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status_in` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status_2xx`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status_2xx`] — status is in the 200–299 range.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status_2xx` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status_4xx`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status_4xx`] — status is in the 400–499 range.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status_4xx` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_status_5xx`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_status_5xx`] — status is in the 500–599 range.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_status_5xx` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_contains`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_contains`] — response body contains a UTF-8 substring.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_contains` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_not_contains`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_not_contains`] — body does NOT contain a substring.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_not_contains` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_contains_count`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_contains_count`] — body contains fragment N times
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_contains_count` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_redirects`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_redirects`] — 3xx status + `Location` header equality.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_redirects` in scope
[INFO] [stdout]   = help: there's a similarly named item `ssl_redirect`
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_header`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_header`] — exact header value match.
[INFO] [stdout]              ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_header` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_content_type`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_content_type`] — sugar for `assert_header("content-type", ...)`.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_content_type` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_json_eq`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_json_eq`] — body parses as JSON and equals expected
[INFO] [stdout]              ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_json_eq` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_json_not_eq`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_json_not_eq`] — body parses as JSON and DIFFERS from
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_json_not_eq` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_redirect_chain`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_redirect_chain`] — inspect the chain produced by
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_redirect_chain` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_messages`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_messages`] — read + assert on the flash-messages cookie
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_messages` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_cookie_set`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_cookie_set`] — assert a `Set-Cookie` header for the
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_cookie_set` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `assert_cookie_not_set`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           - [`assert_cookie_not_set`] — inverse: assert no `Set-Cookie` for
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `assert_cookie_not_set` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Sequence`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           useful on top of that: a [`Sequence`] for thread-safe per-call
[INFO] [stdout]                                     ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Sequence` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Factory`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           unique values, and a [`Factory`] trait that adds [`Factory::build_batch`]
[INFO] [stdout]                                 ^^^^^^^^^
[INFO] [stdout]   = note: no item named `Factory` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Factory::build_batch`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           unique values, and a [`Factory`] trait that adds [`Factory::build_batch`]
[INFO] [stdout]                                                             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Factory` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Factory::build_pool`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           / [`Factory::build_pool`] for the create-many DB pattern.
[INFO] [stdout]              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Factory` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Settings`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Runs an async closure with a task-local [`Settings`] overlay.
[INFO] [stdout]                                                    ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Settings` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `current`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           Code that reads via [`current`] sees the override for the
[INFO] [stdout]                                ^^^^^^^^^
[INFO] [stdout]   = note: no item named `current` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Cli::tenancy`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]             (or [`crate::tenancy::manage::run`] when [`Cli::tenancy`] is on).
[INFO] [stdout]                                                       ^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `Cli` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `register_admin_inline`
[INFO] [stdout]    --> src/admin/inlines.rs:230:7
[INFO] [stdout]     |
[INFO] [stdout] 230 | /// [`register_admin_inline!`] but takes `ct` + `pk` instead of `fk`.
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^ no item named `register_admin_inline` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = note: `macro_rules` named `register_admin_inline` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]    --> src/contenttypes.rs:819:25
[INFO] [stdout]     |
[INFO] [stdout] 819 | ///   [`ensure_seeded`](crate::contenttypes::ensure_seeded) first).
[INFO] [stdout]     |        ---------------  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]     |        |
[INFO] [stdout]     |        because label contains path that resolves to same destination
[INFO] [stdout]     |
[INFO] [stdout]     = note: when a link's destination is not specified,
[INFO] [stdout]             the label is used to resolve intra-doc links
[INFO] [stdout]     = note: `#[warn(rustdoc::redundant_explicit_links)]` on by default
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]     |
[INFO] [stdout] 819 - ///   [`ensure_seeded`](crate::contenttypes::ensure_seeded) first).
[INFO] [stdout] 819 + ///   [`ensure_seeded`] first).
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/core/fts.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 | //!   [`WhereExpr`](crate::core::WhereExpr) for `.where_raw(...)`.
[INFO] [stdout]    |        -----------  ^^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |        |
[INFO] [stdout]    |        because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 44 - //!   [`WhereExpr`](crate::core::WhereExpr) for `.where_raw(...)`.
[INFO] [stdout] 44 + //!   [`WhereExpr`] for `.where_raw(...)`.
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `X`
[INFO] [stdout]    --> src/core/schema.rs:502:36
[INFO] [stdout]     |
[INFO] [stdout] 502 |     /// headers, breadcrumbs, "Add <X>" buttons, and any other surface
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(rustdoc::invalid_html_tags)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]     --> src/query/mod.rs:1922:36
[INFO] [stdout]      |
[INFO] [stdout] 1922 |     /// [`WhereExpr::ExprCompare`](crate::core::WhereExpr::ExprCompare)
[INFO] [stdout]      |          ------------------------  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]      |          |
[INFO] [stdout]      |          because label contains path that resolves to same destination
[INFO] [stdout]      |
[INFO] [stdout]      = note: when a link's destination is not specified,
[INFO] [stdout]              the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]      |
[INFO] [stdout] 1922 -     /// [`WhereExpr::ExprCompare`](crate::core::WhereExpr::ExprCompare)
[INFO] [stdout] 1922 +     /// [`WhereExpr::ExprCompare`]
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `T`
[INFO] [stdout]     --> src/sql/executor/mod.rs:1265:36
[INFO] [stdout]      |
[INFO] [stdout] 1265 | /// layer in batch6 will route Auto<T>-bearing models to a different
[INFO] [stdout]      |                                    ^^^
[INFO] [stdout]      |
[INFO] [stdout] help: try marking as source code
[INFO] [stdout]      |
[INFO] [stdout] 1265 | /// layer in batch6 will route `Auto<T>`-bearing models to a different
[INFO] [stdout]      |                                +       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `T`
[INFO] [stdout]     --> src/sql/executor/mod.rs:2527:51
[INFO] [stdout]      |
[INFO] [stdout] 2527 |     /// ASC" — the natural insertion order on Auto<T> PKs and stable
[INFO] [stdout]      |                                                   ^^^
[INFO] [stdout]      |
[INFO] [stdout] help: try marking as source code
[INFO] [stdout]      |
[INFO] [stdout] 2527 |     /// ASC" — the natural insertion order on `Auto<T>` PKs and stable
[INFO] [stdout]      |                                               +       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `username`
[INFO] [stdout]   --> src/admin/session.rs:59:41
[INFO] [stdout]    |
[INFO] [stdout] 59 |     /// chrome can render "Signed in as <username>" without a DB hit
[INFO] [stdout]    |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   |
[INFO] [stdout]   = note: when a link's destination is not specified,
[INFO] [stdout]           the label is used to resolve intra-doc links
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `provider`
[INFO] [stdout]    --> src/config/sections.rs:216:36
[INFO] [stdout]     |
[INFO] [stdout] 216 |     /// Turns on the "Sign in with <provider>" button on the admin login.
[INFO] [stdout]     |                                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `T`
[INFO] [stdout]     --> src/forms/mod.rs:1187:26
[INFO] [stdout]      |
[INFO] [stdout] 1187 |     /// schema (sans Auto<T> PK on create).
[INFO] [stdout]      |                          ^^^
[INFO] [stdout]      |
[INFO] [stdout] help: try marking as source code
[INFO] [stdout]      |
[INFO] [stdout] 1187 |     /// schema (sans `Auto<T>` PK on create).
[INFO] [stdout]      |                      +       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]  --> src/cache/scoped.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! [`Cache`](super::Cache) is a flat `&str`-keyed store. That is the
[INFO] [stdout]   |      -------  ^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]   |      |
[INFO] [stdout]   |      because label contains path that resolves to same destination
[INFO] [stdout]   |
[INFO] [stdout]   = note: when a link's destination is not specified,
[INFO] [stdout]           the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]   |
[INFO] [stdout] 3 - //! [`Cache`](super::Cache) is a flat `&str`-keyed store. That is the
[INFO] [stdout] 3 + //! [`Cache`] is a flat `&str`-keyed store. That is the
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]   --> src/cache/scoped.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | //! [`BoxedCache`](super::BoxedCache) and folds a namespace into every
[INFO] [stdout]    |      ------------  ^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]    |      |
[INFO] [stdout]    |      because label contains path that resolves to same destination
[INFO] [stdout]    |
[INFO] [stdout]    = note: when a link's destination is not specified,
[INFO] [stdout]            the label is used to resolve intra-doc links
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]    |
[INFO] [stdout] 10 - //! [`BoxedCache`](super::BoxedCache) and folds a namespace into every
[INFO] [stdout] 10 + //! [`BoxedCache`] and folds a namespace into every
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: could not parse code block as Rust code
[INFO] [stdout]    --> src/distributed_lock.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |       /// ```ignore
[INFO] [stdout]     |  _________^
[INFO] [stdout] 109 | |     /// let lock = DistributedLock::new(cache).for_tenant(&org.slug);
[INFO] [stdout] 110 | |     /// lock.with_lock("daily_report", ttl, || async { … }).await;
[INFO] [stdout] 111 | |     /// ```
[INFO] [stdout]     | |___________^
[INFO] [stdout]     |
[INFO] [stdout] help: `ignore` code blocks require valid Rust code for syntax highlighting; mark blocks that do not contain Rust code as text: ```text
[INFO] [stdout]    --> src/distributed_lock.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     /// ```ignore
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     = note: error from rustc: unknown start of token: \u{2026}
[INFO] [stdout]     = note: `#[warn(rustdoc::invalid_rust_codeblocks)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: could not parse code block as Rust code
[INFO] [stdout]   |
[INFO] [stdout]   = help: `ignore` code blocks require valid Rust code for syntax highlighting; mark blocks that do not contain Rust code as text: ```text
[INFO] [stdout]   = note: error from rustc: unknown start of token: \u{2026}
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this URL is not a hyperlink
[INFO] [stdout]   --> src/tenancy/server.rs:88:35
[INFO] [stdout]    |
[INFO] [stdout] 88 | /// from the manage CLI see "open http://acme.localhost:8080/" and
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: bare URLs are not automatically turned into clickable links
[INFO] [stdout]    = note: `#[warn(rustdoc::bare_urls)]` on by default
[INFO] [stdout] help: use an automatic link instead
[INFO] [stdout]    |
[INFO] [stdout] 88 | /// from the manage CLI see "open <http://acme.localhost:8080/>" and
[INFO] [stdout]    |                                   +                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `DB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `Postgres`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `DB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this URL is not a hyperlink
[INFO] [stdout]    --> src/urls.rs:372:18
[INFO] [stdout]     |
[INFO] [stdout] 372 | /// "navigate to https://evil.com" (the absent scheme defaults to the
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: bare URLs are not automatically turned into clickable links
[INFO] [stdout] help: use an automatic link instead
[INFO] [stdout]     |
[INFO] [stdout] 372 | /// "navigate to <https://evil.com>" (the absent scheme defaults to the
[INFO] [stdout]     |                  +                +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: could not parse code block as Rust code
[INFO] [stdout]   |
[INFO] [stdout]   = help: `ignore` code blocks require valid Rust code for syntax highlighting; mark blocks that do not contain Rust code as text: ```text
[INFO] [stdout]   = note: error from rustc: non-ASCII character in byte string literal
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: could not parse code block as Rust code
[INFO] [stdout]   |
[INFO] [stdout]   = help: `ignore` code blocks require valid Rust code for syntax highlighting; mark blocks that do not contain Rust code as text: ```text
[INFO] [stdout]   = note: error from rustc: unknown start of token: \u{2026}
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `Tera`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `Utc`
[INFO] [stdout]    --> src/sql/mysql.rs:161:59
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ///   timezone-naive (the framework's chrono::DateTime<Utc> binds
[INFO] [stdout]     |                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: try marking as source code
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ///   timezone-naive (the framework's `chrono::DateTime<Utc>` binds
[INFO] [stdout]     |                                           +                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `concat` is both a function and a macro
[INFO] [stdout]    --> src/core/funcs.rs:237:11
[INFO] [stdout]     |
[INFO] [stdout] 237 | /// See [`concat`] re: passing args as already-lifted `Expr`.
[INFO] [stdout]     |           ^^^^^^ ambiguous link
[INFO] [stdout]     |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]     |
[INFO] [stdout] 237 | /// See [`concat()`] re: passing args as already-lifted `Expr`.
[INFO] [stdout]     |                 ++
[INFO] [stdout] help: to link to the macro, add an exclamation mark
[INFO] [stdout]     |
[INFO] [stdout] 237 | /// See [`concat!`] re: passing args as already-lifted `Expr`.
[INFO] [stdout]     |                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 37s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: redis v0.27.6
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] [stderr]    Generated /opt/rustwide/target/doc/rustango/index.html
[INFO] running `Command { std: "docker" "inspect" "b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb", kill_on_drop: false }`
[INFO] [stdout] b3d1f881cc9862dd6689ffdafa2bf2b24a519575e9e6c9e0c0918b4dd71a10bb
