add sync/async features

This commit is contained in:
2023-08-05 23:06:55 +03:00
parent 1e8cd4b461
commit a6e5931f35
4 changed files with 541 additions and 67 deletions

View File

@@ -9,14 +9,27 @@ description = "Библиотека для доступа к файлу базы
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features]
default = ["async"]
sync = ["zstd", "memmap"]
async = ["futures", "futures-core", "futures-util", "fmmap", "tokio", "async-compression", "async-stream"]
[dependencies]
serde="1.0"
serde_derive="1.0"
serde_json="1.0"
zip="0.6"
bincode = "^2.0.0-rc.2"
zstd = "^0.10"
memmap = "0.7.0"
zip="0.6"
fmmap = { version = "0.3", features = ["tokio-async"] , optional = true}
tokio = { version = "1", features = ["fs","io-util","rt", "macros"] , optional = true}
futures-core = {version = "0.3", optional = true}
futures = {version = "0.3", optional = true}
futures-util = {version = "0.3", optional = true}
async-compression = {git="https://github.com/Nullus157/async-compression", rev="4fd4c42", default-features = false, features = ["zstdmt", "tokio"], optional = true}
async-stream = {version = "0.3", optional = true}
zstd = {version = "^0.12", default-features = false, optional = true}
memmap = {version = "0.7.0", optional = true}
[dev-dependencies]
tempfile = "3.3"