[package]
edition = "2021"
rust-version = "1.56"
name = "rspotify"
version = "0.16.1"
authors = [
"Ramsay Leung <ramsayleung@gmail.com>",
"Mario Ortiz Manero <marioortizmanero@gmail.com>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Spotify API wrapper"
homepage = "https://github.com/ramsayleung/rspotify"
readme = "README.md"
keywords = [
"spotify",
"api",
]
categories = [
"api-bindings",
"multimedia::audio",
]
license = "MIT"
repository = "https://github.com/ramsayleung/rspotify"
[package.metadata.docs.rs]
features = [
"cli",
"env-file",
"client-ureq",
]
no-default-features = true
[features]
__async = [
"futures",
"async-stream",
"async-trait",
]
__sync = ["maybe-async/is_sync"]
cli = ["webbrowser"]
client-reqwest = [
"rspotify-http/client-reqwest",
"__async",
]
client-ureq = [
"rspotify-http/client-ureq",
"__sync",
]
default = [
"client-reqwest",
"reqwest-default-tls",
]
env-file = ["dotenvy"]
reqwest-default-tls = ["rspotify-http/reqwest-default-tls"]
reqwest-middleware = ["rspotify-http/reqwest-middleware"]
reqwest-native-tls = ["rspotify-http/reqwest-native-tls"]
reqwest-native-tls-vendored = ["rspotify-http/reqwest-native-tls-vendored"]
reqwest-rustls-tls = ["rspotify-http/reqwest-rustls-tls"]
ureq-native-tls = ["rspotify-http/ureq-native-tls"]
ureq-rustls-tls = ["rspotify-http/ureq-rustls-tls"]
ureq-rustls-tls-native-certs = ["rspotify-http/ureq-rustls-tls-native-certs"]
[lib]
name = "rspotify"
path = "src/lib.rs"
[[example]]
name = "auth_code"
path = "examples/auth_code.rs"
required-features = [
"env-file",
"cli",
"client-reqwest",
]
[[example]]
name = "auth_code_pkce"
path = "examples/auth_code_pkce.rs"
required-features = [
"env-file",
"cli",
"client-reqwest",
]
[[example]]
name = "client_creds"
path = "examples/client_creds.rs"
required-features = [
"env-file",
"client-reqwest",
]
[[example]]
name = "device"
path = "examples/ureq/device.rs"
required-features = [
"env-file",
"cli",
"client-ureq",
]
[[example]]
name = "me"
path = "examples/ureq/me.rs"
required-features = [
"env-file",
"cli",
"client-ureq",
]
[[example]]
name = "oauth_tokens"
path = "examples/oauth_tokens.rs"
required-features = [
"env-file",
"cli",
"client-reqwest",
]
[[example]]
name = "pagination_async"
path = "examples/pagination_async.rs"
required-features = [
"env-file",
"cli",
"client-reqwest",
]
[[example]]
name = "pagination_manual"
path = "examples/pagination_manual.rs"
required-features = [
"env-file",
"cli",
"client-reqwest",
]
[[example]]
name = "pagination_sync"
path = "examples/pagination_sync.rs"
required-features = [
"env-file",
"cli",
"client-ureq",
]
[[example]]
name = "search"
path = "examples/ureq/search.rs"
required-features = [
"env-file",
"client-ureq",
]
[[example]]
name = "seek_track"
path = "examples/ureq/seek_track.rs"
required-features = [
"env-file",
"cli",
"client-ureq",
]
[[example]]
name = "tasks"
path = "examples/tasks.rs"
required-features = [
"env-file",
"client-reqwest",
]
[[example]]
name = "threading"
path = "examples/ureq/threading.rs"
required-features = [
"env-file",
"client-ureq",
]
[[example]]
name = "with_auto_reauth"
path = "examples/with_auto_reauth.rs"
required-features = [
"env-file",
"cli",
"client-reqwest",
]
[[example]]
name = "with_refresh_token"
path = "examples/with_refresh_token.rs"
required-features = [
"env-file",
"cli",
"client-reqwest",
]
[[example]]
name = "with_token_callback_fn"
path = "examples/with_token_callback_fn.rs"
required-features = [
"env-file",
"cli",
"client-reqwest",
]
[[test]]
name = "test_enums"
path = "tests/test_enums.rs"
[[test]]
name = "test_models"
path = "tests/test_models.rs"
[[test]]
name = "test_oauth2"
path = "tests/test_oauth2.rs"
[[test]]
name = "test_with_credential"
path = "tests/test_with_credential.rs"
[[test]]
name = "test_with_oauth"
path = "tests/test_with_oauth.rs"
[[test]]
name = "util"
path = "tests/util.rs"
[dependencies.async-stream]
version = "0.3.2"
optional = true
[dependencies.async-trait]
version = "0.1.51"
optional = true
[dependencies.base64]
version = "0.22.0"
[dependencies.chrono]
version = "0.4.35"
features = ["serde"]
[dependencies.dotenvy]
version = "0.15.0"
optional = true
[dependencies.futures]
version = "0.3.17"
optional = true
[dependencies.log]
version = "0.4.14"
[dependencies.maybe-async]
version = "0.2.6"
[dependencies.rspotify-http]
version = "0.16.1"
default-features = false
[dependencies.rspotify-macros]
version = "0.16.1"
[dependencies.rspotify-model]
version = "0.16.1"
[dependencies.serde]
version = "1.0.130"
default-features = false
[dependencies.serde_json]
version = "1.0.67"
[dependencies.sha2]
version = "0.10.0"
[dependencies.thiserror]
version = "2.0.9"
[dependencies.url]
version = "2.2.2"
[dependencies.webbrowser]
version = "1.0.0"
optional = true
[dev-dependencies.env_logger]
version = "0.11.0"
default-features = false
[dev-dependencies.futures-util]
version = "0.3.17"
[dev-dependencies.wasm-bindgen-test]
version = "0.3.54"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.getrandom]
version = "0.3.4"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.tokio]
version = "1.11.0"
features = [
"rt-multi-thread",
"macros",
]
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.4.2"
features = ["wasm_js"]
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.dotenvy_macro]
version = "0.15.7"
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.tokio]
version = "1.11.0"
features = [
"rt",
"macros",
]