Build failed. If you want to re-trigger a documentation build, you can do it here. You can find more information on docs.rs builds documentation on the builds page.
# error kind ExecutionFailed
# pre-build errors command failed: exit status: 101
# rustc version rustc 1.99.0-nightly (d0babd8b6 2026-07-15)
# docs.rs version docsrs 0.0.0 (f1b150f0cd76f7cabcd39e1f4790ba771b28b5c4 2026-07-19 )
# build log [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" "DOCS_RS=1" "-w" "/opt/rustwide/workdir" "--user" "1001:1001" "6e62b3a7042971d890441a230636e3ad457fb6a81f0f11ff6c0436a3d665122b" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2026-07-16" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=html-non-static-files\", \"--resource-suffix\", \"-20260715-1.99.0-nightly-d0babd8b6\", \"--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: target filter specified, but no targets matched; this is a no-op [INFO] [stderr] Checking scouter-types v0.5.6 [INFO] [stderr] Checking jsonwebtoken v9.3.1 [INFO] [stderr] Checking rand v0.9.5 [INFO] [stderr] error[E0425]: cannot find type `DowncastError` in crate `pyo3` [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/error.rs:84:21 [INFO] [stderr] | [INFO] [stderr] 84 | impl<'a> From<pyo3::DowncastError<'a, 'a>> for TypeError { [INFO] [stderr] | ^^^^^^^^^^^^^ not found in `pyo3` [INFO] [stderr] | [INFO] [stderr] help: there is an enum variant `crate::error::TypeError::DowncastError`; try using the variant's enum [INFO] [stderr] | [INFO] [stderr] 84 - impl<'a> From<pyo3::DowncastError<'a, 'a>> for TypeError { [INFO] [stderr] 84 + impl<'a> From<crate::error::TypeError> for TypeError { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find type `DowncastError` in crate `pyo3` [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/error.rs:85:24 [INFO] [stderr] | [INFO] [stderr] 85 | fn from(err: pyo3::DowncastError) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^ not found in `pyo3` [INFO] [stderr] | [INFO] [stderr] help: there is an enum variant `crate::error::TypeError::DowncastError`; try using the variant's enum [INFO] [stderr] | [INFO] [stderr] 85 - fn from(err: pyo3::DowncastError) -> Self { [INFO] [stderr] 85 + fn from(err: crate::error::TypeError) -> Self { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find type `PyObject` in this scope [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/records.rs:318:48 [INFO] [stderr] | [INFO] [stderr] 318 | pub fn record(&self, py: Python) -> Result<PyObject, RecordError> { [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] | [INFO] [stderr] help: consider importing this struct [INFO] [stderr] | [INFO] [stderr] 1 + use pyo3::ffi::PyObject; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find type `PyObject` in this scope [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/util.rs:154:70 [INFO] [stderr] | [INFO] [stderr] 154 | pub fn json_to_pyobject_value(py: Python, value: &Value) -> PyResult<PyObject> { [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] | [INFO] [stderr] help: consider importing this struct [INFO] [stderr] | [INFO] [stderr] 1 + use pyo3::ffi::PyObject; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0277]: `?` couldn't convert the error to `ProfileError` [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/drift.rs:179:67 [INFO] [stderr] | [INFO] [stderr] 179 | let profile = profile.extract::<SpcDriftProfile>()?; [INFO] [stderr] | ----------------------------^ the trait `From<PyClassGuardError<'_, '_>>` is not implemented for `ProfileError` [INFO] [stderr] | | [INFO] [stderr] | this can't be annotated with `?` because it has type `Result<_, PyClassGuardError<'_, '_>>` [INFO] [stderr] | [INFO] [stderr] note: `ProfileError` needs to implement `From<PyClassGuardError<'_, '_>>` [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/error.rs:157:1 [INFO] [stderr] | [INFO] [stderr] 157 | pub enum ProfileError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stderr] = help: `ProfileError` implements trait `From<T>`: [INFO] [stderr] From<TypeError> [INFO] [stderr] From<UtilError> [INFO] [stderr] From<pyo3::PyErr> [INFO] [stderr] From<serde_json::Error> [INFO] [stderr] From<std::io::Error> [INFO] [stderr] [INFO] [stderr] error[E0277]: `?` couldn't convert the error to `ProfileError` [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/drift.rs:183:67 [INFO] [stderr] | [INFO] [stderr] 183 | let profile = profile.extract::<PsiDriftProfile>()?; [INFO] [stderr] | ----------------------------^ the trait `From<PyClassGuardError<'_, '_>>` is not implemented for `ProfileError` [INFO] [stderr] | | [INFO] [stderr] | this can't be annotated with `?` because it has type `Result<_, PyClassGuardError<'_, '_>>` [INFO] [stderr] | [INFO] [stderr] note: `ProfileError` needs to implement `From<PyClassGuardError<'_, '_>>` [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/error.rs:157:1 [INFO] [stderr] | [INFO] [stderr] 157 | pub enum ProfileError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stderr] = help: `ProfileError` implements trait `From<T>`: [INFO] [stderr] From<TypeError> [INFO] [stderr] From<UtilError> [INFO] [stderr] From<pyo3::PyErr> [INFO] [stderr] From<serde_json::Error> [INFO] [stderr] From<std::io::Error> [INFO] [stderr] [INFO] [stderr] error[E0277]: `?` couldn't convert the error to `ProfileError` [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/drift.rs:187:70 [INFO] [stderr] | [INFO] [stderr] 187 | let profile = profile.extract::<CustomDriftProfile>()?; [INFO] [stderr] | -------------------------------^ the trait `From<PyClassGuardError<'_, '_>>` is not implemented for `ProfileError` [INFO] [stderr] | | [INFO] [stderr] | this can't be annotated with `?` because it has type `Result<_, PyClassGuardError<'_, '_>>` [INFO] [stderr] | [INFO] [stderr] note: `ProfileError` needs to implement `From<PyClassGuardError<'_, '_>>` [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/error.rs:157:1 [INFO] [stderr] | [INFO] [stderr] 157 | pub enum ProfileError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stderr] = help: `ProfileError` implements trait `From<T>`: [INFO] [stderr] From<TypeError> [INFO] [stderr] From<UtilError> [INFO] [stderr] From<pyo3::PyErr> [INFO] [stderr] From<serde_json::Error> [INFO] [stderr] From<std::io::Error> [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `downcast` found for reference `&pyo3::Bound<'_, pyo3::PyAny>` in the current scope [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/util.rs:188:24 [INFO] [stderr] | [INFO] [stderr] 188 | let dict = obj.downcast::<PyDict>()?; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: there is a method `cast` with a similar name [INFO] [stderr] | [INFO] [stderr] 188 - let dict = obj.downcast::<PyDict>()?; [INFO] [stderr] 188 + let dict = obj.cast::<PyDict>()?; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `downcast` found for reference `&pyo3::Bound<'_, pyo3::PyAny>` in the current scope [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/scouter-types-0.5.6/src/util.rs:197:24 [INFO] [stderr] | [INFO] [stderr] 197 | let list = obj.downcast::<PyList>()?; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: there is a method `cast` with a similar name [INFO] [stderr] | [INFO] [stderr] 197 - let list = obj.downcast::<PyList>()?; [INFO] [stderr] 197 + let list = obj.cast::<PyList>()?; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0277, E0425, E0599. [INFO] [stderr] For more information about an error, try `rustc --explain E0277`. [INFO] [stderr] error: could not compile `scouter-types` (lib) due to 9 previous errors [INFO] running `Command { std: "docker" "inspect" "6e62b3a7042971d890441a230636e3ad457fb6a81f0f11ff6c0436a3d665122b", kill_on_drop: false }`