spiris 0.1.1

Rust client for the Spiris Bokföring och Fakturering API (formerly Visma eAccounting)
Documentation
[[bench]]
harness = false
name = "client_bench"
path = "benches/client_bench.rs"

[dependencies.async-stream]
optional = true
version = "0.3"

[dependencies.chrono]
features = ["serde"]
version = "0.4"

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

[dependencies.governor]
optional = true
version = "0.6"

[dependencies.hex]
optional = true
version = "0.4"

[dependencies.hmac]
optional = true
version = "0.12"

[dependencies.oauth2]
version = "4.4"

[dependencies.reqwest]
default-features = false
features = ["json", "rustls-tls"]
version = "0.12"

[dependencies.rust_decimal]
features = ["serde-with-float"]
optional = true
version = "1.33"

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

[dependencies.serde_json]
version = "1.0"

[dependencies.sha2]
optional = true
version = "0.10"

[dependencies.thiserror]
version = "1.0"

[dependencies.tokio]
features = ["full"]
version = "1.0"

[dependencies.tracing]
optional = true
version = "0.1"

[dependencies.url]
version = "2.5"

[dev-dependencies.criterion]
features = ["async_tokio"]
version = "0.5"

[dev-dependencies.mockito]
version = "1.2"

[dev-dependencies.tokio-test]
version = "0.4"

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

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

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

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

[features]
decimal = ["dep:rust_decimal"]
default = []
rate-limit = ["dep:governor"]
stream = ["dep:futures", "dep:async-stream"]
tracing = ["dep:tracing"]
webhooks = ["dep:hmac", "dep:sha2", "dep:hex"]

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

[package]
authors = ["Jimmy Stridh <jimmy@stridh.dev>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["api-bindings", "asynchronous"]
description = "Rust client for the Spiris Bokföring och Fakturering API (formerly Visma eAccounting)"
documentation = "https://docs.rs/spiris"
edition = "2021"
exclude = [".github/*", "spiris-tui/*", "CLAUDE.md", "PLAN_100_COVERAGE.md"]
homepage = "https://github.com/jimmystridh/spiris-rust"
keywords = ["spiris", "visma", "eaccounting", "api", "accounting"]
license = "MIT"
name = "spiris"
readme = "README.md"
repository = "https://github.com/jimmystridh/spiris-rust"
rust-version = "1.83"
version = "0.1.1"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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