rete-cli 0.3.2

CLI to build and inspect Rete graph files.
[package]
name = "rete-cli"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
rust-version.workspace = true
description = "CLI to build and inspect Rete graph files."
documentation = "https://docs.rs/rete-cli"
readme = "README.md"
keywords = ["rdf", "sparql", "cli", "graph"]
categories = ["command-line-utilities", "database"]
publish = ["crates-io"]
include = ["src/**", "tests/**", "Cargo.toml", "README.md", "LICENSE"]

[[bin]]
name = "rete"
path = "src/main.rs"

[dependencies]
# The CLI is always native, so it enables rete-core's `parallel` (rayon) feature
# to back `rete reach --parallel`. (wasm builds rete-core without this feature.)
rete-core = { version = "=0.3.2", path = "../rete-core", features = ["parallel"] }
anyhow.workspace = true
clap.workspace = true
clap_complete = "4"
clap_mangen = "0.2"
thiserror.workspace = true
# Turtle parsing for `rete build *.ttl`.
oxttl.workspace = true
# Standard SPARQL Results JSON output + the Dataset Card schema (serde derive).
serde = { version = "1", features = ["derive"] }
serde_json.workspace = true
# Blocking HTTP(S) for range requests. The `tls` feature pulls rustls +
# webpki-roots (pure-Rust, no system OpenSSL) so `query-url`/`summary-url` work
# against https hosts — S3, GitHub, any CDN — which is the actual deployment story.
ureq = { version = "2", default-features = false, features = ["tls"] }
# `rete serve` — the minimal synchronous HTTP server behind the SPARQL endpoint
# (no async runtime; the engine is synchronous anyway).
tiny_http = "0.12"
# Graceful Ctrl-C shutdown for `rete serve` (also flushes coverage/profiling data).
ctrlc = "3"
# SPARQL *Update* parsing for `rete serve` (queries go through rete-core).
spargebra.workspace = true

[dev-dependencies]
assert_cmd = "2.0"
predicates = "3.1"
tempfile = "3.20"
serde_json.workspace = true