Skip to content

crate fails to build documentation #2980

@luissantosHCIT

Description

@luissantosHCIT

Crate name

rumtk-hl7-v2

Build failure link

https://docs.rs/crate/rumtk-hl7-v2/0.8.1/builds

Additional details

Earlier in the year, the nightly compilers began to break when building my project. As a result, I included a rust-toolchain.toml file to fix the correct compiler to use. I use the nightly compiler because I have to for the purpose of fuzz testing. I can get the core crate to compile on docs.rs (see rumtk-core)

Contents of my TOML

[toolchain]
channel = "nightly-2025-04-03"

Cargo.toml

[package]
name = "rumtk-hl7-v2"
description = "HL7 V2 Parser and MLLP Implementation to support building interface utilities."
version = "0.8.1"
readme = "README.md"
license = "LGPL-2.1"
homepage = "https://github.com/luissantosHCIT/rumtk/tree/main/toolkit/rumtk-hl7-v2"
documentation = "https://docs.rs/rumtk-hl7-v2"
repository = "https://github.com/luissantosHCIT/rumtk"
keywords = ["rumtk", "healthcare", "hl7", "v2"]
categories = ["parsing", "science", "parser-implementations"]
edition = "2021"
rust-version = "1.79.0"

[dependencies]
phf = "0.12.1"
phf_macros = "0.12.1"
chrono = "0.4.39"
once_cell = "1.20.2"
serde = { version = "1.0.219", features = ["derive", "std"] }
serde_json = "1.0.140"
#rumtk-core = { path = "../rumtk-core" }
tokio = { version = "1.45.0", features = ["full"] }
pyo3 = { version = "0.27.1", features = ["default", "auto-initialize", "serde"] }
rumtk-core = "0.9.1"
pyo3-ffi = "0.27.1"

I do not understand why the nightlies are breaking so my questions are:

  1. Could docs.rs be updated to respect the toolchain toml for the purpose of building the crate?
  2. If not, what do you think I could do to fix the conflict with new compilers moving forward?

Log => https://docs.rs/crate/rumtk-hl7-v2/0.8.1/builds/2635527

# rustc version
rustc 1.93.0-nightly (20383c9f1 2025-11-03)# docs.rs version
docsrs 0.6.0 (fb84acf8 2025-11-04)# build log
[INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace/builds/rumtk-hl7-v2-0.8.1/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace/builds/rumtk-hl7-v2-0.8.1/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-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" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--output-format\", \"json\", \"--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" "-j6" "--target" "x86_64-unknown-linux-gnu", 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] 90de858db912d4b071ee7464d9843c9537f01ee25032e35dc3e348c1bd1d940f
[INFO] running `Command { std: "docker" "start" "-a" "90de858db912d4b071ee7464d9843c9537f01ee25032e35dc3e348c1bd1d940f", kill_on_drop: false }`
[INFO] [stderr] warning: target filter specified, but no targets matched; this is a no-op
[INFO] [stderr]  Documenting rumtk-hl7-v2 v0.8.1 (/opt/rustwide/workdir)
[INFO] [stderr] warning: the feature `inherent_associated_types` is incomplete and may not be safe to use and/or cause compiler crashes
[INFO] [stderr]   --> src/lib.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 20 | #![feature(inherent_associated_types)]
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: see issue #8995 <https://github.com/rust-lang/rust/issues/8995> for more information
[INFO] [stderr]    = note: `#[warn(incomplete_features)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `V2_SEARCH_EXPR_TYPE` should have an upper camel case name
[INFO] [stderr]    --> src/hl7_v2_constants.rs:743:10
[INFO] [stderr]     |
[INFO] [stderr] 743 | pub enum V2_SEARCH_EXPR_TYPE {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `V2SearchExprType`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `V2_DEFAULT` should have an upper camel case name
[INFO] [stderr]    --> src/hl7_v2_constants.rs:744:5
[INFO] [stderr]     |
[INFO] [stderr] 744 |     V2_DEFAULT
[INFO] [stderr]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `V2Default`
[INFO] [stderr] 
[INFO] [stderr] warning: type `MLLP_FILTER_POLICY` should have an upper camel case name
[INFO] [stderr]    --> src/hl7_v2_mllp.rs:458:14
[INFO] [stderr]     |
[INFO] [stderr] 458 |     pub enum MLLP_FILTER_POLICY {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MllpFilterPolicy`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `ESCAPE_INPUT` should have an upper camel case name
[INFO] [stderr]    --> src/hl7_v2_mllp.rs:469:9
[INFO] [stderr]     |
[INFO] [stderr] 469 |         ESCAPE_INPUT = 1,
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EscapeInput`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `FILTER_INPUT` should have an upper camel case name
[INFO] [stderr]    --> src/hl7_v2_mllp.rs:473:9
[INFO] [stderr]     |
[INFO] [stderr] 473 |         FILTER_INPUT = 2,
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FilterInput`
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_base_types::v2_base_types::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_base_types::v2_base_types::V2ParserCharacters>::deserialize::__FieldVisitor` in the current scope
[INFO] [stderr]   --> src/hl7_v2_base_types.rs:51:32
[INFO] [stderr]    |
[INFO] [stderr] 51 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]    |                                ^^^^^^^^^^^
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                associated item not found in `hl7_v2_base_types::v2_base_types::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_base_types::v2_base_types::V2ParserCharacters>::deserialize::__FieldVisitor`
[INFO] [stderr]    |                                associated type `Value` not found for this struct
[INFO] [stderr]    |
[INFO] [stderr]    = note: the associated type was found for
[INFO] [stderr]            
[INFO] [stderr]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_base_types::v2_base_types::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_base_types::v2_base_types::V2ParserCharacters>::deserialize::__Visitor<'de>` in the current scope
[INFO] [stderr]   --> src/hl7_v2_base_types.rs:51:32
[INFO] [stderr]    |
[INFO] [stderr] 51 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]    |                                ^^^^^^^^^^^
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                associated item not found in `hl7_v2_base_types::v2_base_types::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_base_types::v2_base_types::V2ParserCharacters>::deserialize::__Visitor<'de>`
[INFO] [stderr]    |                                associated type `Value` not found for this struct
[INFO] [stderr]    |
[INFO] [stderr]    = note: the associated type was found for
[INFO] [stderr]            
[INFO] [stderr]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Component>::deserialize::__FieldVisitor` in the current scope
[INFO] [stderr]   --> src/hl7_v2_parser.rs:96:32
[INFO] [stderr]    |
[INFO] [stderr] 96 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]    |                                ^^^^^^^^^^^
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                associated item not found in `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Component>::deserialize::__FieldVisitor`
[INFO] [stderr]    |                                associated type `Value` not found for this struct
[INFO] [stderr]    |
[INFO] [stderr]    = note: the associated type was found for
[INFO] [stderr]            
[INFO] [stderr]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Component>::deserialize::__Visitor<'de>` in the current scope
[INFO] [stderr]   --> src/hl7_v2_parser.rs:96:32
[INFO] [stderr]    |
[INFO] [stderr] 96 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]    |                                ^^^^^^^^^^^
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                associated item not found in `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Component>::deserialize::__Visitor<'de>`
[INFO] [stderr]    |                                associated type `Value` not found for this struct
[INFO] [stderr]    |
[INFO] [stderr]    = note: the associated type was found for
[INFO] [stderr]            
[INFO] [stderr]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Field>::deserialize::__FieldVisitor` in the current scope
[INFO] [stderr]    --> src/hl7_v2_parser.rs:214:32
[INFO] [stderr]     |
[INFO] [stderr] 214 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]     |                                ^^^^^^^^^^^
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                associated item not found in `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Field>::deserialize::__FieldVisitor`
[INFO] [stderr]     |                                associated type `Value` not found for this struct
[INFO] [stderr]     |
[INFO] [stderr]     = note: the associated type was found for
[INFO] [stderr]             
[INFO] [stderr]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Field>::deserialize::__Visitor<'de>` in the current scope
[INFO] [stderr]    --> src/hl7_v2_parser.rs:214:32
[INFO] [stderr]     |
[INFO] [stderr] 214 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]     |                                ^^^^^^^^^^^
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                associated item not found in `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Field>::deserialize::__Visitor<'de>`
[INFO] [stderr]     |                                associated type `Value` not found for this struct
[INFO] [stderr]     |
[INFO] [stderr]     = note: the associated type was found for
[INFO] [stderr]             
[INFO] [stderr]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Segment>::deserialize::__FieldVisitor` in the current scope
[INFO] [stderr]    --> src/hl7_v2_parser.rs:308:32
[INFO] [stderr]     |
[INFO] [stderr] 308 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]     |                                ^^^^^^^^^^^
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                associated item not found in `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Segment>::deserialize::__FieldVisitor`
[INFO] [stderr]     |                                associated type `Value` not found for this struct
[INFO] [stderr]     |
[INFO] [stderr]     = note: the associated type was found for
[INFO] [stderr]             
[INFO] [stderr]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Segment>::deserialize::__Visitor<'de>` in the current scope
[INFO] [stderr]    --> src/hl7_v2_parser.rs:308:32
[INFO] [stderr]     |
[INFO] [stderr] 308 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]     |                                ^^^^^^^^^^^
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                associated item not found in `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Segment>::deserialize::__Visitor<'de>`
[INFO] [stderr]     |                                associated type `Value` not found for this struct
[INFO] [stderr]     |
[INFO] [stderr]     = note: the associated type was found for
[INFO] [stderr]             
[INFO] [stderr]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Message>::deserialize::__FieldVisitor` in the current scope
[INFO] [stderr]    --> src/hl7_v2_parser.rs:440:32
[INFO] [stderr]     |
[INFO] [stderr] 440 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]     |                                ^^^^^^^^^^^
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                associated item not found in `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Message>::deserialize::__FieldVisitor`
[INFO] [stderr]     |                                associated type `Value` not found for this struct
[INFO] [stderr]     |
[INFO] [stderr]     = note: the associated type was found for
[INFO] [stderr]             
[INFO] [stderr]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0220]: associated type `Value` not found for `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Message>::deserialize::__Visitor<'de>` in the current scope
[INFO] [stderr]    --> src/hl7_v2_parser.rs:440:32
[INFO] [stderr]     |
[INFO] [stderr] 440 |     #[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
[INFO] [stderr]     |                                ^^^^^^^^^^^
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                associated item not found in `hl7_v2_parser::v2_parser::_::<impl hl7_v2_base_types::v2_base_types::_::_serde::Deserialize<'de> for hl7_v2_parser::v2_parser::V2Message>::deserialize::__Visitor<'de>`
[INFO] [stderr]     |                                associated type `Value` not found for this struct
[INFO] [stderr]     |
[INFO] [stderr]     = note: the associated type was found for
[INFO] [stderr]             
[INFO] [stderr]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0220`.
[INFO] [stderr] warning: `rumtk-hl7-v2` (lib doc) generated 6 warnings
[INFO] [stderr] error: could not document `rumtk-hl7-v2`
[INFO] running `Command { std: "docker" "inspect" "90de858db912d4b071ee7464d9843c9537f01ee25032e35dc3e348c1bd1d940f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "90de858db912d4b071ee7464d9843c9537f01ee25032e35dc3e348c1bd1d940f", kill_on_drop: false }`
[INFO] [stdout] 90de858db912d4b071ee7464d9843c9537f01ee25032e35dc3e348c1bd1d940f

Thank you for your help!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions