[package]
name = "cognite-sdk"
version = "0.6.2"
authors = [
  "Einar Marstrander Omang <einar.omang@cognite.com>",
  "Haakon Garseg Mørk <haakon.mork@cognite.com>",
  "Niek Beckers <niek.beckers@cognite.com>",
]
homepage = "https://github.com/cognitedata/cognite-sdk-rust"
repository = "https://github.com/cognitedata/cognite-sdk-rust"
description = "SDK for the Cognite Data Fusion API"
license = "Apache-2.0"
edition = "2021"
publish = true
documentation = "https://docs.rs/cognite-sdk/"
readme = "README.md"
categories = ["api-bindings"]

[lib]
name = "cognite"

[lints]
workspace = true

[features]
default = []
integration_tests = []

[dependencies]
async-trait = "^0.1"
bytes = "^1"
derivative = "^2"
futures = "^0.3"
futures-locks = "^0.7"
futures-timer = "^3"
prost = "^0.14"
prost-types = "^0.14"

http = {"version" = "^1" }
reqwest = { version = "^0.12", features = [
  "gzip",
  "json",
  "multipart",
  "rustls-tls-native-roots",
  "stream",
], default-features = false } # Default brings in openssl
reqwest-middleware = { version = "^0.4.1" }


anyhow = "^1"
rand = "^0.10.0"
serde = { version = "^1", features = ["derive"] }
serde_json = "^1"
serde_with = "^3"
thiserror = "^2"
tokio-util = { version = "^0.7", default-features = false, features = [
  "codec",
  "io",
] }
pin-project = "1.1.10"

[target.'cfg(target_arch = "wasm32")'.dependencies]
getrandom = { version = "0.4", features = ["wasm_js"] }
tokio = { version = "^1.38.2", default-features = false }
tokio-util = { version = "0.7.10", features = ["rt"] }

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tokio = { version = "^1.38.2", default-features = false, features = ["fs"] }

[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]
tokio = { version = "1.38.2", features = ["macros", "rt-multi-thread"] }
wiremock = "0.6.0"

[dev-dependencies]
futures = "^0.3"
uuid = { version = "1.10.0", features = ["v4"] }
wiremock = "0.6.0"
