Files
Notes/notes-service/vendor/moka/Cargo.toml.orig
T
2026-08-01 16:11:49 +03:00

194 lines
4.6 KiB
TOML

[package]
name = "moka"
version = "0.12.15"
edition = "2021"
# Rust 1.71.1 was released on August 3, 2023.
rust-version = "1.71.1"
description = "A fast and concurrent cache library inspired by Java Caffeine"
license = "(MIT OR Apache-2.0) AND Apache-2.0"
# homepage = "https://"
documentation = "https://docs.rs/moka/"
repository = "https://github.com/moka-rs/moka"
keywords = ["cache", "concurrent"]
categories = ["caching", "concurrency"]
readme = "README.md"
exclude = [
".ci_extras/",
".codecov.yml",
".devcontainer",
".github",
".gitignore",
".gitpod.yml",
".markdownlint.json",
".vscode",
"CHANGELOG.md",
"examples",
"MIGRATION-GUIDE.md",
"tests/compile_tests/",
]
[features]
default = []
# Enable this feature to use `moka::sync::{Cache, SegmentedCache}`
sync = []
# Enable this feature to use `moka::future::Cache`.
future = ["dep:async-lock", "dep:event-listener", "dep:futures-util"]
# Enable this feature to activate optional logging from caches.
# Currently cache will emit log only when it encounters a panic in user provided
# callback closure.
logging = ["dep:log"]
# Enable this feature to use `quanta::Instant` for some performance critical
# operations in the cache instead of `std::time::Instant`. As of v0.12.10, this
# feature will not make any noticeable performance difference, but in the future
# when cache metrics are added, it will be useful to have this feature enabled.
quanta = ["dep:quanta"]
# This is an old feature and has no effect in v0.12.10 or newer. It is kept for
# backward compatibility and will be removed in v0.13.0.
atomic64 = []
# This unstable feature adds `GlobalDebugCounters::current` function, which returns
# counters of internal object construction and destruction. It will have some
# performance impacts and is intended for debugging.
unstable-debug-counters = ["future"]
[dependencies]
crossbeam-channel = "0.5.15"
crossbeam-epoch = "0.9.18"
crossbeam-utils = "0.8.21"
equivalent = "1.0"
parking_lot = "0.12"
portable-atomic = "1.6"
smallvec = "1.8"
tagptr = "0.2"
uuid = { version = "1.1", features = ["v4"] }
# Optional dependencies (quanta)
quanta = { version = "0.12.2", optional = true }
# Optional dependencies (future)
async-lock = { version = "3.3", optional = true }
event-listener = { version = "5.3", optional = true }
futures-util = { version = "0.3.17", optional = true }
# Optional dependencies (logging)
log = { version = "0.4", optional = true }
[dev-dependencies]
actix-rt = "2.8"
ahash = "0.8.3"
anyhow = "1.0.19"
env_logger = "0.10.0"
getrandom = "0.2"
once_cell = "1.7"
rand = "0.8.5"
reqwest = { version = "0.12", default-features = false, features = [
"rustls-tls",
] }
tokio = { version = "1.19", features = [
"fs",
"io-util",
"macros",
"rt-multi-thread",
"sync",
"time",
] }
# We cannot use `cfg(loom)` here because an indirect dependency `concurrent-queue`
# uses it.
[target.'cfg(moka_loom)'.dev-dependencies]
loom = "0.7"
[target.'cfg(trybuild)'.dev-dependencies]
trybuild = "1.0"
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = [
"cfg(armv5te)",
"cfg(beta_clippy)",
"cfg(kani)",
"cfg(moka_loom)",
"cfg(mips)",
"cfg(run_flaky_tests)",
"cfg(skip_large_mem_tests)",
"cfg(trybuild)",
] }
# https://docs.rs/about/metadata
[package.metadata.docs.rs]
# Build the doc at docs.rs with some features enabled.
#
# You can test locally with:
# ```
# cargo +nightly -Z unstable-options --config 'build.rustdocflags="--cfg docsrs"' \
# doc --no-deps --features 'future, sync'
# ```
features = ["future", "sync"]
rustdoc-args = ["--cfg", "docsrs"]
# Examples
[[example]]
name = "append_value_async"
required-features = ["future"]
[[example]]
name = "append_value_sync"
required-features = ["sync"]
[[example]]
name = "basics_async"
required-features = ["future"]
[[example]]
name = "basics_sync"
required-features = ["sync"]
[[example]]
name = "bounded_counter_async"
required-features = ["future"]
[[example]]
name = "bounded_counter_sync"
required-features = ["sync"]
[[example]]
name = "cascading_drop_async"
required-features = ["future"]
[[example]]
name = "counter_async"
required-features = ["future"]
[[example]]
name = "counter_sync"
required-features = ["sync"]
[[example]]
name = "eviction_listener_sync"
required-features = ["sync"]
[[example]]
name = "jittered_expiry_policy_sync"
required-features = ["sync"]
[[example]]
name = "reinsert_expired_entries_sync"
required-features = ["sync"]
[[example]]
name = "size_aware_eviction_sync"
required-features = ["sync"]
[[example]]
name = "try_append_value_async"
required-features = ["future"]
[[example]]
name = "try_append_value_sync"
required-features = ["sync"]