[package]
edition = "2024"
rust-version = "1.85"
name = "pondrs"
version = "0.2.5"
authors = ["Nils Bore <nilsbore@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A pipeline execution library"
homepage = "https://pond-org.github.io/pondrs"
documentation = "https://docs.rs/pondrs"
readme = "README.md"
keywords = [
"pipeline",
"data",
"workflow",
"etl",
"dag",
]
categories = [
"data-structures",
"concurrency",
"no-std",
"command-line-utilities",
"visualization",
]
license = "Apache-2.0"
repository = "https://github.com/pond-org/pondrs"
[features]
all = [
"std",
"json",
"polars",
"yaml",
"plotly",
"viz",
"image",
]
default = ["all"]
image = [
"std",
"dep:image",
"dep:base64",
]
json = [
"std",
"dep:serde_json",
]
plotly = [
"std",
"dep:plotly",
"dep:serde_json",
]
polars = [
"std",
"dep:polars",
"dep:fastexcel",
]
std = [
"serde/std",
"dep:serde_yaml",
"dep:log",
"dep:clap",
"dep:env_logger",
]
viz = [
"std",
"dep:axum",
"dep:tokio",
"dep:rust-embed",
"dep:serde_json",
"dep:ureq",
]
yaml = [
"std",
"dep:yaml-rust2",
]
[lib]
name = "pondrs"
path = "src/lib.rs"
[[bin]]
name = "pondrs"
path = "src/main.rs"
[[example]]
name = "dyn_steps_app"
path = "examples/dyn_steps_app.rs"
[[example]]
name = "ident_app"
path = "examples/ident_app.rs"
[[example]]
name = "minimal"
path = "examples/minimal.rs"
[[example]]
name = "no_std_example"
path = "examples/no_std_example.rs"
[[example]]
name = "register_example"
path = "examples/register_example.rs"
[[example]]
name = "sales_app"
path = "examples/sales_app.rs"
[[example]]
name = "split_join_app"
path = "examples/split_join_app.rs"
[[example]]
name = "weather_app"
path = "examples/weather_app.rs"
[[test]]
name = "app_integration"
path = "tests/app_integration.rs"
[[test]]
name = "dyn_steps_run"
path = "tests/dyn_steps_run.rs"
[[test]]
name = "integration_pipelines"
path = "tests/integration_pipelines.rs"
[[test]]
name = "pipeline_fn_prototype"
path = "tests/pipeline_fn_prototype.rs"
[[test]]
name = "sales_run"
path = "tests/sales_run.rs"
[[test]]
name = "split_join_run"
path = "tests/split_join_run.rs"
[[test]]
name = "weather_run"
path = "tests/weather_run.rs"
[dependencies.axum]
version = "0.8"
features = ["ws"]
optional = true
[dependencies.base64]
version = "0.22"
optional = true
[dependencies.clap]
version = "4"
features = ["derive"]
optional = true
[dependencies.env_logger]
version = "0.11.9"
optional = true
[dependencies.fastexcel]
version = "0.15.1"
optional = true
[dependencies.image]
version = "0.25"
features = [
"png",
"jpeg",
"tiff",
"bmp",
]
optional = true
default-features = false
[dependencies.log]
version = "0.4"
optional = true
[dependencies.plotly]
version = "0.14"
optional = true
[dependencies.polars]
version = "0.53"
features = [
"csv",
"parquet",
"fmt",
"dtype-slim",
]
optional = true
default-features = false
[dependencies.rust-embed]
version = "8"
optional = true
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
default-features = false
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.serde_yaml]
version = "0.9.34"
optional = true
[dependencies.thiserror]
version = "2"
default-features = false
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"net",
"sync",
"macros",
]
optional = true
[dependencies.ureq]
version = "3"
features = ["json"]
optional = true
default-features = false
[dependencies.yaml-rust2]
version = "0.11.0"
optional = true
[dev-dependencies.tempfile]
version = "3"