[package]
name = "eorst"
version = "1.0.1"
edition = "2021"
description = "Earth Observation and Remote Sensing Toolkit - library for raster processing pipelines"
license = "LGPL-3.0-or-later"
authors = ["JRSRP <info@jrsrp.org.au>"]
repository = "https://gitlab.com/jrsrp/sys/eors_workspace"
homepage = "https://www.jrsrp.org.au/"
documentation = "https://docs.rs/eorst"
keywords = ["remote-sensing", "geospatial", "raster", "gdal", "earth-observation"]
categories = ["science::geo"]
include = [
"src/**/*",
"Cargo.toml",
"README.md",
"LICENSE",
"CHANGELOG.md",
]
[dependencies]
anyhow = { workspace = true }
gdal = { workspace = true, features = ["ndarray"] }
gdal-src = { workspace = true, optional = true }
clap = { workspace = true, features = ["derive"] }
log = {workspace = true}
ndarray = { workspace = true }
lgbm = { version = "0.0.6", optional = true}
opencv = { version = "0.98", optional = true, features = ["clang-runtime"] }
itertools = "0.13"
libmath = "0.2.1"
num-traits = "0.2"
rayon = "1.10"
uuid = { version = "1.11", features = ["v4"] }
env_logger = {workspace = true}
csv = "1.3"
colored = "3.*"
glob = "0.3"
serde_json = { version = "1.0"}
chrono = "0.4"
spinners = "4.1"
console = "0.15"
tokio = { version = "1.40", features = ["full"] }
stac = "0.12"
rss_core = { workspace = true, optional = true }
serde = { version = "1.0", features = ["derive"] }
rand = "0.8"
rand_chacha = "0.3"
ndarray-stats = "0.7"
ndhistogram = { workspace = true }
threadpool = "1.8"
kdam = { workspace = true }
ndarray-csv = {version = "=0.5.4"}
polars = { version = "0.53", features = ["dtype-full","parquet","lazy","polars-io","diagonal_concat"], optional = true }
hashbrown = { version = "0.15" }
async-tiff = { version = "0.3.0", features = ["ndarray"] }
futures = "0.3.32"
url = "2.5.8"
object_store = { version = "0.13.2", features = ["aws"] }
strum = { version = "0.28.0", features = ["derive"] }
[features]
use_opencv = ["opencv"]
use_lgbm = ["lgbm"]
use_rss= ["rss_core"]
use_polars = ["polars"]
static-gdal = ["gdal-src"]
[package.metadata.docs.rs]
rustc-args = ["--cfg", "docsrs"]
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples=examples"]
[dev-dependencies]
criterion = "0.8.2"
signalo_filters = "0.6.0"
[[example]]
name = "5_compute_ndvi_over_time_rss"
required-features = ["use_rss"]
test = false
[[example]]
name = "5_compute_ndvi_over_time_stac"
required-features = ["use_rss"]
test = false
[[example]]
name = "10_lightgbm_integration"
required-features = ["use_lgbm"]
test = false
[[example]]
name = "11_zonal_stats"
required-features = ["use_polars"]
test = false
[[example]]
name = "12_zonal_stat_stac_query"
required-features = ["use_polars", "use_rss"]
test = false
[[example]]
name = "13_zonal_stat_stac_query_json"
required-features = ["use_polars", "use_rss"]
test = false
[[example]]
name = "15_mosaic"
required-features = ["use_rss"]
test = false
[[example]]
name = "16_mosaic_folder"
required-features = ["use_rss"]
test = false
[[example]]
name = "16_mask_timeseries_with_filters"
required-features = ["use_rss", "use_opencv"]
test = false
[[example]]
name = "5_compute_ndvi_over_time_rsc_db"
required-features = ["use_rss"]
test = false
[[example]]
name = "rasterize"
test = false
[[example]]
name = "1_create_raster_dataset_simple"
test = false
[[example]]
name = "4_compute_ndvi"
test = false
[[example]]
name = "6_compute_ndvi_over_time_masked"
test = false
[[example]]
name = "8_compute_ndvi_over_time_masked_smoth"
test = false
[[example]]
name = "3_process_image"
test = false
[[example]]
name = "14_process_sync"
test = false
[[example]]
name = "ndvi_s2_annual"
required-features = ["use_rss"]
test = false
[[example]]
name = "cloud_occurrence"
required-features = ["use_rss"]
test = false
[[example]]
name = "cloud_mask_dilated"
required-features = ["use_rss", "use_opencv"]
test = false
[[example]]
name = "bench_ndvi_annual_full_tile"
required-features = ["use_rss"]
test = false
[[example]]
name = "bench_ndvi_annual_full_tile_masked"
required-features = ["use_rss"]
test = false
[[example]]
name = "bench_ndvi_fmask_yearly"
test = false
[[bench]]
name = "filters_benchmark"
harness = false
required-features = ["use_opencv"]
[[bench]]
name = "full_pipeline_bench"
harness = false
required-features = ["use_rss"]