xqpath 1.4.2

A high-performance jq-inspired path extractor and updater for structured data in Rust with advanced debugging and performance monitoring capabilities
Documentation
[package]
name = "xqpath"
version = "1.4.2"
edition = "2021"
authors = ["Thne"]
description = "A high-performance jq-inspired path extractor and updater for structured data in Rust with advanced debugging and performance monitoring capabilities"
license = "Apache-2.0"
repository = "https://github.com/ThneS/xqpath"
keywords = ["json", "yaml", "path", "query", "jq"]
categories = ["command-line-utilities", "parsing"]

[[bin]]
name = "xqpath"
path = "src/cli.rs"

[dependencies]
serde = { version = "1.0", features = ["derive"] }
serde_json = { version = "1.0", optional = true }
serde_yaml = { version = "0.9", optional = true }
winnow = "0.5"
clap = { version = "4.0", features = [
    "derive",
    "color",
    "help",
    "usage",
    "error-context",
], optional = true }
colored = { version = "2.0", optional = true }
anyhow = { version = "1.0", optional = true }

# 调试功能依赖 (v1.4.1)
tracing = { version = "0.1", optional = true }
tracing-subscriber = { version = "0.3", optional = true, features = [
    "json",
    "env-filter",
] }
tracing-appender = { version = "0.2", optional = true }

# 性能分析依赖 (v1.4.2)
sysinfo = { version = "0.30", optional = true }
pprof = { version = "0.13", optional = true, features = [
    "flamegraph",
    "protobuf-codec",
] }
criterion = { version = "0.5", optional = true, features = ["html_reports"] }

# 监控依赖 (v1.4.3)
tokio = { version = "1.0", optional = true, features = ["full"] }
prometheus = { version = "0.13", optional = true }
crossterm = { version = "0.27", optional = true }
rustyline = { version = "13.0", optional = true }

[features]
default = ["json", "yaml", "cli"]

# 核心功能
json = ["serde_json"]
yaml = ["serde_yaml"]
update = ["serde_json/preserve_order"]

# 调试功能 (v1.4.1)
debug = ["dep:tracing", "dep:tracing-subscriber", "dep:tracing-appender"]

# 性能分析功能 (v1.4.2)
profiling = ["debug", "dep:sysinfo", "dep:pprof", "dep:criterion"]
benchmark = ["profiling"]

# 监控功能 (v1.4.3)
monitoring = ["profiling", "dep:tokio", "dep:prometheus"]
interactive-debug = ["monitoring", "dep:crossterm", "dep:rustyline"]

# CLI 功能
cli = ["dep:clap", "dep:colored", "dep:anyhow"]
cli-debug = ["cli", "debug"]
cli-full = ["cli-debug", "interactive-debug"]

[dev-dependencies]
criterion = { version = "0.5", features = ["html_reports"] }

[[bench]]
name = "performance"
harness = false

[[bench]]
name = "advanced_benchmarks"
harness = false