[package]
edition = "2024"
name = "plugmem-core"
version = "0.1.0"
authors = ["Mansur Azatbek <mansur62624@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "plugmem engine: data model, temporal facts, indexes (BM25, graph, time, vectors incl. HNSW), hybrid recall, snapshot/journal."
homepage = "https://github.com/m62624/plugmem"
readme = "README.md"
keywords = [
"memory",
"search",
"bm25",
"llm",
"embeddings",
]
categories = [
"database-implementations",
"artificial-intelligence",
"text-processing",
"no-std",
"wasm",
]
license = "MIT"
repository = "https://github.com/m62624/plugmem"
resolver = "2"
[package.metadata.dist]
dist = false
[features]
counters = ["plugmem-arena/counters"]
serde = [
"dep:serde",
"plugmem-arena/serde",
]
[lib]
name = "plugmem_core"
path = "src/lib.rs"
[[example]]
name = "bench_ops"
path = "examples/bench_ops.rs"
[[example]]
name = "measure_remember"
path = "examples/measure_remember.rs"
[[example]]
name = "recall_quality"
path = "examples/recall_quality.rs"
[[test]]
name = "config"
path = "tests/config.rs"
[[test]]
name = "hnsw_engine"
path = "tests/hnsw_engine.rs"
[[test]]
name = "ids_and_errors"
path = "tests/ids_and_errors.rs"
[[test]]
name = "index"
path = "tests/index.rs"
[[test]]
name = "journal"
path = "tests/journal.rs"
[[test]]
name = "journal_ops"
path = "tests/journal_ops.rs"
[[test]]
name = "maintain"
path = "tests/maintain.rs"
[[test]]
name = "memory"
path = "tests/memory.rs"
[[test]]
name = "metadata"
path = "tests/metadata.rs"
[[test]]
name = "model"
path = "tests/model.rs"
[[test]]
name = "perf_gates"
path = "tests/perf_gates.rs"
[[test]]
name = "persist"
path = "tests/persist.rs"
[[test]]
name = "recall"
path = "tests/recall.rs"
[[test]]
name = "serde"
path = "tests/serde.rs"
[[test]]
name = "snapshot"
path = "tests/snapshot.rs"
[[test]]
name = "tokenizer"
path = "tests/tokenizer.rs"
[[test]]
name = "vectors"
path = "tests/vectors.rs"
[[test]]
name = "zero_alloc"
path = "tests/zero_alloc.rs"
[[bench]]
name = "engine"
path = "benches/engine.rs"
harness = false
[dependencies.hashbrown]
version = "0.17.1"
default-features = false
[dependencies.libm]
version = "0.2.16"
default-features = false
[dependencies.plugmem-arena]
version = "0.1.0"
default-features = false
[dependencies.serde]
version = "1.0.229"
features = [
"derive",
"alloc",
]
optional = true
default-features = false
[dependencies.thiserror]
version = "2.0.18"
default-features = false
[dependencies.unicode-normalization]
version = "0.1.25"
default-features = false
[dependencies.unicode-segmentation]
version = "1.13.3"
default-features = false
[dependencies.xxhash-rust]
version = "0.8.17"
features = ["xxh3"]
default-features = false
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies.criterion]
version = "0.8.2"
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies.insta]
version = "1.48.0"
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies.proptest]
version = "1.11.0"
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies.serde_json]
version = "1.0.150"
[lints.rust]
missing_docs = "deny"
unsafe_op_in_unsafe_fn = "deny"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
"cfg(tarpaulin)",
"cfg(valgrind)",
]
[lints.rustdoc]
broken_intra_doc_links = "deny"