Files
turso/core/Cargo.toml
2025-03-12 15:48:22 +01:00

109 lines
3.4 KiB
TOML

# Copyright 2023 the Limbo authors. All rights reserved. MIT license.
[package]
name = "limbo_core"
version.workspace = true
authors.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
description = "The Limbo database library"
[lib]
name = "limbo_core"
path = "lib.rs"
[features]
default = ["fs", "json", "uuid", "time"]
fs = []
json = ["dep:jsonb", "dep:pest", "dep:pest_derive", "dep:serde", "dep:indexmap"]
uuid = ["limbo_uuid/static"]
io_uring = ["dep:io-uring", "rustix/io_uring", "dep:libc"]
percentile = ["limbo_percentile/static"]
regexp = ["limbo_regexp/static"]
time = ["limbo_time/static"]
crypto = ["limbo_crypto/static"]
series = ["limbo_series/static"]
ipaddr = ["limbo_ipaddr/static"]
completion = ["limbo_completion/static"]
[target.'cfg(target_os = "linux")'.dependencies]
io-uring = { version = "0.6.1", optional = true }
[target.'cfg(target_family = "unix")'.dependencies]
polling = "3.7.2"
rustix = "0.38.34"
[target.'cfg(not(target_family = "wasm"))'.dependencies]
mimalloc = { version = "0.1", default-features = false }
libloading = "0.8.6"
[dependencies]
limbo_ext = { workspace = true, features = ["core_only"] }
cfg_block = "0.1.1"
fallible-iterator = "0.3.0"
hex = "0.4.3"
libc = { version = "0.2.155", optional = true }
limbo_sqlite3_parser = { workspace = true }
thiserror = "1.0.61"
getrandom = { version = "0.2.15" }
regex = "1.11.1"
regex-syntax = { version = "0.8.5", default-features = false, features = [
"unicode",
] }
chrono = { version = "0.4.38", default-features = false, features = ["clock"] }
julian_day_converter = "0.4.4"
jsonb = { version = "0.4.4", optional = true }
indexmap = { version = "2.2.6", features = ["serde"], optional = true }
serde = { version = "1.0", features = ["derive"], optional = true }
pest = { version = "2.0", optional = true }
pest_derive = { version = "2.0", optional = true }
rand = "0.8.5"
limbo_macros = { workspace = true }
limbo_uuid = { workspace = true, optional = true, features = ["static"] }
limbo_regexp = { workspace = true, optional = true, features = ["static"] }
limbo_percentile = { workspace = true, optional = true, features = ["static"] }
limbo_time = { workspace = true, optional = true, features = ["static"] }
limbo_crypto = { workspace = true, optional = true, features = ["static"] }
limbo_series = { workspace = true, optional = true, features = ["static"] }
limbo_ipaddr = { workspace = true, optional = true, features = ["static"] }
limbo_completion = { workspace = true, optional = true, features = ["static"] }
miette = "7.4.0"
strum = "0.26"
parking_lot = "0.12.3"
crossbeam-skiplist = "0.1.3"
tracing = "0.1.41"
ryu = "1.0.19"
[build-dependencies]
chrono = { version = "0.4.38", default-features = false }
built = { version = "0.7.5", features = ["git2", "chrono"] }
[target.'cfg(not(target_family = "windows"))'.dev-dependencies]
pprof = { version = "0.14.0", features = ["criterion", "flamegraph"] }
[dev-dependencies]
criterion = { version = "0.5", features = [
"html_reports",
"async",
"async_futures",
] }
rstest = "0.18.2"
rusqlite = "0.33.0"
tempfile = "3.8.0"
quickcheck = { version = "1.0", default-features = false }
quickcheck_macros = { version = "1.0", default-features = false }
rand = "0.8.5" # Required for quickcheck
rand_chacha = "0.9.0"
env_logger = "0.11.6"
test-log = { version = "0.2.17", features = ["trace"] }
lru = "0.13.0"
[[bench]]
name = "benchmark"
harness = false
[[bench]]
name = "mvcc_benchmark"
harness = false