# rustc version rustc 1.97.0-nightly (66da6cae1 2026-04-20)
# docs.rs version docsrs 0.0.0 (15f7e1e9dfac4fc5b7cc4abfd7682239002ba909 2026-04-08 )
# build log [INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder4/builds/ferogram-0.3.2/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder4/builds/ferogram-0.3.2/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder4/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder4/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "6442450944" "--cpuset-cpus" "20-23" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "sleep" "infinity", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 1b4028b1373c74335d05444ec33edd8f460e02aa1e54b7db705439a64e927247 [INFO] running `Command { std: "docker" "start" "1b4028b1373c74335d05444ec33edd8f460e02aa1e54b7db705439a64e927247", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "--user" "1001:1001" "1b4028b1373c74335d05444ec33edd8f460e02aa1e54b7db705439a64e927247" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--features" "sqlite-session serde html html5ever parser codegen" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20260420-1.97.0-nightly-66da6cae1\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j4" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }` [INFO] [stderr] warning: target filter specified, but no targets matched; this is a no-op [INFO] [stderr] Documenting ferogram v0.3.2 (/opt/rustwide/workdir) [INFO] [stderr] warning: unresolved link to `LibSqlBackend` [INFO] [stderr] --> src/builder.rs:159:22 [INFO] [stderr] | [INFO] [stderr] 159 | /// Useful for [`LibSqlBackend`] (bundled SQLite, no system dep) or any [INFO] [stderr] | ^^^^^^^^^^^^^ no item named `LibSqlBackend` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `MtProxyConfig` [INFO] [stderr] --> src/builder.rs:205:21 [INFO] [stderr] | [INFO] [stderr] 205 | /// Build the [`MtProxyConfig`] with [`crate::parse_proxy_link`]. [INFO] [stderr] | ^^^^^^^^^^^^^ no item named `MtProxyConfig` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `ClientInner::worker_semaphore` [INFO] [stderr] --> src/media.rs:117:7 [INFO] [stderr] | [INFO] [stderr] 117 | /// [`ClientInner::worker_semaphore`] which is initialised with this many permits. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `ClientInner` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `upload_file_concurrent` [INFO] [stderr] --> src/media.rs:582:55 [INFO] [stderr] | [INFO] [stderr] 582 | /// For files that benefit from parallelism use [`upload_file_concurrent`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ no item named `upload_file_concurrent` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `iter_download` [INFO] [stderr] --> src/media.rs:1042:16 [INFO] [stderr] | [INFO] [stderr] 1042 | /// Like [`iter_download`] but routes to a specific DC. [INFO] [stderr] | ^^^^^^^^^^^^^ no item named `iter_download` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `download_media` [INFO] [stderr] --> src/media.rs:1074:16 [INFO] [stderr] | [INFO] [stderr] 1074 | /// Like [`download_media`] but routes `GetFile` to `dc_id`. [INFO] [stderr] | ^^^^^^^^^^^^^^ no item named `download_media` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `download_media_concurrent` [INFO] [stderr] --> src/media.rs:1184:16 [INFO] [stderr] | [INFO] [stderr] 1184 | /// Like [`download_media_concurrent`] but routes `GetFile` to `dc_id`. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `download_media_concurrent` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `download_location` [INFO] [stderr] --> src/media.rs:1516:16 [INFO] [stderr] | [INFO] [stderr] 1516 | /// Like [`download_location`] but also returns the file's DC id. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ no item named `download_location` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `InputFileLocation` [INFO] [stderr] --> src/media.rs:1532:26 [INFO] [stderr] | [INFO] [stderr] 1532 | /// Extract a download [`InputFileLocation`] and DC id from a raw `MessageMedia`. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ no item named `InputFileLocation` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `IncomingMessage::download_media_with` [INFO] [stderr] --> src/media.rs:1534:15 [INFO] [stderr] | [INFO] [stderr] 1534 | /// Used by [`IncomingMessage::download_media_with`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `IncomingMessage` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `ban_participant` [INFO] [stderr] --> src/participants.rs:210:68 [INFO] [stderr] | [INFO] [stderr] 210 | /// Kick a user from a basic group (chat). For channels, use [`ban_participant`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^ no item named `ban_participant` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `InputReactions` [INFO] [stderr] --> src/participants.rs:528:45 [INFO] [stderr] | [INFO] [stderr] 528 | /// Accepts anything that converts to [`InputReactions`]: [INFO] [stderr] | ^^^^^^^^^^^^^^ no item named `InputReactions` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `InputMessage` [INFO] [stderr] --> src/update.rs:496:16 [INFO] [stderr] | [INFO] [stderr] 496 | /// Full [`InputMessage`] to the same chat without quoting (clientless). [INFO] [stderr] | ^^^^^^^^^^^^ no item named `InputMessage` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `InputMessage` [INFO] [stderr] --> src/update.rs:502:16 [INFO] [stderr] | [INFO] [stderr] 502 | /// Full [`InputMessage`] to the same chat without quoting. [INFO] [stderr] | ^^^^^^^^^^^^ no item named `InputMessage` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `download_all_with_reupload` [INFO] [stderr] --> src/cdn_download.rs:121:15 [INFO] [stderr] | [INFO] [stderr] 121 | /// Use [`download_all_with_reupload`] if you need to handle reupload. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `download_all_with_reupload` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `help.configSimple` [INFO] [stderr] --> src/special_config.rs:17:47 [INFO] [stderr] | [INFO] [stderr] 17 | //! blob. After decryption a TL-serialised [`help.configSimple`] is returned, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ no item named `help.configSimple` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `send` [INFO] [stderr] --> src/transport_intermediate.rs:49:72 [INFO] [stderr] | [INFO] [stderr] 49 | /// Wrap an existing stream (the init byte will be sent on first [`send`]). [INFO] [stderr] | ^^^^ no item named `send` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `dispatch` [INFO] [stderr] --> src/macros.rs:12:11 [INFO] [stderr] | [INFO] [stderr] 12 | //! The [`dispatch!`] macro for pattern-matching over updates. [INFO] [stderr] | ^^^^^^^^^ no item named `dispatch` in scope [INFO] [stderr] | [INFO] [stderr] = note: `macro_rules` named `dispatch` exists in this crate, but it is not in scope at this link's location [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `forward_messages` [INFO] [stderr] --> src/lib.rs:5083:16 [INFO] [stderr] | [INFO] [stderr] 5083 | /// Like [`forward_messages`] but parses the Updates response and returns [INFO] [stderr] | ^^^^^^^^^^^^^^^^ no item named `forward_messages` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `InputBotInlineMessageId` [INFO] [stderr] --> src/lib.rs:5463:41 [INFO] [stderr] | [INFO] [stderr] 5463 | /// Edit an inline message by its [`InputBotInlineMessageId`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ no item named `InputBotInlineMessageId` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `download_media_to_file` [INFO] [stderr] --> src/lib.rs:5910:16 [INFO] [stderr] | [INFO] [stderr] 5910 | /// Like [`download_media_to_file`] but routes `GetFile` to `dc_id`. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ no item named `download_media_to_file` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: public documentation for `send_chat_action` links to private item `Self::send_chat_action_ex` [INFO] [stderr] --> src/lib.rs:5982:61 [INFO] [stderr] | [INFO] [stderr] 5982 | /// For forum topic support use [`send_chat_action_ex`](Self::send_chat_action_ex) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ this item is private [INFO] [stderr] | [INFO] [stderr] = note: this link will resolve properly if you pass `--document-private-items` [INFO] [stderr] = note: `#[warn(rustdoc::private_intra_doc_links)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `delete_channel` [INFO] [stderr] --> src/lib.rs:7652:66 [INFO] [stderr] | [INFO] [stderr] 7652 | /// Only the creator can delete the chat. For channels use [`delete_channel`]. [INFO] [stderr] | ^^^^^^^^^^^^^^ no item named `delete_channel` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `kick_participant` [INFO] [stderr] --> src/lib.rs:7660:48 [INFO] [stderr] | [INFO] [stderr] 7660 | /// For basic groups, kick yourself with [`kick_participant`] or use [INFO] [stderr] | ^^^^^^^^^^^^^^^^ no item named `kick_participant` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `delete_dialog` [INFO] [stderr] --> src/lib.rs:7661:11 [INFO] [stderr] | [INFO] [stderr] 7661 | /// [`delete_dialog`] to just hide it. [INFO] [stderr] | ^^^^^^^^^^^^^ no item named `delete_dialog` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BannedRightsBuilder` [INFO] [stderr] --> src/lib.rs:7770:29 [INFO] [stderr] | [INFO] [stderr] 7770 | /// individually. Use [`BannedRightsBuilder`] via the closure to specify [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ no item named `BannedRightsBuilder` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `delete_invite_link` [INFO] [stderr] --> src/lib.rs:8012:48 [INFO] [stderr] | [INFO] [stderr] 8012 | /// To also remove it from the list call [`delete_invite_link`] afterwards. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ no item named `delete_invite_link` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `revoke_invite_link` [INFO] [stderr] --> src/lib.rs:8128:55 [INFO] [stderr] | [INFO] [stderr] 8128 | /// The link must already be revoked first (use [`revoke_invite_link`]). [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ no item named `revoke_invite_link` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `get_authorizations` [INFO] [stderr] --> src/lib.rs:8609:69 [INFO] [stderr] | [INFO] [stderr] 8609 | /// Terminate a specific session by its `hash` (obtained from [`get_authorizations`]). [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ no item named `get_authorizations` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `get_send_as_peers` [INFO] [stderr] --> src/lib.rs:9215:63 [INFO] [stderr] | [INFO] [stderr] 9215 | /// `send_as_peer` must be one of the peers returned by [`get_send_as_peers`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ no item named `get_send_as_peers` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: this URL is not a hyperlink [INFO] [stderr] --> src/dc_migration.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | /// Source: https://core.telegram.org/mtproto/DC [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: bare URLs are not automatically turned into clickable links [INFO] [stderr] = note: `#[warn(rustdoc::bare_urls)]` on by default [INFO] [stderr] help: use an automatic link instead [INFO] [stderr] | [INFO] [stderr] 24 | /// Source: <https://core.telegram.org/mtproto/DC> [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: `ferogram` (lib doc) generated 31 warnings (run `cargo fix --lib -p ferogram` to apply 1 suggestion) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.99s [INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/ferogram/index.html [INFO] running `Command { std: "docker" "stop" "-t" "1" "1b4028b1373c74335d05444ec33edd8f460e02aa1e54b7db705439a64e927247", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1b4028b1373c74335d05444ec33edd8f460e02aa1e54b7db705439a64e927247", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1b4028b1373c74335d05444ec33edd8f460e02aa1e54b7db705439a64e927247", kill_on_drop: false }` [INFO] [stdout] 1b4028b1373c74335d05444ec33edd8f460e02aa1e54b7db705439a64e927247