# 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"
rust-version = "1.91"
name = "kreuzberg-cli"
version = "4.8.2"
authors = ["Na'aman Hirschfeld <naaman@kreuzberg.dev>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Command-line interface for Kreuzberg document intelligence"
homepage = "https://kreuzberg.dev"
documentation = "https://docs.kreuzberg.dev"
readme = "README.md"
keywords = [
    "document",
    "extraction",
    "cli",
    "tool",
    "parser",
]
categories = [
    "command-line-utilities",
    "text-processing",
]
license = "Elastic-2.0"
repository = "https://github.com/kreuzberg-dev/kreuzberg"
resolver = "2"

[package.metadata.cargo-machete]
ignored = ["serde_toon_format"]

[features]
all = [
    "default",
    "api",
    "html",
    "mcp",
    "mcp-http",
    "chunking-tokenizers",
    "tree-sitter",
    "liter-llm",
]
api = ["kreuzberg/api"]
bundled-pdfium = ["kreuzberg/bundled-pdfium"]
chunking-tokenizers = ["kreuzberg/chunking-tokenizers"]
default = [
    "bundled-pdfium",
    "embeddings",
    "html",
    "liter-llm",
    "ocr",
    "paddle-ocr",
    "layout-detection",
    "chunking-tokenizers",
    "tree-sitter",
]
embeddings = ["kreuzberg/embeddings"]
html = ["kreuzberg/html"]
layout-detection = ["kreuzberg/layout-detection"]
liter-llm = ["kreuzberg/liter-llm"]
mcp = ["kreuzberg/mcp"]
mcp-http = ["kreuzberg/mcp-http"]
ocr = ["kreuzberg/ocr"]
paddle-ocr = ["kreuzberg/paddle-ocr"]
static-pdfium = ["kreuzberg/static-pdfium"]
tree-sitter = [
    "kreuzberg/tree-sitter",
    "dep:tree-sitter-language-pack",
]

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

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

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

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

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

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

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

[dependencies.anstyle]
version = "1"

[dependencies.anyhow]
version = "1.0"

[dependencies.base64]
version = "0.22.1"

[dependencies.clap]
version = "4.6"
features = [
    "derive",
    "color",
    "suggestions",
]

[dependencies.clap_complete]
version = "4.6"

[dependencies.kreuzberg]
version = "4.8.2"
features = [
    "formats",
    "tokio-runtime",
    "simd-utf8",
]
default-features = false

[dependencies.serde_json]
version = "1.0.149"

[dependencies.serde_toon_format]
version = "0.1"

[dependencies.tokio]
version = "1.51.1"
features = [
    "rt",
    "rt-multi-thread",
    "macros",
    "sync",
    "process",
    "fs",
    "time",
    "io-util",
]

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-subscriber]
version = "0.3"
features = [
    "env-filter",
    "fmt",
]

[dependencies.tree-sitter-language-pack]
version = "1.4.2"
features = [
    "serde",
    "dynamic-loading",
    "download",
    "serde",
]
optional = true
default-features = false

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

[dev-dependencies.ureq]
version = "3.3"
features = ["json"]
