[package]
edition = "2021"
name = "firn"
version = "0.15.0"
authors = [
"Andrew Korzhuev <korzhuev@andrusha.me>",
"Will Eaton <me@wseaton.com>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "snowflake-rs fork: cancellation, async, streaming, multi-statement, bind params, structured types, retry middleware"
documentation = "https://docs.rs/firn/"
readme = "README.md"
keywords = [
"snowflake",
"database",
"api",
"arrow",
"fork",
]
categories = [
"api-bindings",
"database",
]
license = "Apache-2.0"
repository = "https://github.com/wseaton/firn"
[features]
all = [
"cert-auth",
"polars",
"browser-auth",
]
browser-auth = [
"dep:getrandom",
"dep:urlencoding",
"dep:open",
]
cert-auth = ["dep:snowflake-jwt"]
default = ["cert-auth"]
polars = [
"dep:polars-core",
"dep:polars-io",
]
[lib]
name = "firn"
path = "src/lib.rs"
[[example]]
name = "cancel_by_id"
path = "examples/cancel_by_id.rs"
[[example]]
name = "cancel_by_query_id"
path = "examples/cancel_by_query_id.rs"
[[example]]
name = "cancel_query"
path = "examples/cancel_query.rs"
[[example]]
name = "compound_types"
path = "examples/compound_types.rs"
[[example]]
name = "describe_query"
path = "examples/describe_query.rs"
[[example]]
name = "filetransfer"
path = "examples/filetransfer.rs"
[[example]]
name = "keep_alive"
path = "examples/keep_alive.rs"
[[example]]
name = "multi_statement"
path = "examples/multi_statement.rs"
[[example]]
name = "parallel_queries"
path = "examples/parallel_queries.rs"
[[example]]
name = "query_by_id"
path = "examples/query_by_id.rs"
[[example]]
name = "run_sql"
path = "examples/run_sql.rs"
[[example]]
name = "run_sql_bound"
path = "examples/run_sql_bound.rs"
[[example]]
name = "run_sql_long_running"
path = "examples/run_sql_long_running.rs"
[[example]]
name = "session_params"
path = "examples/session_params.rs"
[[example]]
name = "streaming"
path = "examples/streaming.rs"
[dependencies.arc-swap]
version = "1"
[dependencies.arrow-array]
version = "58"
[dependencies.arrow-ipc]
version = "58"
[dependencies.arrow-schema]
version = "58"
[dependencies.async-trait]
version = "0.1"
[dependencies.base64]
version = "0.22"
[dependencies.bytes]
version = "1"
[dependencies.futures]
version = "0.3"
[dependencies.getrandom]
version = "0.4"
optional = true
[dependencies.glob]
version = "0.3"
[dependencies.http]
version = "1"
[dependencies.log]
version = "0.4"
[dependencies.object_store]
version = "0.13"
features = ["aws"]
[dependencies.open]
version = "5"
optional = true
[dependencies.polars-core]
version = ">=0.41"
optional = true
[dependencies.polars-io]
version = ">=0.41"
features = [
"json",
"ipc_streaming",
]
optional = true
[dependencies.regex]
version = "1"
[dependencies.reqwest]
version = "0.13"
features = [
"gzip",
"json",
"rustls",
]
default-features = false
[dependencies.reqwest-middleware]
version = "0.5"
features = ["json"]
[dependencies.reqwest-retry]
version = "0.9"
[dependencies.secrecy]
version = "0.10"
features = ["serde"]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.snowflake-jwt]
version = "0.3"
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
]
[dependencies.tokio-util]
version = "0.7"
default-features = false
[dependencies.url]
version = "2"
[dependencies.urlencoding]
version = "2"
optional = true
[dependencies.uuid]
version = "1"
features = ["v4"]
[dev-dependencies.anyhow]
version = "1"
[dev-dependencies.arrow]
version = "58"
features = ["prettyprint"]
[dev-dependencies.clap]
version = "4"
features = ["derive"]
[dev-dependencies.dotenvy]
version = "0.15"
[dev-dependencies.pretty_env_logger]
version = "0.5"
[dev-dependencies.tokio]
version = "1.35"
features = [
"macros",
"rt-multi-thread",
]
[dev-dependencies.wiremock]
version = "0.6"