[package]
edition = "2021"
rust-version = "1.80"
name = "mongreldb-core"
version = "0.40.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "MongrelDB core: log-structured columnar store with sub-ms writes, learned indexes, and an AI-native access layer."
readme = false
license = "MIT OR Apache-2.0"
repository = "https://github.com/visorcraft/MongrelDB"
[features]
default = []
encryption = [
"dep:aes-gcm",
"dep:hkdf",
"dep:hmac",
]
[lib]
name = "mongreldb_core"
path = "src/lib.rs"
[[bin]]
name = "crash_writer"
path = "src/bin/crash_writer.rs"
[[example]]
name = "bench_compare"
path = "examples/bench_compare.rs"
[[example]]
name = "hybrid_query"
path = "examples/hybrid_query.rs"
[[example]]
name = "import_table"
path = "examples/import_table.rs"
[[test]]
name = "alter_column"
path = "tests/alter_column.rs"
[[test]]
name = "analytical_gap"
path = "tests/analytical_gap.rs"
[[test]]
name = "approx_aggregate"
path = "tests/approx_aggregate.rs"
[[test]]
name = "auth_enforcement"
path = "tests/auth_enforcement.rs"
[[test]]
name = "auto_increment"
path = "tests/auto_increment.rs"
[[test]]
name = "bulk_ingest"
path = "tests/bulk_ingest.rs"
[[test]]
name = "bytes_prefix"
path = "tests/bytes_prefix.rs"
[[test]]
name = "catalog"
path = "tests/catalog.rs"
[[test]]
name = "check_doctor"
path = "tests/check_doctor.rs"
[[test]]
name = "clustered_pk"
path = "tests/clustered_pk.rs"
[[test]]
name = "compaction_query_opt"
path = "tests/compaction_query_opt.rs"
[[test]]
name = "constraint_durability"
path = "tests/constraint_durability.rs"
[[test]]
name = "constraints"
path = "tests/constraints.rs"
[[test]]
name = "crash"
path = "tests/crash.rs"
[[test]]
name = "crash_process"
path = "tests/crash_process.rs"
[[test]]
name = "database_basic"
path = "tests/database_basic.rs"
[[test]]
name = "decimal"
path = "tests/decimal.rs"
[[test]]
name = "delete_reopen"
path = "tests/delete_reopen.rs"
[[test]]
name = "dml_phase1"
path = "tests/dml_phase1.rs"
[[test]]
name = "encrypted_page_stats"
path = "tests/encrypted_page_stats.rs"
[[test]]
name = "encryption_wal"
path = "tests/encryption_wal.rs"
[[test]]
name = "engine_e2e"
path = "tests/engine_e2e.rs"
[[test]]
name = "external_table_triggers"
path = "tests/external_table_triggers.rs"
[[test]]
name = "file_lock"
path = "tests/file_lock.rs"
[[test]]
name = "gap_closure"
path = "tests/gap_closure.rs"
[[test]]
name = "global_index_checkpoint"
path = "tests/global_index_checkpoint.rs"
[[test]]
name = "incremental_aggregate"
path = "tests/incremental_aggregate.rs"
[[test]]
name = "integrity_concurrency"
path = "tests/integrity_concurrency.rs"
[[test]]
name = "integrity_core"
path = "tests/integrity_core.rs"
[[test]]
name = "integrity_encryption"
path = "tests/integrity_encryption.rs"
[[test]]
name = "integrity_page_cache"
path = "tests/integrity_page_cache.rs"
[[test]]
name = "integrity_result_cache"
path = "tests/integrity_result_cache.rs"
[[test]]
name = "key_hierarchy"
path = "tests/key_hierarchy.rs"
[[test]]
name = "learned_range"
path = "tests/learned_range.rs"
[[test]]
name = "minhash"
path = "tests/minhash.rs"
[[test]]
name = "multi_run_aggregate"
path = "tests/multi_run_aggregate.rs"
[[test]]
name = "multi_run_cursor"
path = "tests/multi_run_cursor.rs"
[[test]]
name = "mutable_run_tier"
path = "tests/mutable_run_tier.rs"
[[test]]
name = "overlay_aware_query"
path = "tests/overlay_aware_query.rs"
[[test]]
name = "overlay_probe"
path = "tests/overlay_probe.rs"
[[test]]
name = "page_cache"
path = "tests/page_cache.rs"
[[test]]
name = "page_index"
path = "tests/page_index.rs"
[[test]]
name = "path_trace"
path = "tests/path_trace.rs"
[[test]]
name = "procedure_catalog"
path = "tests/procedure_catalog.rs"
[[test]]
name = "procedure_ddl"
path = "tests/procedure_ddl.rs"
[[test]]
name = "procedure_execute"
path = "tests/procedure_execute.rs"
[[test]]
name = "range_prune"
path = "tests/range_prune.rs"
[[test]]
name = "recovery_multitable"
path = "tests/recovery_multitable.rs"
[[test]]
name = "rename_table"
path = "tests/rename_table.rs"
[[test]]
name = "result_cache"
path = "tests/result_cache.rs"
[[test]]
name = "snapshot_retention"
path = "tests/snapshot_retention.rs"
[[test]]
name = "sparse"
path = "tests/sparse.rs"
[[test]]
name = "trigger_constraints"
path = "tests/trigger_constraints.rs"
[[test]]
name = "trigger_ordering"
path = "tests/trigger_ordering.rs"
[[test]]
name = "txn_atomic"
path = "tests/txn_atomic.rs"
[[test]]
name = "txn_concurrent"
path = "tests/txn_concurrent.rs"
[[test]]
name = "txn_large"
path = "tests/txn_large.rs"
[[test]]
name = "wal_shared"
path = "tests/wal_shared.rs"
[[test]]
name = "write_path"
path = "tests/write_path.rs"
[[bench]]
name = "filtered_query"
path = "benches/filtered_query.rs"
harness = false
[[bench]]
name = "page_encryption"
path = "benches/page_encryption.rs"
harness = false
required-features = ["encryption"]
[[bench]]
name = "path_matrix"
path = "benches/path_matrix.rs"
harness = false
[[bench]]
name = "scale"
path = "benches/scale.rs"
harness = false
[[bench]]
name = "trips"
path = "benches/trips.rs"
harness = false
[[bench]]
name = "write_path"
path = "benches/write_path.rs"
harness = false
[dependencies.aes-gcm]
version = "0.10"
optional = true
[dependencies.arc-swap]
version = "1"
[dependencies.argon2]
version = "0.5"
features = [
"alloc",
"password-hash",
]
default-features = false
[dependencies.bincode]
version = "1"
[dependencies.bytemuck]
version = "1"
[dependencies.bytes]
version = "1"
[dependencies.crc]
version = "3"
[dependencies.fs2]
version = "0.4.3"
[dependencies.getrandom]
version = "0.2"
[dependencies.hkdf]
version = "0.12"
optional = true
[dependencies.hmac]
version = "0.12"
optional = true
[dependencies.lz4_flex]
version = "0.11"
[dependencies.memmap2]
version = "0.9"
[dependencies.parking_lot]
version = "0.12"
[dependencies.rayon]
version = "1.12"
[dependencies.roaring]
version = "0.10"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
[dependencies.thiserror]
version = "1"
[dependencies.tokio]
version = "1.52.3"
features = [
"sync",
"rt",
]
[dependencies.zeroize]
version = "1"
features = ["alloc"]
[dependencies.zstd]
version = "0.13"
[dev-dependencies.bincode]
version = "1"
[dev-dependencies.criterion]
version = "0.5"
[dev-dependencies.sha2]
version = "0.10"
[dev-dependencies.tempfile]
version = "3"