[[bin]]
name = "fault"
path = "src/main.rs"
[build-dependencies.anyhow]
default-features = false
version = "1"
[build-dependencies.tonic-build]
version = "0.13"
[build-dependencies.which]
default-features = false
features = ["real-sys"]
version = "8.0.0"
[dependencies.anyhow]
version = "1.0"
[dependencies.arc-swap]
version = "1.7.1"
[dependencies.async-std-resolver]
version = "0.24.4"
[dependencies.async-stream]
version = "0.3.6"
[dependencies.async-trait]
version = "0.1.88"
[dependencies.aws-config]
optional = true
version = "1.8.1"
[dependencies.aws-sdk-ecs]
optional = true
version = "1.86.0"
[dependencies.axum]
features = ["http2", "json", "macros"]
version = "0.8"
[dependencies.axum-tracing-opentelemetry]
version = "0.28"
[dependencies.bytes]
version = "1.10.1"
[dependencies.chrono]
features = ["serde"]
version = "0.4.41"
[dependencies.chrono-humanize]
version = "0.2.3"
[dependencies.clap]
features = ["derive", "env"]
version = "4.5.39"
[dependencies.colorful]
version = "0.3.2"
[dependencies.derive_builder]
optional = true
version = "0.20.2"
[dependencies.duckdb]
features = ["bundled"]
optional = true
version = "1.2.2"
[dependencies.futures]
version = "0.3"
[dependencies.google-cloud-gax]
optional = true
version = "0.22.0"
[dependencies.google-cloud-longrunning]
optional = true
version = "0.24.0"
[dependencies.google-cloud-run-v2]
optional = true
version = "0.3.0"
[dependencies.governor]
version = "0.10"
[dependencies.hickory-resolver]
version = "0.25"
[dependencies.http]
version = "1.3.1"
[dependencies.hyper]
features = ["client", "server", "full"]
version = "1.6"
[dependencies.hyper-util]
version = "0.1.13"
[dependencies.ignore]
optional = true
version = "0.4.23"
[dependencies.indicatif]
features = ["tokio", "improved_unicode"]
version = "0.17.11"
[dependencies.inquire]
optional = true
version = "0.7.5"
[dependencies.json-patch]
features = ["utoipa"]
optional = true
version = "4.0.0"
[dependencies.jsonpath-rust]
optional = true
version = "1.0.2"
[dependencies.k8s-openapi]
features = ["latest"]
optional = true
version = "0.25.0"
[dependencies.kanal]
version = "0.1.1"
[dependencies.kube]
features = ["jsonpatch"]
optional = true
version = "1.1.0"
[dependencies.libc]
version = "0.2.172"
[dependencies.local-ip-address]
version = "0.6.5"
[dependencies.log]
version = "0.4.27"
[dependencies.minijinja]
features = ["loader"]
optional = true
version = "2.10.2"
[dependencies.oas3]
optional = true
version = "0.16.1"
[dependencies.oneshot]
version = "0.1.11"
[dependencies.openapiv3]
optional = true
version = "2.1.0"
[dependencies.openssl]
features = ["vendored"]
version = "0.10"
[dependencies.opentelemetry]
version = "0.29"
[dependencies.opentelemetry-appender-tracing]
version = "0.29"
[dependencies.opentelemetry-otlp]
features = ["grpc-tonic"]
version = "0.29"
[dependencies.opentelemetry-semantic-conventions]
features = ["semconv_experimental"]
version = "0.29"
[dependencies.opentelemetry-stdout]
version = "0.29"
[dependencies.opentelemetry_sdk]
features = ["rt-tokio"]
version = "0.29"
[dependencies.parse_duration]
version = "2.1.1"
[dependencies.percent-encoding]
optional = true
version = "2.3.1"
[dependencies.pin-project]
version = "1.1.10"
[dependencies.prettytable]
version = "0.10.0"
[dependencies.prost]
version = "0.13"
[dependencies.prost-types]
version = "0.13"
[dependencies.pulldown-cmark]
default-features = false
optional = true
version = "0.13.0"
[dependencies.pulldown-cmark-to-cmark]
default-features = false
optional = true
version = "21.0.0"
[dependencies.qdrant-client]
optional = true
version = "1.14.0"
[dependencies.rand]
version = "0.9"
[dependencies.rand_distr]
version = "0.5"
[dependencies.regex]
default-features = false
features = ["std"]
optional = true
version = "1.11.1"
[dependencies.reqwest]
features = ["stream", "json", "gzip", "brotli", "zstd"]
version = "0.12.22"
[dependencies.rmcp]
features = ["transport-io"]
optional = true
version = "0.1.5"
[dependencies.rustls]
features = ["ring"]
optional = true
version = "0.23.27"
[dependencies.rustls-native-certs]
version = "0.8.1"
[dependencies.rustls-pki-types]
version = "1.12.0"
[dependencies.rustls-platform-verifier]
version = "0.6.0"
[dependencies.scc]
version = "2.3.4"
[dependencies.schemars]
optional = true
version = "0.9.0"
[dependencies.serde]
features = ["derive"]
version = "1.0"
[dependencies.serde_json]
version = "1.0"
[dependencies.serde_yaml]
version = "0.9.34"
[dependencies.similar]
features = ["serde"]
optional = true
version = "2.7.0"
[dependencies.similar-string]
optional = true
version = "1.4.3"
[dependencies.swiftide]
features = ["duckdb", "fastembed", "ollama", "openai", "qdrant", "tree-sitter", "open-router", "gemini"]
optional = true
version = "0.28.1"
[dependencies.swiftide-agents]
features = ["mcp"]
optional = true
version = "0.28.1"
[dependencies.swiftide-core]
optional = true
version = "0.28.1"
[dependencies.swiftide-indexing]
features = ["tree-sitter"]
optional = true
version = "0.28.1"
[dependencies.swiftide-macros]
optional = true
version = "0.28.1"
[dependencies.tera]
optional = true
version = "1.20.0"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
features = ["full", "tracing", "sync"]
version = "1.45"
[dependencies.tokio-rustls]
version = "0.26.2"
[dependencies.tokio-stream]
version = "0.1"
[dependencies.tokio-util]
features = ["compat"]
version = "0.7.15"
[dependencies.tonic]
features = ["transport"]
version = "0.13"
[dependencies.tower]
features = ["full", "make", "util"]
version = "0.5.2"
[dependencies.tower-http]
features = ["compression-gzip", "decompression-gzip", "trace"]
version = "0.6.4"
[dependencies.tracing]
features = ["attributes"]
version = "0.1.41"
[dependencies.tracing-appender]
version = "0.2.3"
[dependencies.tracing-log]
version = "0.2.0"
[dependencies.tracing-opentelemetry]
version = "0.30"
[dependencies.tracing-subscriber]
features = ["fmt", "env-filter", "json"]
version = "=0.3.19"
[dependencies.tree-sitter]
optional = true
version = "0.25.6"
[dependencies.tree-sitter-go]
optional = true
version = "0.23.4"
[dependencies.tree-sitter-javascript]
optional = true
version = "0.23.1"
[dependencies.tree-sitter-python]
optional = true
version = "0.23.6"
[dependencies.tree-sitter-rust]
optional = true
version = "0.24.0"
[dependencies.tree-sitter-yaml]
optional = true
version = "0.7.1"
[dependencies.url]
version = "2.5.4"
[dependencies.uuid]
features = ["fast-rng", "serde", "v4"]
version = "1.17.0"
[dependencies.walkdir]
version = "2.5.0"
[features]
agent = ["dep:swiftide", "dep:swiftide-macros", "dep:swiftide-core", "dep:swiftide-agents", "dep:swiftide-indexing", "dep:duckdb", "dep:ignore", "dep:similar", "dep:derive_builder", "dep:inquire", "dep:similar-string", "dep:pulldown-cmark", "dep:pulldown-cmark-to-cmark", "dep:rustls", "dep:tera", "dep:rmcp", "dep:tree-sitter", "dep:tree-sitter-javascript", "dep:tree-sitter-yaml", "dep:tree-sitter-rust", "dep:tree-sitter-go", "dep:tree-sitter-python", "dep:schemars", "dep:qdrant-client"]
default = ["demo", "scenario", "injection"]
demo = []
discovery = ["dep:kube", "dep:k8s-openapi", "dep:jsonpath-rust", "dep:json-patch", "dep:google-cloud-run-v2", "dep:google-cloud-gax", "dep:google-cloud-longrunning", "dep:aws-config", "dep:aws-sdk-ecs"]
injection = ["discovery", "dep:inquire"]
openapi = ["dep:oas3", "dep:openapiv3", "dep:minijinja", "dep:percent-encoding"]
scenario = ["openapi", "dep:regex", "dep:tera"]
stealth = ["aya-ebpf", "aya-log-ebpf", "aya", "aya-log", "nix", "fault-ebpf-programs"]
stealth-auto-build = ["aya-ebpf", "aya-log-ebpf", "aya", "aya-log", "nix"]
[package]
authors = ["Sylvain Hellegouarch <sylvain@rebound.how>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = "build.rs"
description = "fault CLI"
edition = "2024"
include = ["build.rs", "src/**/*", "Cargo.toml", "Cargo.lock", "LICENSE*", "README.md"]
keywords = ["fault", "ebpf"]
license-file = "LICENSE"
name = "fault-cli"
readme = "README.md"
repository = "https://github.com/fault-project/fault-cli"
resolver = "2"
rust-version = "1.85"
version = "0.14.0"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs", "--generate-link-to-definition"]
[target.'cfg(target_os = "linux")'.build-dependencies.aya-build]
version = "0.1.2"
[target.'cfg(target_os = "linux")'.dependencies.aya]
optional = true
version = "0.13.1"
[target.'cfg(target_os = "linux")'.dependencies.aya-ebpf]
optional = true
version = "0.1.1"
[target.'cfg(target_os = "linux")'.dependencies.aya-log]
optional = true
version = "0.2.1"
[target.'cfg(target_os = "linux")'.dependencies.aya-log-ebpf]
optional = true
version = "0.1.1"
[target.'cfg(target_os = "linux")'.dependencies.fault-ebpf-programs]
optional = true
version = "0.6.0"
[target.'cfg(target_os = "linux")'.dependencies.nix]
features = ["net"]
optional = true
version = "0.30.1"