[package]
edition = "2024"
rust-version = "1.99"
name = "harmos-storage"
version = "0.1.13"
build = false
include = [
".cargo_vcs_info.json",
"CHANGELOG.md",
"Cargo.lock",
"Cargo.toml",
"benches/query/main.rs",
"src/admissions.rs",
"src/aggregate.rs",
"src/arrow/ipc.rs",
"src/arrow/retention.rs",
"src/arrow.rs",
"src/backend.rs",
"src/batch.rs",
"src/batching.rs",
"src/capacity.rs",
"src/config.rs",
"src/deletion.rs",
"src/directory/mod.rs",
"src/directory/scan.rs",
"src/directory/selection.rs",
"src/directory/watch.rs",
"src/error.rs",
"src/execution.rs",
"src/file_batch.rs",
"src/file_capture.rs",
"src/file_checkpoint.rs",
"src/file_follow.rs",
"src/file_hash.rs",
"src/file_production.rs",
"src/file_reads.rs",
"src/follow.rs",
"src/frozen_file.rs",
"src/json/config.rs",
"src/json/files.rs",
"src/json/format.rs",
"src/json/log.rs",
"src/json/mod.rs",
"src/json/reads.rs",
"src/json/sessions.rs",
"src/lib.rs",
"src/local.rs",
"src/manager/admission.rs",
"src/manager/arrow.rs",
"src/manager/encoding.rs",
"src/manager/lifecycle.rs",
"src/manager/mod.rs",
"src/manager/recovery.rs",
"src/manager/shutdown.rs",
"src/manager/state.rs",
"src/manager/status.rs",
"src/manager/writes.rs",
"src/object_admissions.rs",
"src/objects.rs",
"src/opened_capture.rs",
"src/query/accumulate.rs",
"src/query/execute.rs",
"src/query/object_schemas.rs",
"src/query/order_stats.rs",
"src/query/ordering.rs",
"src/query/reader.rs",
"src/query/reduction.rs",
"src/query/source/columns.rs",
"src/query/source/tests.rs",
"src/query/source.rs",
"src/query/spill.rs",
"src/query/table.rs",
"src/query/transform/aggregate.rs",
"src/query/transform/downsample.rs",
"src/query/transform/filter.rs",
"src/query/transform/histogram.rs",
"src/query/transform/mod.rs",
"src/query/transform/project.rs",
"src/query/transform/sort.rs",
"src/query/typed.rs",
"src/query.rs",
"src/queue.rs",
"src/read_batch.rs",
"src/receipts.rs",
"src/schema_encoding.rs",
"src/selection.rs",
"src/signal/aggregates.rs",
"src/signal/error.rs",
"src/signal/mod.rs",
"src/signal/spectrum/bounded.rs",
"src/signal/spectrum/decibel.rs",
"src/signal/spectrum/fourier.rs",
"src/signal/spectrum/harmonic.rs",
"src/signal/spectrum/indicator.rs",
"src/signal/spectrum/mod.rs",
"src/signal/spectrum/spilled.rs",
"src/signal/spectrum/taper.rs",
"src/signal/waveform/calculus.rs",
"src/signal/waveform/edge.rs",
"src/signal/waveform/mod.rs",
"src/signal/waveform/reduce.rs",
"src/signal/waveform/resample.rs",
"src/signal/waveform/series.rs",
"src/signal/waveform/summary.rs",
"src/snapshot.rs",
"src/staging/checkpoint.rs",
"src/staging/creation.rs",
"src/staging/mod.rs",
"src/staging/mutations/append.rs",
"src/staging/mutations/create.rs",
"src/staging/mutations/end.rs",
"src/staging/mutations.rs",
"src/staging/perform.rs",
"src/staging/producer.rs",
"src/staging/session.rs",
"src/staging/state.rs",
"src/state/admission.rs",
"src/state/config.rs",
"src/state/file/files.rs",
"src/state/file/format.rs",
"src/state/file/journal.rs",
"src/state/file/mod.rs",
"src/state/mod.rs",
"src/state/reader.rs",
"src/worker.rs",
"src/writes/convert.rs",
"src/writes/decoded.rs",
"src/writes.rs",
"tests/integration/directory.rs",
"tests/integration/json.rs",
"tests/integration/json_sessions.rs",
"tests/integration/main.rs",
"tests/integration/manager/batching.rs",
"tests/integration/manager/cancellation.rs",
"tests/integration/manager/cursors.rs",
"tests/integration/manager/exhaustion.rs",
"tests/integration/manager/files.rs",
"tests/integration/manager/fixture.rs",
"tests/integration/manager/mapping.rs",
"tests/integration/manager/mod.rs",
"tests/integration/manager/mutations.rs",
"tests/integration/manager/nominal.rs",
"tests/integration/manager/objects.rs",
"tests/integration/manager/retention.rs",
"tests/integration/manager/typed_reads.rs",
"tests/integration/query.rs",
"tests/integration/state/file.rs",
"tests/integration/state/mod.rs",
"tests/support/file_backend.rs",
"tests/support/read_backend.rs",
"tests/support/settings.rs",
"tests/support/storage.rs",
"tests/support/waveforms.rs",
]
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Harmos storage: durable journals, snapshots and Arrow-backed stream storage."
readme = false
license = "Apache-2.0"
[features]
default = []
fft = ["dep:rustfft"]
[lib]
name = "harmos_storage"
path = "src/lib.rs"
[[test]]
name = "integration"
path = "tests/integration/main.rs"
[[bench]]
name = "integration-query"
path = "benches/query/main.rs"
harness = false
[dependencies.arrow-array]
version = "=60.1.0"
default-features = false
[dependencies.arrow-buffer]
version = "=60.1.0"
default-features = false
[dependencies.arrow-data]
version = "=60.1.0"
default-features = false
[dependencies.arrow-ipc]
version = "=60.1.0"
default-features = false
[dependencies.arrow-schema]
version = "=60.1.0"
default-features = false
[dependencies.arrow-select]
version = "=60.1.0"
default-features = false
[dependencies.base64]
version = "0.23.1"
features = ["alloc"]
default-features = false
[dependencies.flatbuffers]
version = "=25.12.19"
default-features = false
[dependencies.futures-util]
version = "0.3.34"
features = ["std"]
default-features = false
[dependencies.getrandom]
version = "0.4.3"
features = [
"std",
"wasm_js",
]
default-features = false
[dependencies.harmos-domain]
version = "=0.1.13"
default-features = false
[dependencies.notify]
version = "8.2.1"
default-features = false
[dependencies.postcard]
version = "1.1.3"
features = ["alloc"]
default-features = false
[dependencies.rustfft]
version = "6.4.1"
optional = true
default-features = true
[dependencies.same-file]
version = "1.0.6"
default-features = false
[dependencies.serde]
version = "1.0.229"
features = ["derive"]
default-features = true
[dependencies.serde_json]
version = "1.0.154"
default-features = true
[dependencies.sha2]
version = "0.11.1"
default-features = true
[dependencies.tempfile]
version = "3.27.0"
default-features = true
[dependencies.thiserror]
version = "2.0.21"
default-features = true
[dependencies.tokio]
version = "1.54.1"
features = [
"sync",
"rt",
"sync",
"time",
"macros",
]
default-features = false
[dependencies.tracing]
version = "0.1.44"
default-features = true
[dev-dependencies.criterion]
version = "0.8.2"
features = [
"html_reports",
"plotters",
]
default-features = false
[dev-dependencies.tokio]
version = "1.54.1"
features = [
"sync",
"rt-multi-thread",
"test-util",
]
default-features = false
[dev-dependencies.tracing-subscriber]
version = "0.3.23"
features = [
"fmt",
"registry",
"std",
]
default-features = false
[target."cfg(windows)".dependencies.windows-sys]
version = "0.61.2"
features = [
"Win32_Foundation",
"Win32_System_Pipes",
"Win32_System_SystemInformation",
"Win32_Storage_FileSystem",
]
default-features = false
[lints.clippy]
all = "warn"
[lints.rust]
unsafe_code = "warn"