[package]
edition = "2024"
name = "cirrus"
version = "0.1.0"
authors = ["Ryan Faulhaber <ryf@sent.as>"]
build = false
exclude = [
"/.github/",
"/.envrc",
"/.env.example",
"/.gitignore",
"/CLAUDE.md",
"/clippy.toml",
"/deny.toml",
"/flake.lock",
"/flake.nix",
"/rust-toolchain.toml",
"/tests/integration",
"/tests/integration.rs",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "An ergonomic Rust HTTP client for the Salesforce REST API."
homepage = "https://github.com/cirrus-code/cirrus"
documentation = "https://docs.rs/cirrus"
readme = "README.md"
keywords = [
"salesforce",
"api",
"client",
"sdk",
"rest",
]
categories = [
"api-bindings",
"web-programming::http-client",
]
license = "MIT"
repository = "https://github.com/cirrus-code/cirrus"
[package.metadata.release]
allow-branch = ["main"]
sign-commit = true
sign-tag = true
push-remote = "origin"
tag-prefix = "v"
tag-name = "{{prefix}}{{version}}"
publish = true
[[package.metadata.release.pre-release-replacements]]
file = "README.md"
search = 'cirrus = "[^"]+"'
replace = 'cirrus = "{{version}}"'
min = 1
[lib]
name = "cirrus"
path = "lib.rs"
[[example]]
name = "apex_passthrough"
path = "examples/apex_passthrough.rs"
[[example]]
name = "bulk_ingest"
path = "examples/bulk_ingest.rs"
[[example]]
name = "crud_cycle"
path = "examples/crud_cycle.rs"
[[example]]
name = "simple_query"
path = "examples/simple_query.rs"
[[example]]
name = "streaming_pagination"
path = "examples/streaming_pagination.rs"
[dependencies.async-trait]
version = "0.1"
[dependencies.base64]
version = "0.22"
[dependencies.bytes]
version = "1.11"
[dependencies.camino]
version = "1.2"
[dependencies.fs-err]
version = "3.3"
[dependencies.futures]
version = "0.3"
features = ["std"]
default-features = false
[dependencies.getrandom]
version = "0.4"
[dependencies.http-serde]
version = "2.1.1"
[dependencies.httpdate]
version = "1"
[dependencies.jsonwebtoken]
version = "10.3"
features = [
"use_pem",
"aws_lc_rs",
]
default-features = false
[dependencies.reqwest]
version = "0.13"
features = [
"form",
"json",
"multipart",
"query",
"rustls",
"charset",
"system-proxy",
]
default-features = false
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.serde_urlencoded]
version = "0.7"
[dependencies.sha2]
version = "0.11"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.52"
features = [
"sync",
"time",
]
[dependencies.tracing]
version = "0.1"
features = ["std"]
default-features = false
[dependencies.url]
version = "2.5"
[dev-dependencies.dotenvy]
version = "0.15"
[dev-dependencies.proptest]
version = "1.6"
[dev-dependencies.tokio]
version = "1.52"
features = [
"macros",
"rt-multi-thread",
]
[dev-dependencies.wiremock]
version = "0.6"
[lints.clippy]
await_holding_invalid_type = "deny"
await_holding_lock = "deny"
await_holding_refcell_ref = "deny"
dbg_macro = "deny"
disallowed_methods = "deny"
disallowed_types = "deny"
expect_used = "deny"
panic = "deny"
print_stderr = "deny"
print_stdout = "deny"
todo = "deny"
unimplemented = "deny"
unwrap_used = "deny"