maitake-sync 0.3.0

No-std async synchronization primitives from Maitake
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.61.0"
name = "maitake-sync"
version = "0.3.0"
authors = ["Eliza Weisman <eliza@elizas.website>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "No-std async synchronization primitives from Maitake"
homepage = "https://mycelium.elizas.website"
documentation = "https://docs.rs/maitake-sync"
readme = "README.md"
keywords = [
    "async",
    "no_std",
    "sync",
    "mutex",
    "rwlock",
]
categories = [
    "no-std",
    "asynchronous",
    "concurrency",
]
license = "MIT"
repository = "https://github.com/hawkw/mycelium"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
alloc = ["cordyceps/alloc"]
core-error = []
critical-section = ["dep:critical-section"]
default = ["alloc"]
no-cache-pad = ["cordyceps/no-cache-pad"]
std = ["alloc"]

[lib]
name = "maitake_sync"
path = "src/lib.rs"

[dependencies.cordyceps]
version = "0.3.0"

[dependencies.critical-section]
version = "1.1"
optional = true

[dependencies.mutex-traits]
version = "1.0.0"

[dependencies.mycelium-bitfield]
version = "0.1.3"

[dependencies.pin-project]
version = "1"

[dependencies.portable-atomic]
version = "1.2"

[dependencies.tracing]
version = "0.1"
optional = true
default-features = false

[dev-dependencies.futures]
version = "0.3"

[dev-dependencies.futures-util]
version = "0.3"

[dev-dependencies.tokio-test]
version = "0.4"

[dev-dependencies.tracing]
version = "0.1"
features = ["std"]
default-features = false

[dev-dependencies.tracing-subscriber]
version = "0.3.11"
features = [
    "fmt",
    "env-filter",
]

[target."cfg(loom)".dependencies.loom]
version = "0.7"
default-features = false

[target."cfg(loom)".dependencies.tracing]
version = "0.1"
default-features = false

[target."cfg(loom)".dev-dependencies.loom]
version = "0.7"
features = [
    "futures",
    "checkpoint",
]

[target."cfg(not(loom))".dev-dependencies.proptest]
version = "1"

[target."cfg(not(loom))".dev-dependencies.tokio]
version = "1.32"
features = [
    "rt",
    "macros",
]

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
    "cfg(loom)",
    "cfg(maitake_ultraverbose)",
]