server-less 0.6.0

Composable derive macros for common Rust patterns
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "server-less"
version = "0.6.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Composable derive macros for common Rust patterns"
homepage = "https://rhi.zone/server-less/"
readme = "README.md"
keywords = [
    "macros",
    "derive",
    "server",
    "rpc",
    "openapi",
]
categories = [
    "web-programming",
    "development-tools::procedural-macro-helpers",
]
license = "MIT"
repository = "https://github.com/rhi-zone/server-less"
resolver = "2"

[features]
asyncapi = ["server-less-macros/asyncapi"]
capnp = ["server-less-macros/capnp"]
cli = [
    "server-less-macros/cli",
    "server-less-core/cli",
    "clap",
    "dep:tokio",
    "tokio/rt-multi-thread",
]
completions = [
    "server-less-macros/completions",
    "cli",
    "dep:clap_complete",
    "dep:clap_mangen",
]
config = [
    "server-less-macros/config",
    "server-less-core/config",
]
connect = ["server-less-macros/connect"]
default = ["full"]
full = [
    "mcp",
    "http",
    "openapi",
    "cli",
    "ws",
    "graphql",
    "jsonrpc",
    "grpc",
    "capnp",
    "thrift",
    "connect",
    "smithy",
    "openrpc",
    "asyncapi",
    "jsonschema",
    "markdown",
    "config",
    "health",
    "completions",
]
graphql = [
    "server-less-macros/graphql",
    "async-graphql",
    "async-graphql-axum",
    "axum",
    "server-less-openapi",
]
grpc = ["server-less-macros/grpc"]
health = [
    "server-less-macros/health",
    "http",
]
http = [
    "server-less-macros/http",
    "server-less-core/http",
    "axum",
    "server-less-openapi",
    "dep:tokio",
    "tokio/net",
]
jsonrpc = [
    "server-less-macros/jsonrpc",
    "server-less-core/jsonrpc",
    "axum",
    "server-less-openapi",
]
jsonschema = [
    "server-less-macros/jsonschema",
    "server-less-core/jsonschema",
]
markdown = ["server-less-macros/markdown"]
mcp = [
    "server-less-macros/mcp",
    "server-less-core/mcp",
]
openapi = [
    "server-less-macros/openapi",
    "server-less-openapi",
]
openrpc = ["server-less-macros/openrpc"]
smithy = ["server-less-macros/smithy"]
thrift = ["server-less-macros/thrift"]
ws = [
    "server-less-macros/ws",
    "server-less-core/ws",
    "axum",
    "futures",
    "server-less-openapi",
]

[lib]
name = "server_less"
path = "src/lib.rs"

[[example]]
name = "cli_advanced"
path = "examples/cli_advanced.rs"

[[example]]
name = "cli_manual"
path = "examples/cli_manual.rs"

[[example]]
name = "cli_service"
path = "examples/cli_service.rs"

[[example]]
name = "error_handling"
path = "examples/error_handling.rs"

[[example]]
name = "http_service"
path = "examples/http_service.rs"

[[example]]
name = "mount_service"
path = "examples/mount_service.rs"

[[example]]
name = "openapi_composition"
path = "examples/openapi_composition.rs"

[[example]]
name = "param_service"
path = "examples/param_service.rs"

[[example]]
name = "program_preset"
path = "examples/program_preset.rs"

[[example]]
name = "rpc_preset"
path = "examples/rpc_preset.rs"

[[example]]
name = "server_preset"
path = "examples/server_preset.rs"

[[example]]
name = "streaming_service"
path = "examples/streaming_service.rs"

[[example]]
name = "tool_preset"
path = "examples/tool_preset.rs"

[[example]]
name = "user_service"
path = "examples/user_service.rs"

[[example]]
name = "ws_service"
path = "examples/ws_service.rs"

[[test]]
name = "asyncapi_tests"
path = "tests/asyncapi_tests.rs"

[[test]]
name = "capnp_tests"
path = "tests/capnp_tests.rs"

[[test]]
name = "cli_tests"
path = "tests/cli_tests.rs"

[[test]]
name = "compile_fail"
path = "tests/compile_fail.rs"

[[test]]
name = "connect_tests"
path = "tests/connect_tests.rs"

[[test]]
name = "context_tests"
path = "tests/context_tests.rs"

[[test]]
name = "e2e_tests"
path = "tests/e2e_tests.rs"

[[test]]
name = "error_tests"
path = "tests/error_tests.rs"

[[test]]
name = "graphql_tests"
path = "tests/graphql_tests.rs"

[[test]]
name = "group_tests"
path = "tests/group_tests.rs"

[[test]]
name = "grpc_tests"
path = "tests/grpc_tests.rs"

[[test]]
name = "http_roundtrip_tests"
path = "tests/http_roundtrip_tests.rs"

[[test]]
name = "http_tests"
path = "tests/http_tests.rs"

[[test]]
name = "jsonrpc_tests"
path = "tests/jsonrpc_tests.rs"

[[test]]
name = "jsonschema_tests"
path = "tests/jsonschema_tests.rs"

[[test]]
name = "markdown_tests"
path = "tests/markdown_tests.rs"

[[test]]
name = "mcp_tests"
path = "tests/mcp_tests.rs"

[[test]]
name = "openapi_tests"
path = "tests/openapi_tests.rs"

[[test]]
name = "openrpc_tests"
path = "tests/openrpc_tests.rs"

[[test]]
name = "polish_tests"
path = "tests/polish_tests.rs"

[[test]]
name = "program_tests"
path = "tests/program_tests.rs"

[[test]]
name = "rpc_preset_tests"
path = "tests/rpc_preset_tests.rs"

[[test]]
name = "serve_tests"
path = "tests/serve_tests.rs"

[[test]]
name = "server_tests"
path = "tests/server_tests.rs"

[[test]]
name = "smithy_tests"
path = "tests/smithy_tests.rs"

[[test]]
name = "thrift_tests"
path = "tests/thrift_tests.rs"

[[test]]
name = "tool_tests"
path = "tests/tool_tests.rs"

[[test]]
name = "ws_tests"
path = "tests/ws_tests.rs"

[dependencies.async-graphql]
version = "7"
optional = true

[dependencies.async-graphql-axum]
version = "7"
optional = true

[dependencies.axum]
version = "0.8"
features = ["ws"]
optional = true

[dependencies.clap]
version = "4"
optional = true

[dependencies.clap_complete]
version = "4"
optional = true

[dependencies.clap_mangen]
version = "0.2"
optional = true

[dependencies.futures]
version = "0.3"
optional = true

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.server-less-core]
version = "0.6.0"
default-features = false

[dependencies.server-less-macros]
version = "0.6.0"
default-features = false

[dependencies.server-less-openapi]
version = "0.6.0"
optional = true

[dependencies.tokio]
version = "1"
features = []
optional = true

[dev-dependencies.async-graphql]
version = "7"

[dev-dependencies.async-graphql-axum]
version = "7"

[dev-dependencies.axum]
version = "0.8"
features = ["ws"]

[dev-dependencies.clap]
version = "4"

[dev-dependencies.futures]
version = "0.3"

[dev-dependencies.schemars]
version = "1"

[dev-dependencies.tempfile]
version = "3"

[dev-dependencies.tokio]
version = "1"
features = ["full"]

[dev-dependencies.tower]
version = "0.5"
features = ["util"]

[dev-dependencies.trybuild]
version = "1"