[package] name = "dbsp" version = "0.32.0" edition = "2021" license = "MIT OR Apache-2.0" description = "Continuous streaming analytics engine" homepage = "https://github.com/feldera/feldera" repository = "https://github.com/feldera/feldera" keywords = ["DBSP", "streaming", "analytics", "database"] categories = ["algorithms", "data-structures"] publish = true [package.metadata.release] release = true [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [features] # Note: If you add a feature, adjust the ALMOST_ALL_FEATURES environment variable in # main.yml and coverage.yml: default = [] [dependencies] num = "0.4.0" anyhow = "1.0.57" petgraph = "0.6.0" typedmap = { version = "0.3.0", features = ["dashmap"] } crossbeam-utils = "0.8.6" once_cell = "1.9.0" priority-queue = "1.3.2" hashbrown = "0.14.2" csv = { version = "1.2.2" } impl-trait-for-tuples = "0.2" itertools = "0.10.5" textwrap = "0.15.0" ordered-float = { version = "3.9.1", features = ["serde", "rkyv_64"] } xxhash-rust = { version = "0.8.6", features = ["xxh3"] } crossbeam = "0.8.2" arc-swap = "1.5.1" mimalloc-rust-sys = "1.7.2" rand = "0.8.5" rust_decimal = { package = "feldera_rust_decimal", version = "1.33.1-feldera.1" } rkyv = { version = "0.7.45", default-features = false, features = ["std", "size_64", "validation", "uuid"] } size-of = { version = "0.1.5", package = "feldera-size-of", features = ["hashbrown", "time-std", "xxhash-xxh3", "arcstr", "chrono", "ordered-float"] } tarpc = { version = "0.33.0", features = ["full"] } futures = "0.3" tokio = { version = "1.25.0", features = ["macros", "rt", "rt-multi-thread"] } paste = "1" derive_more = { version = "1.0", features = ["add", "not", "from", "debug"] } dyn-clone = "1.0.17" rand_chacha = "0.3.1" tempfile = "3.10.0" binrw = "0.13.3" crc32c = "0.6.4" num-derive = "0.4.2" num-traits = "0.2.17" thiserror = "1.0" uuid = { version = "1.6.1", features = ["v7", "serde"] } clap = { version = "4.4.14", features = ["derive", "env", "wrap_help"] } fdlimit = { version = "0.3.0" } # metrics won't display if it doesn't match the adapters metrics version! metrics = { version = "0.23.0" } log = { version = "0.4", features = [] } rlimit = "0.10.1" serde = { version = "1.0", features = ["derive"] } ptr_meta = "0.2.0" feldera-types = { path = "../feldera-types", version = "0.32.0" } libc = "0.2.153" static_assertions = "1.1.0" lazy_static = "1.4.0" dashmap = "5" zip = "0.6.2" minitrace = "0.6" ouroboros = "0.18.4" [dependencies.time] version = "0.3.20" features = ["formatting", "macros", "serde", "serde-human-readable"] [target.'cfg(target_os = "linux")'.dependencies] nix = { version = "0.27.1", features = ["uio", "fs"] } io-uring = "0.6.3" [dev-dependencies] rand = "0.8.5" proptest-derive = { version = "0.5.0" } proptest = { version = "1.5.0" } proptest-state-machine = { version = "0.3.0" } futures = { version = "0.3.30", features = ["executor"] } pretty_assertions = { version = "1.4" } csv = "1.2.2" tar = "0.4.38" zstd = "0.12.0" criterion = "0.5.1" pprof = { version = "0.13.0", features = ["flamegraph", "criterion"] } rand_xoshiro = "0.6.0" indicatif = "0.17.0-rc.11" #clap = { version = "3.2.8", features = ["derive", "env"] } reqwest = { version = "0.11.11", features = ["blocking"] } chrono = { version = "0.4.38", features = ["rkyv-64", "serde"] } env_logger = { version = "0.11.2", features = ["color"] } serde_json = "1.0.127" ijson = { version = "0.1.4", package = "feldera-ijson" } [[bench]] name = "galen" harness = false #[[bench]] #name = "fraud" #harness = false [[bench]] name = "path" harness = false [[bench]] name = "consolidation" harness = false #[[bench]] #name = "ldbc-graphalytics" #harness = false [[bench]] name = "column_layer" harness = false [[bench]] name = "gdelt" harness = false [[example]] name = "orgchart" [[example]] name = "degrees" [[example]] name = "json" [[example]] name = "tutorial1" path = "examples/tutorial/tutorial1.rs" [[example]] name = "tutorial2" path = "examples/tutorial/tutorial2.rs" [[example]] name = "tutorial3" path = "examples/tutorial/tutorial3.rs" [[example]] name = "tutorial4" path = "examples/tutorial/tutorial4.rs" [[example]] name = "tutorial5" path = "examples/tutorial/tutorial5.rs" [[example]] name = "tutorial6" path = "examples/tutorial/tutorial6.rs" [[example]] name = "tutorial7" path = "examples/tutorial/tutorial7.rs" [[example]] name = "tutorial8" path = "examples/tutorial/tutorial8.rs" [[example]] name = "tutorial9" path = "examples/tutorial/tutorial9.rs" [[example]] name = "coord" path = "examples/dist/coord.rs" [[example]] name = "pool" path = "examples/dist/pool.rs"