[package]
edition = "2021"
name = "remdb"
version = "0.3.1"
authors = ["remdb contributors"]
build = false
exclude = [
"onnxruntime/",
"models/",
".trae/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "嵌入式内存数据库"
homepage = "https://github.com/bobjia/remdb"
documentation = "https://docs.rs/remdb"
readme = "README.md"
license = "MIT"
repository = "https://github.com/bobjia/remdb"
[features]
baremetal = [
"log",
"tracing-core",
"heapless",
]
c-api = []
debug = []
default = [
"std",
"posix",
"ha",
"pubsub",
"c-api",
"log",
]
ha = ["pubsub"]
log = []
model-download = [
"reqwest",
"sha2",
"std",
"futures",
"ureq",
]
model-runtime = [
"ort",
"serde",
"bincode",
"tokio",
"ndarray",
]
posix = ["std"]
pubsub = ["std"]
std = [
"rand",
"socket2",
"tracing",
"tracing-subscriber",
"tracing-appender",
"regex",
]
wal-compression-lz4 = ["lz4"]
wal-compression-zstd = ["zstd"]
[lib]
name = "remdb"
crate-type = [
"staticlib",
"rlib",
"cdylib",
]
path = "src/lib.rs"
[[bin]]
name = "model_worker"
path = "src/bin/model_worker.rs"
required-features = ["model-runtime"]
[[example]]
name = "alter_table_example"
path = "examples/api/alter_table_example.rs"
[[example]]
name = "basic_usage"
path = "examples/api/basic_usage.rs"
[[example]]
name = "batch_insert_example"
path = "examples/api/batch_insert_example.rs"
[[example]]
name = "composite_pk_example"
path = "examples/api/composite_pk_example.rs"
[[example]]
name = "ddl_example"
path = "examples/sql/ddl_example.rs"
[[example]]
name = "ddl_full_example"
path = "examples/sql/ddl_full_example.rs"
[[example]]
name = "ddl_runtime_example"
path = "examples/sql/ddl_runtime_example.rs"
[[example]]
name = "debug_table_creation"
path = "examples/misc/debug_table_creation.rs"
[[example]]
name = "describe_table"
path = "examples/misc/describe_table.rs"
[[example]]
name = "drop_table_example"
path = "examples/misc/drop_table_example.rs"
[[example]]
name = "export_example"
path = "examples/misc/export_example.rs"
[[example]]
name = "generate_snapshot"
path = "examples/misc/generate_snapshot.rs"
[[example]]
name = "ha_example"
path = "examples/misc/ha_example.rs"
required-features = ["ha"]
[[example]]
name = "ha_example_master"
path = "examples/misc/ha_example_master.rs"
required-features = ["ha"]
[[example]]
name = "ha_example_slave"
path = "examples/misc/ha_example_slave.rs"
required-features = ["ha"]
[[example]]
name = "incremental_snapshot"
path = "examples/misc/incremental_snapshot.rs"
[[example]]
name = "json_example"
path = "examples/api/json_example.rs"
[[example]]
name = "log_example"
path = "examples/misc/log_example.rs"
required-features = ["log"]
[[example]]
name = "low_power_mode"
path = "examples/misc/low_power_mode.rs"
[[example]]
name = "model_runtime"
path = "examples/misc/model_runtime.rs"
[[example]]
name = "monitoring_example"
path = "examples/api/monitoring_example.rs"
[[example]]
name = "multi_database_example"
path = "examples/api/multi_database_example.rs"
[[example]]
name = "multiple_tables"
path = "examples/api/multiple_tables.rs"
[[example]]
name = "pubsub_example"
path = "examples/misc/pubsub_example.rs"
required-features = ["pubsub"]
[[example]]
name = "pubsub_sql_test_server"
path = "examples/misc/pubsub_sql_test_server.rs"
required-features = ["pubsub"]
[[example]]
name = "pubsub_test_system_client"
path = "examples/misc/pubsub_test_system_client.rs"
required-features = ["pubsub"]
[[example]]
name = "pubsub_test_system_server"
path = "examples/misc/pubsub_test_system_server.rs"
required-features = ["pubsub"]
[[example]]
name = "pubsub_wildcard"
path = "examples/misc/pubsub_wildcard.rs"
required-features = ["pubsub"]
[[example]]
name = "rbac_example"
path = "examples/api/rbac_example.rs"
[[example]]
name = "sql_aggregate_functions"
path = "examples/sql/sql_aggregate_functions.rs"
[[example]]
name = "sql_json_functions"
path = "examples/sql/sql_json_functions.rs"
[[example]]
name = "sql_like_operator"
path = "examples/sql/sql_like_operator.rs"
[[example]]
name = "sql_query"
path = "examples/sql/sql_query.rs"
[[example]]
name = "sql_select_advanced"
path = "examples/sql/sql_select_advanced.rs"
[[example]]
name = "sql_table_management"
path = "examples/sql/sql_table_management.rs"
[[example]]
name = "sql_time_functions"
path = "examples/sql/sql_time_functions.rs"
[[example]]
name = "sql_transactions"
path = "examples/sql/sql_transactions.rs"
[[example]]
name = "sql_vector_operations"
path = "examples/sql/sql_vector_operations.rs"
[[example]]
name = "test_auto_increment"
path = "examples/sql/test_auto_increment.rs"
[[example]]
name = "test_create_timeseries_table"
path = "examples/sql/test_create_timeseries_table.rs"
[[example]]
name = "test_default_value"
path = "examples/sql/test_default_value.rs"
[[example]]
name = "test_max_records_config"
path = "examples/misc/test_max_records_config.rs"
[[example]]
name = "test_null_fix"
path = "examples/sql/test_null_fix.rs"
[[example]]
name = "test_parse"
path = "examples/sql/test_parse.rs"
[[example]]
name = "test_remdb_server"
path = "examples/misc/test_remdb_server.rs"
required-features = [
"ha",
"pubsub",
]
[[example]]
name = "test_system_tables"
path = "examples/sql/test_system_tables.rs"
[[example]]
name = "test_ttl_ringbuffer"
path = "examples/misc/test_ttl_ringbuffer.rs"
[[example]]
name = "time_series"
path = "examples/api/time_series.rs"
[[example]]
name = "time_series_complete"
path = "examples/api/time_series_complete.rs"
[[example]]
name = "time_series_iot"
path = "examples/api/time_series_iot.rs"
[[example]]
name = "timeseries_ddl_core"
path = "examples/sql/timeseries_ddl_core.rs"
[[example]]
name = "timeseries_ddl_usage"
path = "examples/sql/timeseries_ddl_usage.rs"
[[example]]
name = "varchar_example"
path = "examples/api/varchar_example.rs"
[[example]]
name = "vector_distance_test"
path = "examples/api/vector_distance_test.rs"
[[example]]
name = "vector_example"
path = "examples/api/vector_example.rs"
[[test]]
name = "alter_table_test"
path = "tests/alter_table_test.rs"
[[test]]
name = "check_size"
path = "tests/check_size.rs"
[[test]]
name = "composite_primary_key_test"
path = "tests/composite_primary_key_test.rs"
[[test]]
name = "database_test"
path = "tests/database_test.rs"
[[test]]
name = "drop_table_test"
path = "tests/drop_table_test.rs"
[[test]]
name = "dynamic_ddl_test"
path = "tests/dynamic_ddl_test.rs"
[[test]]
name = "export_test"
path = "tests/export_test.rs"
[[test]]
name = "ha_test"
path = "tests/ha_test.rs"
[[test]]
name = "json_functions_test"
path = "tests/json_functions_test.rs"
[[test]]
name = "json_test"
path = "tests/json_test.rs"
[[test]]
name = "large_table_test"
path = "tests/large_table_test.rs"
[[test]]
name = "like_operator_test"
path = "tests/like_operator_test.rs"
[[test]]
name = "memory_test"
path = "tests/memory_test.rs"
[[test]]
name = "model_pushdown_test"
path = "tests/model_pushdown_test.rs"
[[test]]
name = "model_runtime_test"
path = "tests/model_runtime_test.rs"
[[test]]
name = "pubsub_test"
path = "tests/pubsub_test.rs"
[[test]]
name = "pubsub_test_system"
path = "tests/pubsub_test_system.rs"
[[test]]
name = "simple_time_type_test"
path = "tests/simple_time_type_test.rs"
[[test]]
name = "sql_parse_test"
path = "tests/sql_parse_test.rs"
[[test]]
name = "sql_query_test"
path = "tests/sql_query_test.rs"
[[test]]
name = "sql_transaction_test"
path = "tests/sql_transaction_test.rs"
[[test]]
name = "table_test"
path = "tests/table_test.rs"
[[test]]
name = "test_index_recovery"
path = "tests/test_index_recovery.rs"
[[test]]
name = "test_memory_allocator"
path = "tests/test_memory_allocator.rs"
[[test]]
name = "test_null_values"
path = "tests/test_null_values.rs"
[[test]]
name = "test_rbac"
path = "tests/test_rbac.rs"
[[test]]
name = "test_rbac_module"
path = "tests/test_rbac_module.rs"
[[test]]
name = "test_restart_recovery_fixed"
path = "tests/test_restart_recovery_fixed.rs"
[[test]]
name = "test_snapshot_gen"
path = "tests/test_snapshot_gen.rs"
[[test]]
name = "time_series_batch_test"
path = "tests/time_series_batch_test.rs"
[[test]]
name = "time_series_module_test"
path = "tests/time_series_module_test.rs"
[[test]]
name = "timeseries_table_test"
path = "tests/timeseries_table_test.rs"
[[test]]
name = "transaction_test"
path = "tests/transaction_test.rs"
[[test]]
name = "utf8_support_test"
path = "tests/utf8_support_test.rs"
[[test]]
name = "variable_size_log_test"
path = "tests/variable_size_log_test.rs"
[[test]]
name = "vector_distance_algorithms_test"
path = "tests/vector_distance_algorithms_test.rs"
[[test]]
name = "vector_hybrid_search_enhanced_test"
path = "tests/vector_hybrid_search_enhanced_test.rs"
[[test]]
name = "vector_index_advanced_test"
path = "tests/vector_index_advanced_test.rs"
[[test]]
name = "vector_index_comprehensive_test"
path = "tests/vector_index_comprehensive_test.rs"
[[test]]
name = "vector_index_manager_test"
path = "tests/vector_index_manager_test.rs"
[[test]]
name = "vector_index_types_test"
path = "tests/vector_index_types_test.rs"
[[test]]
name = "vector_ivf_variants_performance_test"
path = "tests/vector_ivf_variants_performance_test.rs"
[[test]]
name = "vector_ivf_variants_test"
path = "tests/vector_ivf_variants_test.rs"
[[test]]
name = "vector_test"
path = "tests/vector_test.rs"
[[test]]
name = "wal_compression_test"
path = "tests/wal_compression_test.rs"
[[test]]
name = "wal_recovery_test"
path = "tests/wal_recovery_test.rs"
[[test]]
name = "wal_test"
path = "tests/wal_test.rs"
[[bench]]
name = "database"
path = "benches/database.rs"
harness = false
[dependencies.bincode]
version = "1.3"
optional = true
[dependencies.futures]
version = "0.3"
optional = true
[dependencies.heapless]
version = "0.8"
optional = true
[dependencies.lazy_static]
version = "1.4.0"
[dependencies.lz4]
version = "1.24"
optional = true
[dependencies.ndarray]
version = "0.15"
optional = true
[dependencies.ort]
version = "2.0.0-rc.11"
features = [
"download-binaries",
"ndarray",
"std",
"tls-native",
"copy-dylibs",
]
optional = true
default-features = false
[dependencies.rand]
version = "0.8.5"
optional = true
[dependencies.regex]
version = "1.10.0"
optional = true
[dependencies.remdb-macros]
version = "0.3.1"
[dependencies.reqwest]
version = "0.12"
features = ["stream"]
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
optional = true
[dependencies.sha2]
version = "0.10"
optional = true
[dependencies.socket2]
version = "0.5.5"
optional = true
[dependencies.tokio]
version = "1.0"
features = [
"rt",
"sync",
"time",
]
optional = true
[dependencies.tracing]
version = "0.1"
features = ["attributes"]
optional = true
[dependencies.tracing-appender]
version = "0.2"
optional = true
[dependencies.tracing-core]
version = "0.1"
optional = true
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"fmt",
"env-filter",
]
optional = true
[dependencies.ureq]
version = "2.9"
optional = true
[dependencies.zstd]
version = "0.13"
optional = true
[dev-dependencies.criterion]
version = "0.5"
[dev-dependencies.serial_test]
version = "3.0.0"
[build-dependencies.cc]
version = "1.0"
[profile.dev]
opt-level = 1
panic = "unwind"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
panic = "abort"