shared-data 0.0.2

A library for data structures living in shared memory.
Build #1516382 2024-11-10 16:36:55

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.

# rustc version
rustc 1.84.0-nightly (59cec72a5 2024-11-08)# docs.rs version
docsrs 0.6.0 (36c721fb 2024-11-06)# build log
[INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder/builds/shared-data-0.0.2/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder/builds/shared-data-0.0.2/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder/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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20241108-1.84.0-nightly-59cec72a5\", \"--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] [stdout] ebe9d66b6f322fe431790dfc73ab3d5be4738999dc3ffd8eff806ab2c89fa2f5
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "ebe9d66b6f322fe431790dfc73ab3d5be4738999dc3ffd8eff806ab2c89fa2f5", kill_on_drop: false }`
[INFO] [stderr]     Checking shared-data v0.0.2 (/opt/rustwide/workdir)
[INFO] [stderr] warning: failed to check lib in package `shared-data` as a prerequisite for scraping examples from: example "experiment"
[INFO] [stderr]     Try running with `--verbose` to see the error message.
[INFO] [stderr]     If an example should not be scanned, then consider adding `doc-scrape-examples = false` to its `[[example]]` definition in Cargo.toml
[INFO] [stderr] warning: `shared-data` (lib) generated 1 warning
[INFO] [stderr]     Scraping shared-data v0.0.2 (/opt/rustwide/workdir)
[INFO] [stderr]  Documenting shared-data v0.0.2 (/opt/rustwide/workdir)
[INFO] [stderr] error[E0277]: `*mut unsafe_code::Volatile<u8>` cannot be sent between threads safely
[INFO] [stderr]    --> src/allocator.rs:288:1
[INFO] [stderr]     |
[INFO] [stderr] 288 | / lazy_static! {
[INFO] [stderr] 289 | |     pub static ref ALLOCATOR_NAME: Mutex<Option<String>> = Mutex::new(None);
[INFO] [stderr] 290 | |     pub static ref ALLOCATOR: ShmemAllocator = {
[INFO] [stderr] 291 | |         if let Some(name) = ALLOCATOR_NAME.lock().ok().and_then(|mut name| name.take()) {
[INFO] [stderr] ...   |
[INFO] [stderr] 296 | |     };
[INFO] [stderr] 297 | | }
[INFO] [stderr]     | |_^ `*mut unsafe_code::Volatile<u8>` cannot be sent between threads safely
[INFO] [stderr]     |
[INFO] [stderr]     = help: within `unsafe_code::SyncSharedMem`, the trait `std::marker::Send` is not implemented for `*mut unsafe_code::Volatile<u8>`
[INFO] [stderr]     = help: the trait `std::marker::Send` is implemented for `unsafe_code::Volatile<T>`
[INFO] [stderr] note: required because it appears within the type `unsafe_code::SyncSharedMem`
[INFO] [stderr]    --> src/unsafe_code.rs:120:12
[INFO] [stderr]     |
[INFO] [stderr] 120 | pub struct SyncSharedMem(*mut Volatile<u8>, usize, SharedMem);
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr]     = note: required for `std::ptr::Unique<unsafe_code::SyncSharedMem>` to implement `std::marker::Send`
[INFO] [stderr] note: required because it appears within the type `std::boxed::Box<unsafe_code::SyncSharedMem>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/alloc/src/boxed.rs:230:12
[INFO] [stderr]     = note: required for `atom::Atom<std::boxed::Box<unsafe_code::SyncSharedMem>>` to implement `std::marker::Sync`
[INFO] [stderr] note: required because it appears within the type `atom::AtomSetOnce<std::boxed::Box<unsafe_code::SyncSharedMem>>`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/atom-0.3.6/src/lib.rs:211:12
[INFO] [stderr]     |
[INFO] [stderr] 211 | pub struct AtomSetOnce<P> where P: IntoRawPtr + FromRawPtr {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr]     = note: required because it appears within the type `[atom::AtomSetOnce<std::boxed::Box<unsafe_code::SyncSharedMem>>; 64]`
[INFO] [stderr] note: required because it appears within the type `allocator::ShmemAllocator`
[INFO] [stderr]    --> src/allocator.rs:71:12
[INFO] [stderr]     |
[INFO] [stderr] 71  | pub struct ShmemAllocator {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] note: required by a bound in `lazy_static::lazy::Lazy`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/lazy_static-1.5.0/src/inline_lazy.rs:19:20
[INFO] [stderr]     |
[INFO] [stderr] 19  | pub struct Lazy<T: Sync>(Cell<MaybeUninit<T>>, Once);
[INFO] [stderr]     |                    ^^^^ required by this bound in `Lazy`
[INFO] [stderr]     = note: this error originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `*mut std::ffi::c_void` cannot be sent between threads safely
[INFO] [stderr]    --> src/allocator.rs:288:1
[INFO] [stderr]     |
[INFO] [stderr] 288 | / lazy_static! {
[INFO] [stderr] 289 | |     pub static ref ALLOCATOR_NAME: Mutex<Option<String>> = Mutex::new(None);
[INFO] [stderr] 290 | |     pub static ref ALLOCATOR: ShmemAllocator = {
[INFO] [stderr] 291 | |         if let Some(name) = ALLOCATOR_NAME.lock().ok().and_then(|mut name| name.take()) {
[INFO] [stderr] ...   |
[INFO] [stderr] 296 | |     };
[INFO] [stderr] 297 | | }
[INFO] [stderr]     | |_^ `*mut std::ffi::c_void` cannot be sent between threads safely
[INFO] [stderr]     |
[INFO] [stderr]     = help: within `unsafe_code::SyncSharedMem`, the trait `std::marker::Send` is not implemented for `*mut std::ffi::c_void`
[INFO] [stderr] note: required because it appears within the type `shared_memory::SharedMem`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/shared_memory-0.8.2/src/lib.rs:73:12
[INFO] [stderr]     |
[INFO] [stderr] 73  | pub struct SharedMem {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] note: required because it appears within the type `unsafe_code::SyncSharedMem`
[INFO] [stderr]    --> src/unsafe_code.rs:120:12
[INFO] [stderr]     |
[INFO] [stderr] 120 | pub struct SyncSharedMem(*mut Volatile<u8>, usize, SharedMem);
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr]     = note: required for `std::ptr::Unique<unsafe_code::SyncSharedMem>` to implement `std::marker::Send`
[INFO] [stderr] note: required because it appears within the type `std::boxed::Box<unsafe_code::SyncSharedMem>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/alloc/src/boxed.rs:230:12
[INFO] [stderr]     = note: required for `atom::Atom<std::boxed::Box<unsafe_code::SyncSharedMem>>` to implement `std::marker::Sync`
[INFO] [stderr] note: required because it appears within the type `atom::AtomSetOnce<std::boxed::Box<unsafe_code::SyncSharedMem>>`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/atom-0.3.6/src/lib.rs:211:12
[INFO] [stderr]     |
[INFO] [stderr] 211 | pub struct AtomSetOnce<P> where P: IntoRawPtr + FromRawPtr {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr]     = note: required because it appears within the type `[atom::AtomSetOnce<std::boxed::Box<unsafe_code::SyncSharedMem>>; 64]`
[INFO] [stderr] note: required because it appears within the type `allocator::ShmemAllocator`
[INFO] [stderr]    --> src/allocator.rs:71:12
[INFO] [stderr]     |
[INFO] [stderr] 71  | pub struct ShmemAllocator {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] note: required by a bound in `lazy_static::lazy::Lazy`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/lazy_static-1.5.0/src/inline_lazy.rs:19:20
[INFO] [stderr]     |
[INFO] [stderr] 19  | pub struct Lazy<T: Sync>(Cell<MaybeUninit<T>>, Once);
[INFO] [stderr]     |                    ^^^^ required by this bound in `Lazy`
[INFO] [stderr]     = note: this error originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `(dyn shared_memory::LockImpl + 'static)` cannot be shared between threads safely
[INFO] [stderr]    --> src/allocator.rs:288:1
[INFO] [stderr]     |
[INFO] [stderr] 288 | / lazy_static! {
[INFO] [stderr] 289 | |     pub static ref ALLOCATOR_NAME: Mutex<Option<String>> = Mutex::new(None);
[INFO] [stderr] 290 | |     pub static ref ALLOCATOR: ShmemAllocator = {
[INFO] [stderr] 291 | |         if let Some(name) = ALLOCATOR_NAME.lock().ok().and_then(|mut name| name.take()) {
[INFO] [stderr] ...   |
[INFO] [stderr] 296 | |     };
[INFO] [stderr] 297 | | }
[INFO] [stderr]     | |_^ `(dyn shared_memory::LockImpl + 'static)` cannot be shared between threads safely
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `std::marker::Sync` is not implemented for `(dyn shared_memory::LockImpl + 'static)`
[INFO] [stderr]     = note: required for `&'static (dyn shared_memory::LockImpl + 'static)` to implement `std::marker::Send`
[INFO] [stderr] note: required because it appears within the type `shared_memory::GenericLock`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/shared_memory-0.8.2/src/locks.rs:14:12
[INFO] [stderr]     |
[INFO] [stderr] 14  | pub struct GenericLock {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] note: required because it appears within the type `std::marker::PhantomData<shared_memory::GenericLock>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/core/src/marker.rs:753:12
[INFO] [stderr] note: required because it appears within the type `alloc::raw_vec::RawVec<shared_memory::GenericLock>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/alloc/src/raw_vec.rs:76:19
[INFO] [stderr] note: required because it appears within the type `std::vec::Vec<shared_memory::GenericLock>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/alloc/src/vec/mod.rs:397:12
[INFO] [stderr] note: required because it appears within the type `shared_memory::SharedMemConf`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/shared_memory-0.8.2/src/conf.rs:48:12
[INFO] [stderr]     |
[INFO] [stderr] 48  | pub struct SharedMemConf {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] note: required because it appears within the type `shared_memory::SharedMem`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/shared_memory-0.8.2/src/lib.rs:73:12
[INFO] [stderr]     |
[INFO] [stderr] 73  | pub struct SharedMem {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] note: required because it appears within the type `unsafe_code::SyncSharedMem`
[INFO] [stderr]    --> src/unsafe_code.rs:120:12
[INFO] [stderr]     |
[INFO] [stderr] 120 | pub struct SyncSharedMem(*mut Volatile<u8>, usize, SharedMem);
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr]     = note: required for `std::ptr::Unique<unsafe_code::SyncSharedMem>` to implement `std::marker::Send`
[INFO] [stderr] note: required because it appears within the type `std::boxed::Box<unsafe_code::SyncSharedMem>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/alloc/src/boxed.rs:230:12
[INFO] [stderr]     = note: required for `atom::Atom<std::boxed::Box<unsafe_code::SyncSharedMem>>` to implement `std::marker::Sync`
[INFO] [stderr] note: required because it appears within the type `atom::AtomSetOnce<std::boxed::Box<unsafe_code::SyncSharedMem>>`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/atom-0.3.6/src/lib.rs:211:12
[INFO] [stderr]     |
[INFO] [stderr] 211 | pub struct AtomSetOnce<P> where P: IntoRawPtr + FromRawPtr {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr]     = note: required because it appears within the type `[atom::AtomSetOnce<std::boxed::Box<unsafe_code::SyncSharedMem>>; 64]`
[INFO] [stderr] note: required because it appears within the type `allocator::ShmemAllocator`
[INFO] [stderr]    --> src/allocator.rs:71:12
[INFO] [stderr]     |
[INFO] [stderr] 71  | pub struct ShmemAllocator {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] note: required by a bound in `lazy_static::lazy::Lazy`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/lazy_static-1.5.0/src/inline_lazy.rs:19:20
[INFO] [stderr]     |
[INFO] [stderr] 19  | pub struct Lazy<T: Sync>(Cell<MaybeUninit<T>>, Once);
[INFO] [stderr]     |                    ^^^^ required by this bound in `Lazy`
[INFO] [stderr]     = note: this error originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `(dyn shared_memory::EventImpl + 'static)` cannot be shared between threads safely
[INFO] [stderr]    --> src/allocator.rs:288:1
[INFO] [stderr]     |
[INFO] [stderr] 288 | / lazy_static! {
[INFO] [stderr] 289 | |     pub static ref ALLOCATOR_NAME: Mutex<Option<String>> = Mutex::new(None);
[INFO] [stderr] 290 | |     pub static ref ALLOCATOR: ShmemAllocator = {
[INFO] [stderr] 291 | |         if let Some(name) = ALLOCATOR_NAME.lock().ok().and_then(|mut name| name.take()) {
[INFO] [stderr] ...   |
[INFO] [stderr] 296 | |     };
[INFO] [stderr] 297 | | }
[INFO] [stderr]     | |_^ `(dyn shared_memory::EventImpl + 'static)` cannot be shared between threads safely
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `std::marker::Sync` is not implemented for `(dyn shared_memory::EventImpl + 'static)`
[INFO] [stderr]     = note: required for `&'static (dyn shared_memory::EventImpl + 'static)` to implement `std::marker::Send`
[INFO] [stderr] note: required because it appears within the type `shared_memory::GenericEvent`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/shared_memory-0.8.2/src/events.rs:7:12
[INFO] [stderr]     |
[INFO] [stderr] 7   | pub struct GenericEvent {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] note: required because it appears within the type `std::marker::PhantomData<shared_memory::GenericEvent>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/core/src/marker.rs:753:12
[INFO] [stderr] note: required because it appears within the type `alloc::raw_vec::RawVec<shared_memory::GenericEvent>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/alloc/src/raw_vec.rs:76:19
[INFO] [stderr] note: required because it appears within the type `std::vec::Vec<shared_memory::GenericEvent>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/alloc/src/vec/mod.rs:397:12
[INFO] [stderr] note: required because it appears within the type `shared_memory::SharedMemConf`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/shared_memory-0.8.2/src/conf.rs:48:12
[INFO] [stderr]     |
[INFO] [stderr] 48  | pub struct SharedMemConf {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] note: required because it appears within the type `shared_memory::SharedMem`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/shared_memory-0.8.2/src/lib.rs:73:12
[INFO] [stderr]     |
[INFO] [stderr] 73  | pub struct SharedMem {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] note: required because it appears within the type `unsafe_code::SyncSharedMem`
[INFO] [stderr]    --> src/unsafe_code.rs:120:12
[INFO] [stderr]     |
[INFO] [stderr] 120 | pub struct SyncSharedMem(*mut Volatile<u8>, usize, SharedMem);
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr]     = note: required for `std::ptr::Unique<unsafe_code::SyncSharedMem>` to implement `std::marker::Send`
[INFO] [stderr] note: required because it appears within the type `std::boxed::Box<unsafe_code::SyncSharedMem>`
[INFO] [stderr]    --> /rustc/59cec72a57af178767a7b8e7f624b06cc50f1087/library/alloc/src/boxed.rs:230:12
[INFO] [stderr]     = note: required for `atom::Atom<std::boxed::Box<unsafe_code::SyncSharedMem>>` to implement `std::marker::Sync`
[INFO] [stderr] note: required because it appears within the type `atom::AtomSetOnce<std::boxed::Box<unsafe_code::SyncSharedMem>>`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/atom-0.3.6/src/lib.rs:211:12
[INFO] [stderr]     |
[INFO] [stderr] 211 | pub struct AtomSetOnce<P> where P: IntoRawPtr + FromRawPtr {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr]     = note: required because it appears within the type `[atom::AtomSetOnce<std::boxed::Box<unsafe_code::SyncSharedMem>>; 64]`
[INFO] [stderr] note: required because it appears within the type `allocator::ShmemAllocator`
[INFO] [stderr]    --> src/allocator.rs:71:12
[INFO] [stderr]     |
[INFO] [stderr] 71  | pub struct ShmemAllocator {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] note: required by a bound in `lazy_static::lazy::Lazy`
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/lazy_static-1.5.0/src/inline_lazy.rs:19:20
[INFO] [stderr]     |
[INFO] [stderr] 19  | pub struct Lazy<T: Sync>(Cell<MaybeUninit<T>>, Once);
[INFO] [stderr]     |                    ^^^^ required by this bound in `Lazy`
[INFO] [stderr]     = note: this error originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0277`.
[INFO] [stderr] error: could not document `shared-data`
[INFO] running `Command { std: "docker" "inspect" "ebe9d66b6f322fe431790dfc73ab3d5be4738999dc3ffd8eff806ab2c89fa2f5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ebe9d66b6f322fe431790dfc73ab3d5be4738999dc3ffd8eff806ab2c89fa2f5", kill_on_drop: false }`
[INFO] [stdout] ebe9d66b6f322fe431790dfc73ab3d5be4738999dc3ffd8eff806ab2c89fa2f5