[package]
edition = "2024"
name = "sf-api"
version = "0.4.1"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A simple API to send commands to the Shakes & Fidget servers and parse their responses into characters"
readme = "README.md"
license = "MIT"
repository = "https://github.com/the-marenga/sf-api"
[features]
default = [
"sso",
"serde",
"simulation",
]
serde = [
"dep:serde",
"num-bigint/serde",
"chrono/serde",
"enum-map/serde",
]
session = [
"dep:reqwest",
"dep:tokio",
"dep:url",
]
simulation = []
sso = [
"session",
"dep:serde",
"dep:serde_json",
]
[lib]
name = "sf_api"
path = "src/lib.rs"
[[example]]
name = "cached_testing"
path = "examples/cached_testing.rs"
[[example]]
name = "dungeons"
path = "examples/dungeons.rs"
[[example]]
name = "expedition"
path = "examples/expedition.rs"
[[example]]
name = "gamble"
path = "examples/gamble.rs"
[[example]]
name = "hellevator"
path = "examples/hellevator.rs"
[[example]]
name = "questing"
path = "examples/questing.rs"
[[test]]
name = "battle_simulation"
path = "tests/battle_simulation.rs"
[[bench]]
name = "battle_benchmark"
path = "benches/battle_benchmark.rs"
harness = false
[dependencies.base64]
version = "0.22"
[dependencies.chrono]
version = "0.4"
[dependencies.enum-map]
version = "2.7"
[dependencies.fastrand]
version = "2.3"
[dependencies.log]
version = "0.4"
[dependencies.num-bigint]
version = "0.4"
[dependencies.num-derive]
version = "0.4"
[dependencies.num-traits]
version = "0.2"
[dependencies.ouroboros]
version = "0.18"
[dependencies.reqwest]
version = "0.13"
features = [
"gzip",
"deflate",
"form",
]
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
optional = true
[dependencies.serde_json]
version = "1.0"
optional = true
[dependencies.sha1]
version = "0.11"
[dependencies.strum]
version = "0.28"
features = [
"strum_macros",
"derive",
]
[dependencies.thiserror]
version = "2.0.18"
[dependencies.tokio]
version = "1.51"
features = [
"sync",
"time",
]
optional = true
[dependencies.url]
version = "2.5"
optional = true
[dev-dependencies.clap]
version = "4.6"
features = [
"derive",
"env",
]
[dev-dependencies.criterion]
version = "0.8"
[dev-dependencies.enum-map]
version = "2.7"
[dev-dependencies.env_logger]
version = "0.11.10"
[dev-dependencies.regex]
version = "1.12.3"
[dev-dependencies.rstest]
version = "0.26.1"
[dev-dependencies.tokio]
version = "1.51"
features = ["full"]
[build-dependencies.serde]
version = "1.0"
features = ["derive"]
[build-dependencies.serde_json]
version = "1.0"
[profile.bench]
debug = 2