twitch_api2 0.5.0

Library for talking with the new Twitch API aka. "Helix", TMI and more!
Documentation
[package]
name = "twitch_api2"
version = "0.5.0"
authors = ["Emil Gardström <emil.gardstrom@gmail.com>"]
edition = "2018"
repository = "https://github.com/Emilgardis/twitch_api2"
license = "MIT OR Apache-2.0"
description = "Library for talking with the new Twitch API aka. \"Helix\", TMI and more!"
keywords = ["oauth", "twitch", "async", "asynchronous", "api"]
documentation = "https://docs.rs/twitch_api2/0.5.0"
readme = "README.md"
build = "build.rs"
resolver = "2"

[dependencies]
thiserror = "1.0.24"
displaydoc = "0.2.1"
http = "0.2.4"
typed-builder = { version = "0.9.0", optional = true }
url = { version = "2.2.2", optional = true }
twitch_oauth2 = { version = "0.5.0", optional = true, path = "twitch_oauth2/" }
serde = { version = "1.0.125", features = ["derive"] }
serde_derive = "1.0.125"
serde_path_to_error = { version = "0.1.4", optional = true }
async-trait = { version = "0.1.50", optional = true }
serde_json = { version = "1.0.64", optional = true }
serde_repr = "0.1.6"
reqwest = { version = "0.11.3", optional = true, default-features = false }
surf = { version = "2.2.0", optional = true, default-features = false }
http-types = { version = "2.11.1", optional = true, features = ["hyperium_http"] }
sha2 = { version = "0.9.4", optional = true }
crypto_hmac = { package = "hmac", version = "0.11.0", optional = true }

[features]
default = []

client = ["twitch_oauth2"]

unsupported = []
deny_unknown_fields = []

helix = [
    "url",
    "async-trait",
    "serde_json",
    "serde_path_to_error",
    "typed-builder",
]

tmi = ["serde_json"]

surf_client = [
    "surf",
    "url",
    "http-types",
    "client",
    "twitch_oauth2/surf_client",
]

reqwest_client = ["reqwest", "client", "twitch_oauth2/reqwest_client"]

pubsub = ["serde_json"]

eventsub = ["serde_json"]

hmac = ["crypto_hmac", "sha2"]

all = [
    "tmi",
    "helix",
    "surf_client",
    "reqwest_client",
    "client",
    "pubsub",
    "eventsub",
    "hmac",
    "twitch_oauth2/all",
]

[dev-dependencies]
tokio = { version = "1.5.0", features = ["rt-multi-thread", "macros"] }
dotenv = "0.15.0"
futures = "0.3.14"
serde_cbor = "0.11.1"
serde_json = "1.0.64"
surf = "2.2.0"
reqwest = "0.11.3"


[build-dependencies]
version_check = "0.9.3"


[[example]]
name = "automod_check"
path = "examples/automod_check.rs"
required-features = ["surf_client", "helix"]

[[example]]
name = "get_channel_status"
path = "examples/get_channel_status.rs"
required-features = ["reqwest_client", "helix", "tmi"]

[[example]]
name = "get_hosts"
path = "examples/get_hosts.rs"
required-features = ["surf_client", "tmi"]

[[example]]
name = "get_moderation"
path = "examples/get_moderation.rs"
required-features = ["surf_client", "helix"]

[[example]]
name = "get_streams_and_chatters"
path = "examples/get_streams_and_chatters.rs"
required-features = ["surf_client", "tmi"]

[[example]]
name = "modify_channel"
path = "examples/modify_channel.rs"
required-features = ["surf_client", "helix"]

[[example]]
name = "client"
path = "examples/client.rs"
required-features = ["reqwest_client", "helix"]

[[example]]
name = "create_follower"
path = "examples/create_follower.rs"
required-features = ["surf_client", "helix"]

[[example]]
name = "channel_information"
path = "examples/channel_information.rs"
required-features = ["reqwest_client", "helix"]

[[example]]
name = "followed_streams"
path = "examples/followed_streams.rs"
required-features = ["reqwest_client", "helix"]

[package.metadata.docs.rs]
features = ["all", "unsupported"]