Ctrl K
ComunidadGuías…

Cargo.toml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
[workspace]
members = [".", "crates/core", "desktop"]
default-members = [".", "crates/core"]
resolver = "3"

[workspace.package]
version = "2.5.0"
edition = "2024"
rust-version = "1.94"
license = "PolyForm-Noncommercial-1.0.0"

[workspace.dependencies]
anyhow = "1"
axum = { version = "0.8", features = ["ws"] }
base64 = "0.22"
chrono = { version = "0.4", features = ["serde"] }
clap = { version = "4", features = ["derive", "env"] }
cookie = "0.18"
futures-util = { version = "0.3", features = ["sink"] }
getrandom = "0.4"
hex = "0.4"
http = "1"
mime_guess = "2"
percent-encoding = "2"
regex = "1"
reqwest = { version = "0.13", default-features = false, features = ["rustls", "json", "form", "query", "gzip", "cookies", "socks", "stream"] }
reqwest-websocket = "0.6"
rust-embed = { version = "8", features = ["deterministic-timestamps"] }
scrypt = { version = "0.12", default-features = false }
semver = "1"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sha2 = "0.11"
socketioxide = { version = "0.18", features = ["extensions"] }
subtle = "2"
tempfile = "3"
thiserror = "2"
tokio = { version = "1", features = ["macros", "rt-multi-thread", "signal", "sync", "time", "net", "fs"] }
tokio-util = { version = "0.7", features = ["rt"] }
tracing = "0.1"
tracing-appender = "0.2"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
twitch_oauth2 = { version = "0.17", features = ["client"] }
tungstenite = { version = "0.28", default-features = false }
unicode-casefold = "0.2"
url = { version = "2", features = ["serde"] }


[package]
name = "twitch-drops-miner"
version.workspace = true
edition = "2024"
rust-version = "1.94"
license = "PolyForm-Noncommercial-1.0.0"
description = "A self-hosted Twitch Drops miner with a React dashboard"
repository = "https://github.com/ohne-b/twitch-drops-miner"
default-run = "twitch-drops-miner"

[features]
dashboard-fixture = ["twitch-drops-miner-core/dashboard-fixture"]

[[bin]]
name = "twitch-drops-miner"
path = "src/main.rs"

[[bin]]
name = "dashboard-fixture"
path = "src/bin/dashboard-fixture.rs"
required-features = ["dashboard-fixture"]

[dependencies]
twitch-drops-miner-core = { path = "crates/core" }
anyhow.workspace = true
axum.workspace = true
base64.workspace = true
chrono.workspace = true
clap.workspace = true
cookie.workspace = true
futures-util.workspace = true
getrandom.workspace = true
hex.workspace = true
http.workspace = true
mime_guess.workspace = true
reqwest.workspace = true
reqwest-websocket.workspace = true
rust-embed.workspace = true
scrypt.workspace = true
semver.workspace = true
serde.workspace = true
serde_json.workspace = true
sha2.workspace = true
socketioxide.workspace = true
subtle.workspace = true
tempfile.workspace = true
thiserror.workspace = true
tokio.workspace = true
tokio-util.workspace = true
tracing.workspace = true
url.workspace = true

[dev-dependencies]
http-body-util = "0.1"
tokio = { version = "1", features = ["test-util"] }
tower = { version = "0.5", features = ["util"] }
wiremock = "0.6"

[profile.release]
strip = true
lto = "thin"

# Keep the production password cost usable in development and browser tests too.
[profile.dev.package.scrypt]
opt-level = 3

[profile.dev.package.salsa20]
opt-level = 3

[lints.rust]
unsafe_code = "forbid"