[package]
edition = "2024"
name = "spikard-cli"
version = "0.15.4"
authors = ["Na'aman Hirschfeld <nhirschfeld@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Command-line interface for building and validating Spikard applications"
homepage = "https://github.com/Goldziher/spikard"
documentation = "https://docs.rs/spikard-cli"
readme = "README.md"
keywords = [
"cli",
"http",
"api",
"codegen",
"validation",
]
categories = [
"command-line-utilities",
"development-tools",
]
license = "MIT"
repository = "https://github.com/Goldziher/spikard"
resolver = "2"
[package.metadata.cargo-machete]
ignored = [
"clap_complete",
"clap_mangen",
"prost",
"prost-reflect",
"prost-types",
"protox",
]
[features]
all = [
"mcp",
"mcp-http",
]
default = ["mcp"]
mcp = ["dep:rmcp"]
mcp-http = [
"mcp",
"rmcp/transport-streamable-http-server",
]
[lib]
name = "spikard_cli"
path = "src/lib.rs"
[[bin]]
name = "spikard"
path = "src/main.rs"
[[test]]
name = "cli_asyncapi_smoke"
path = "tests/cli_asyncapi_smoke.rs"
[[test]]
name = "cli_binary_help"
path = "tests/cli_binary_help.rs"
[[test]]
name = "cli_codegen_smoke"
path = "tests/cli_codegen_smoke.rs"
[[test]]
name = "cli_help_runs"
path = "tests/cli_help_runs.rs"
[[test]]
name = "cli_help_test"
path = "tests/cli_help_test.rs"
[[test]]
name = "cli_inprocess_smoke"
path = "tests/cli_inprocess_smoke.rs"
[[test]]
name = "cli_invalid_dto_selection"
path = "tests/cli_invalid_dto_selection.rs"
[[test]]
name = "cli_mcp_smoke"
path = "tests/cli_mcp_smoke.rs"
[[test]]
name = "cli_more_command_coverage"
path = "tests/cli_more_command_coverage.rs"
[[test]]
name = "cli_more_commands_smoke"
path = "tests/cli_more_commands_smoke.rs"
[[test]]
name = "cli_smoke"
path = "tests/cli_smoke.rs"
[[test]]
name = "codegen_dto_tests"
path = "tests/codegen_dto_tests.rs"
[[test]]
name = "codegen_engine_behavior"
path = "tests/codegen_engine_behavior.rs"
[[test]]
name = "codegen_engine_error_paths"
path = "tests/codegen_engine_error_paths.rs"
[[test]]
name = "graphql_codegen_integration"
path = "tests/graphql_codegen_integration.rs"
[[test]]
name = "init_integration"
path = "tests/init_integration.rs"
[[test]]
name = "openapi_generator_behavior"
path = "tests/openapi_generator_behavior.rs"
[[test]]
name = "openapi_generator_trait_tests"
path = "tests/openapi_generator_trait_tests.rs"
[[test]]
name = "openrpc_codegen_behavior"
path = "tests/openrpc_codegen_behavior.rs"
[[test]]
name = "openrpc_handler_generation"
path = "tests/openrpc_handler_generation.rs"
[[test]]
name = "php_generator_tests"
path = "tests/php_generator_tests.rs"
[[test]]
name = "test_python_generator_all"
path = "tests/test_python_generator_all.rs"
[[test]]
name = "ts_schema_tests"
path = "tests/ts_schema_tests.rs"
[[test]]
name = "typescript_topological_sort"
path = "tests/typescript_topological_sort.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.asyncapiv3]
version = "0.1.3"
[dependencies.axum]
version = "0.8"
[dependencies.clap]
version = "4.6"
features = ["derive"]
[dependencies.clap_complete]
version = "4.6"
[dependencies.clap_mangen]
version = "0.3"
[dependencies.graphql-parser]
version = "0.4"
[dependencies.heck]
version = "0.5"
[dependencies.openapiv3]
version = "2.2"
[dependencies.prost]
version = "0.14"
[dependencies.prost-reflect]
version = "0.16"
[dependencies.prost-types]
version = "0.14"
[dependencies.protox]
version = "0.9"
[dependencies.rmcp]
version = "1.7.0"
features = [
"client",
"transport-io",
]
optional = true
[dependencies.scythe-core]
version = "0.7"
features = ["serde"]
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde-saphyr]
version = "0.0.26"
[dependencies.serde_json]
version = "1.0"
[dependencies.spikard]
version = "0.15.4"
[dependencies.spikard-codegen]
version = "0.15.4"
[dependencies.spikard-http]
version = "0.15.4"
[dependencies.tempfile]
version = "3.27"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.tracing]
version = "0.1"
[dev-dependencies.assert_cmd]
version = "2.2"
[dev-dependencies.predicates]
version = "3.1"
[dev-dependencies.tempfile]
version = "3.27"
[lints.clippy.all]
level = "deny"
priority = 0
[lints.clippy.nursery]
level = "deny"
priority = 0
[lints.clippy.pedantic]
level = "deny"
priority = 0
[lints.rust.unexpected_cfgs]
level = "allow"
priority = 0
check-cfg = ["cfg(tarpaulin_include)"]