[package]
edition = "2024"
rust-version = "1.95"
name = "musefs-core"
version = "1.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Orchestration for musefs: virtual tree, tag resolution, and scanning."
readme = false
license = "MIT"
repository = "https://github.com/Sohex/musefs"
[features]
metrics = []
[lib]
name = "musefs_core"
path = "src/lib.rs"
[[test]]
name = "backing_changed_fault"
path = "tests/backing_changed_fault.rs"
[[test]]
name = "bench_ingest"
path = "tests/bench_ingest.rs"
[[test]]
name = "bench_refresh"
path = "tests/bench_refresh.rs"
[[test]]
name = "checksums"
path = "tests/checksums.rs"
[[test]]
name = "common_corpus_smoke"
path = "tests/common_corpus_smoke.rs"
[[test]]
name = "concurrent_reads"
path = "tests/concurrent_reads.rs"
[[test]]
name = "contract_emit"
path = "tests/contract_emit.rs"
[[test]]
name = "db_corruption_fault"
path = "tests/db_corruption_fault.rs"
[[test]]
name = "external_contract"
path = "tests/external_contract.rs"
[[test]]
name = "facade"
path = "tests/facade.rs"
[[test]]
name = "fault_injection"
path = "tests/fault_injection.rs"
[[test]]
name = "flac_binary_tags"
path = "tests/flac_binary_tags.rs"
[[test]]
name = "incremental_refresh"
path = "tests/incremental_refresh.rs"
[[test]]
name = "interop_emit"
path = "tests/interop_emit.rs"
[[test]]
name = "metrics"
path = "tests/metrics.rs"
[[test]]
name = "perf_counters"
path = "tests/perf_counters.rs"
[[test]]
name = "pipeline_backpressure"
path = "tests/pipeline_backpressure.rs"
[[test]]
name = "probe_equivalence"
path = "tests/probe_equivalence.rs"
[[test]]
name = "proptest_read_fidelity"
path = "tests/proptest_read_fidelity.rs"
[[test]]
name = "read_at"
path = "tests/read_at.rs"
[[test]]
name = "reader"
path = "tests/reader.rs"
[[test]]
name = "reader_faults"
path = "tests/reader_faults.rs"
[[test]]
name = "scan"
path = "tests/scan.rs"
[[test]]
name = "scan_counters"
path = "tests/scan_counters.rs"
[[test]]
name = "template"
path = "tests/template.rs"
[[test]]
name = "tree"
path = "tests/tree.rs"
[[bench]]
name = "fingerprint_overhead"
path = "benches/fingerprint_overhead.rs"
harness = false
[[bench]]
name = "read_throughput"
path = "benches/read_throughput.rs"
harness = false
[dependencies.arc-swap]
version = "1"
[dependencies.base16ct]
version = "1.0"
[dependencies.crossbeam-channel]
version = "0.5"
[dependencies.dashmap]
version = "6"
[dependencies.im]
version = "15"
[dependencies.log]
version = "0.4"
[dependencies.musefs-db]
version = "1.1.0"
[dependencies.musefs-format]
version = "1.1.0"
[dependencies.once_cell]
version = "1"
[dependencies.parking_lot]
version = "0.12"
[dependencies.quick_cache]
version = "0.6.23"
features = ["stats"]
[dependencies.sha2]
version = "0.11"
[dependencies.sharded-slab]
version = "0.1"
[dependencies.thiserror]
version = "2"
[dev-dependencies.base64]
version = "0.22"
[dev-dependencies.crc]
version = "3"
[dev-dependencies.criterion]
version = "0.8"
[dev-dependencies.id3]
version = "1"
[dev-dependencies.libc]
version = "0.2"
[dev-dependencies.metaflac]
version = "0.2"
[dev-dependencies.ogg]
version = "0.9"
[dev-dependencies.proptest]
version = "1"
[dev-dependencies.rusqlite]
version = "0.40"
features = [
"bundled",
"blob",
]
[dev-dependencies.tempfile]
version = "3"
[lints.clippy]
cast_lossless = "warn"
cast_possible_truncation = "warn"
cast_possible_wrap = "warn"
cast_sign_loss = "warn"
doc_markdown = "allow"
inline_always = "allow"
items_after_statements = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
must_use_candidate = "allow"
similar_names = "allow"
too_many_lines = "allow"
trivially_copy_pass_by_ref = "allow"
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
unsafe_code = "deny"