[workspace] resolver = "2" members = [ "benchmarks", "dst", "macros", "pg_search", "stressgres", "tests", "tokenizers", ] # A bare `cargo build`/`check`/`clippy`/`test` at the root covers only the # extension stack. The other members compile a lot the extension does not need # (`benchmarks` builds the bundled DuckDB from C++ source); reach them with # `-p ` or `--workspace`. default-members = ["pg_search", "tokenizers"] [workspace.package] version = "0.25.1" edition = "2021" license = "AGPL-3.0" [profile.dev] panic = "unwind" # Backtraces through dependencies keep file:line, but the full DWARF (variable # and type info) is dropped; it is most of a debug target dir and is only # needed when stepping through a dependency in a debugger. Workspace crates # keep full debuginfo. Override locally with a `[profile]` section in # `~/.cargo/config.toml` if you need to debug into a dependency. [profile.dev.package."*"] debug = "line-tables-only" # `cc` passes `-g` to the bundled DuckDB C++ build based on this. DuckDB is a # benchmark comparison engine, not something we debug, and its objects with # `-g` cost gigabytes per target dir. [profile.dev.package.libduckdb-sys] debug = false [profile.release] # Note: We switched from `fat` to `thin` LTO to reduce compile time memory usage, which had been # sufficient to cause swapping on local machines, and to kill CI builds on smaller instances. # Benchmarks were unaffected. lto = "thin" panic = "unwind" opt-level = 3 codegen-units = 1 # Optimized + debug symbols, for profiling; debug-assertions off keeps dst asserts compiled out. [profile.release-with-debug] inherits = "release" debug = true debug-assertions = false # DST build profile — `dev`-like (debug assertions on) but isolated so it can be tuned # without affecting `dev`. [profile.dst] inherits = "dev" [workspace.dependencies] tantivy = { git = "https://github.com/paradedb/tantivy.git", package = "tantivy", rev = "c97fc25d7dbac9218d0b5724c290c2bafd785f03", features = [ "columnar-zstd-compression", "lz4-compression", "paradedb", "quickwit", # for sstable support "stemmer", "stopwords", ], default-features = false } pgrx = "=0.19.0" pgrx-tests = "=0.19.0" tantivy-jieba = "0.20.0" [patch.crates-io] tantivy-tokenizer-api = { git = "https://github.com/paradedb/tantivy.git", package = "tantivy-tokenizer-api", rev = "c97fc25d7dbac9218d0b5724c290c2bafd785f03" } [workspace.lints.clippy] large_futures = "warn"