merutable 0.0.1

Embeddable single-table engine: row + columnar Parquet with Iceberg-compatible metadata
Documentation
# 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"
name = "merutable"
version = "0.0.1"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Embeddable single-table engine: row + columnar Parquet with Iceberg-compatible metadata"
homepage = "https://github.com/merutable/merutable"
documentation = "https://docs.rs/merutable"
readme = "README.md"
keywords = [
    "embedded",
    "lsm",
    "iceberg",
    "parquet",
    "table",
]
categories = [
    "database-implementations",
    "data-structures",
]
license = "Apache-2.0"
repository = "https://github.com/merutable/merutable"

[features]
default = ["sql"]
replica = ["sql"]
sql = ["dep:datafusion"]

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

[[test]]
name = "engine_auto_flush_regression"
path = "tests/engine_auto_flush_regression.rs"

[[test]]
name = "engine_background_worker_drop"
path = "tests/engine_background_worker_drop.rs"

[[test]]
name = "engine_cross_level_stress"
path = "tests/engine_cross_level_stress.rs"

[[test]]
name = "engine_export_iceberg_pin"
path = "tests/engine_export_iceberg_pin.rs"

[[test]]
name = "engine_external_reader"
path = "tests/engine_external_reader.rs"

[[test]]
name = "engine_ghost_rows_turbo"
path = "tests/engine_ghost_rows_turbo.rs"

[[test]]
name = "engine_imp_regression"
path = "tests/engine_imp_regression.rs"

[[test]]
name = "engine_issue35_delete_visibility"
path = "tests/engine_issue35_delete_visibility.rs"

[[test]]
name = "engine_issue37_scan_gc_race"
path = "tests/engine_issue37_scan_gc_race.rs"

[[test]]
name = "engine_issue39_concurrent_ghost"
path = "tests/engine_issue39_concurrent_ghost.rs"

[[test]]
name = "engine_issue39_concurrent_ghost_large"
path = "tests/engine_issue39_concurrent_ghost_large.rs"

[[test]]
name = "engine_l1_overlap_regression"
path = "tests/engine_l1_overlap_regression.rs"

[[test]]
name = "engine_metrics_phase2"
path = "tests/engine_metrics_phase2.rs"

[[test]]
name = "engine_post_flush_read_path"
path = "tests/engine_post_flush_read_path.rs"

[[test]]
name = "engine_wal_orphan_registration"
path = "tests/engine_wal_orphan_registration.rs"

[[test]]
name = "engine_wal_rotation_gc"
path = "tests/engine_wal_rotation_gc.rs"

[[test]]
name = "iceberg_column_stats_e2e"
path = "tests/iceberg_column_stats_e2e.rs"

[[test]]
name = "iceberg_forensic_catalog"
path = "tests/iceberg_forensic_catalog.rs"

[[test]]
name = "issue42_schema_mismatch_on_reopen"
path = "tests/issue42_schema_mismatch_on_reopen.rs"

[[test]]
name = "issue44_add_column_api"
path = "tests/issue44_add_column_api.rs"

[[test]]
name = "issue44_additive_evolution_reads"
path = "tests/issue44_additive_evolution_reads.rs"

[[test]]
name = "parquet_forensic_parquet"
path = "tests/parquet_forensic_parquet.rs"

[[test]]
name = "replica_in_process_log_source"
path = "tests/replica_in_process_log_source.rs"

[[test]]
name = "replica_log_gap_recovery"
path = "tests/replica_log_gap_recovery.rs"

[[test]]
name = "replica_rebase_hotswap_bounded"
path = "tests/replica_rebase_hotswap_bounded.rs"

[[test]]
name = "replica_replica_compose"
path = "tests/replica_replica_compose.rs"

[[test]]
name = "replica_replica_tail"
path = "tests/replica_replica_tail.rs"

[[test]]
name = "sql_issue36_cursor_buffering"
path = "tests/sql_issue36_cursor_buffering.rs"

[[test]]
name = "sql_phase1_api_shape"
path = "tests/sql_phase1_api_shape.rs"

[[test]]
name = "sql_phase2a_memtable"
path = "tests/sql_phase2a_memtable.rs"

[[test]]
name = "sql_phase2b_l0_scan"
path = "tests/sql_phase2b_l0_scan.rs"

[[test]]
name = "sql_phase2c_pre_image"
path = "tests/sql_phase2c_pre_image.rs"

[[test]]
name = "types_proptest_key"
path = "tests/types_proptest_key.rs"

[[test]]
name = "wal_forensic_wal"
path = "tests/wal_forensic_wal.rs"

[[bench]]
name = "engine_compaction"
path = "benches/engine_compaction.rs"
harness = false

[[bench]]
name = "memtable_memtable"
path = "benches/memtable_memtable.rs"
harness = false

[[bench]]
name = "parquet_bloom"
path = "benches/parquet_bloom.rs"
harness = false

[dependencies.arc-swap]
version = "1"

[dependencies.arrow]
version = "53"

[dependencies.arrow-array]
version = "53"

[dependencies.arrow-schema]
version = "53"

[dependencies.async-trait]
version = "0.1"

[dependencies.blake3]
version = "1"

[dependencies.bumpalo]
version = "3"

[dependencies.bytes]
version = "1"
features = ["serde"]

[dependencies.crc32fast]
version = "1"

[dependencies.crossbeam-skiplist]
version = "0.1"

[dependencies.datafusion]
version = "43"
optional = true
default-features = false

[dependencies.futures]
version = "0.3"

[dependencies.hex]
version = "0.4"

[dependencies.iceberg]
version = "0.4"

[dependencies.lru]
version = "0.12"

[dependencies.metrics]
version = "0.24"

[dependencies.object_store]
version = "0.11"
features = ["aws"]

[dependencies.once_cell]
version = "1"

[dependencies.parquet]
version = "53"
features = ["async"]

[dependencies.postcard]
version = "1"
features = ["use-std"]

[dependencies.prost]
version = "0.13"

[dependencies.roaring]
version = "0.10"

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
version = "1"
features = ["full"]

[dependencies.tracing]
version = "0.1"

[dependencies.uuid]
version = "1"
features = ["v4"]

[dependencies.xxhash-rust]
version = "0.8"
features = ["xxh3"]

[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]

[dev-dependencies.proptest]
version = "1"

[dev-dependencies.tempfile]
version = "3"

[dev-dependencies.tokio]
version = "1"
features = [
    "full",
    "full",
]

[build-dependencies.prost-build]
version = "0.13"