[package] name = "tantivy" version = "0.17.0-dev" authors = ["Paul Masurel "] license = "MIT" categories = ["database-implementations", "data-structures"] description = """Search engine library""" documentation = "https://docs.rs/tantivy/" homepage = "https://github.com/quickwit-oss/tantivy" repository = "https://github.com/quickwit-oss/tantivy" readme = "README.md" keywords = ["search", "information", "retrieval"] edition = "2018" [dependencies] base64 = "0.13" byteorder = "1.4.3" crc32fast = "1.2.1" once_cell = "1.7.2" regex ={ version = "1.5.4", default-features = false, features = ["std"] } tantivy-fst = "0.3" memmap2 = {version = "0.5", optional=true} lz4_flex = { version = "0.9", default-features = false, features = ["checked-decode"], optional = true } brotli = { version = "3.3", optional = true } snap = { version = "1.0.5", optional = true } tempfile = { version = "3.2", optional = true } log = "0.4.14" serde = { version = "1.0.126", features = ["derive"] } serde_json = "1.0.64" num_cpus = "1.13" fs2={ version = "0.4.3", optional = true } levenshtein_automata = "0.2" uuid = { version = "0.8.2", features = ["v4", "serde"] } crossbeam = "0.8.1" futures = { version = "0.3.15", features = ["thread-pool"] } tantivy-query-grammar = { version="0.15.0", path="./query-grammar" } tantivy-bitpacker = { version="0.1", path="./bitpacker" } common = { version = "0.1", path = "./common/", package = "tantivy-common" } fastfield_codecs = { version="0.1", path="./fastfield_codecs", default-features = false } ownedbytes = { version="0.2", path="./ownedbytes" } stable_deref_trait = "1.2" rust-stemmers = "1.2" downcast-rs = "1.2" bitpacking = { version = "0.8.4", default-features = false, features = ["bitpacker4x"] } census = "0.4" fnv = "1.0.7" thiserror = "1.0.24" htmlescape = "0.3.1" fail = "0.5" murmurhash32 = "0.2" chrono = "0.4.19" smallvec = "1.6.1" rayon = "1.5" lru = "0.7.0" fastdivide = "0.4" itertools = "0.10.0" measure_time = "0.8.0" [target.'cfg(windows)'.dependencies] winapi = "0.3.9" [dev-dependencies] rand = "0.8.3" maplit = "1.0.2" matches = "0.1.8" proptest = "1.0" criterion = "0.3.5" test-log = "0.2.8" env_logger = "0.9.0" [dev-dependencies.fail] version = "0.5" features = ["failpoints"] [profile.release] opt-level = 3 debug = false debug-assertions = false [profile.test] debug-assertions = true overflow-checks = true [features] default = ["mmap", "lz4-compression" ] mmap = ["fs2", "tempfile", "memmap2"] brotli-compression = ["brotli"] lz4-compression = ["lz4_flex"] snappy-compression = ["snap"] failpoints = ["fail/failpoints"] unstable = [] # useful for benches. [workspace] members = ["query-grammar", "bitpacker", "common", "fastfield_codecs", "ownedbytes"] # Following the "fail" crate best practises, we isolate # tests that define specific behavior in fail check points # in a different binary. # # We do that because, fail rely on a global definition of # failpoints behavior and hence, it is incompatible with # multithreading. [[test]] name = "failpoints" path = "tests/failpoints/mod.rs" required-features = ["fail/failpoints"] [[bench]] name = "analyzer" harness = false