# 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.88"
name = "nifi-rust-client"
version = "0.15.1"
authors = ["Malte Sander <contact@maltesander.com>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Apache NiFi REST API client library"
homepage = "https://github.com/maltesander/nifi-rust-client"
documentation = "https://docs.rs/nifi-rust-client"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/maltesander/nifi-rust-client"

[package.metadata.docs.rs]
features = ["dynamic"]

[features]
default = ["nifi-2-10-0"]
dynamic = []
nifi-2-10-0 = []
nifi-2-6-0 = []
nifi-2-7-2 = []
nifi-2-8-0 = []
nifi-2-9-0 = []

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

[[example]]
name = "basic_static"
path = "examples/basic_static.rs"
required-features = ["nifi-2-8-0"]

[[example]]
name = "bulk_start_stop"
path = "examples/bulk_start_stop.rs"
required-features = ["nifi-2-8-0"]

[[example]]
name = "credentials_and_retry"
path = "examples/credentials_and_retry.rs"
required-features = ["nifi-2-8-0"]

[[example]]
name = "custom_tls"
path = "examples/custom_tls.rs"
required-features = ["nifi-2-8-0"]

[[example]]
name = "dynamic_autodetect"
path = "examples/dynamic_autodetect.rs"
required-features = ["dynamic"]

[[example]]
name = "streaming_download"
path = "examples/streaming_download.rs"
required-features = ["nifi-2-8-0"]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[dependencies.async-trait]
version = "0.1"

[dependencies.bytes]
version = "1"

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

[dependencies.futures-util]
version = "0.3"
default-features = false

[dependencies.percent-encoding]
version = "2"

[dependencies.reqwest]
version = "0.13"
features = [
    "form",
    "json",
    "multipart",
    "query",
    "rustls",
    "stream",
]
default-features = false

[dependencies.semver]
version = "1"

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

[dependencies.serde_json]
version = "1"

[dependencies.snafu]
version = "0.9"

[dependencies.tokio]
version = "1"
features = [
    "sync",
    "time",
]

[dependencies.tracing]
version = "0.1"

[dependencies.url]
version = "2"

[dependencies.uuid]
version = "1"
features = ["v4"]

[dependencies.zeroize]
version = "1"

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

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

[dev-dependencies.tokio]
version = "1"
features = [
    "rt",
    "rt-multi-thread",
    "macros",
]

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

[dev-dependencies.wiremock]
version = "0.6"

[build-dependencies.nifi-openapi-gen]
version = "0.14.0"

[lints.clippy]
panic = "deny"
unwrap_in_result = "deny"
unwrap_used = "deny"
