[package]
name = "ig-client"
version = "0.7.10"
edition = "2024"
authors = ["Joaquin Bejar <jb@taunais.com>"]
description = "This crate provides a client for the IG Markets API"
license = "MIT"
readme = "README.md"
repository = "https://github.com/joaquinbejar/ig-client"
homepage = "https://github.com/joaquinbejar/ig-client"
keywords = ["finance", "ohlc", "tick", "trading"]
categories = ["finance", "data-structures"]

include = [
    "benches/**/*",
    "src/**/*",
    "Cargo.toml",
    "README.md",
    "LICENSE",
    "examples/**/*",
    "tests/**/*",
    "Makefile",
    "rust-toolchain.toml",
    "Draws/**/*",
    "Docker/**/*",
]

[dependencies]
tokio = { workspace = true}
chrono = { workspace = true}
tracing = { workspace = true}
tracing-subscriber = { workspace = true}
serde = { workspace = true}
serde_json = { workspace = true}
reqwest ={ workspace = true}
criterion = { workspace = true}
sqlx = { workspace = true}
async-trait = { workspace = true}
regex = { workspace = true}
dotenv = { workspace = true}
lightstreamer-rs = { workspace = true}
lazy_static = { workspace = true}
nanoid = { workspace = true}
pretty-simple-display = { workspace = true}
governor = { workspace = true}
prettytable-rs = { workspace = true}
futures = { workspace = true}

[dev-dependencies]


[[test]]
name = "unit_tests"
path = "tests/unit/mod.rs"

[[test]]
name = "integration_tests"
path = "tests/integration/mod.rs"

[lib]
name = "ig_client"
path = "src/lib.rs"

[[bench]]
name = "benchmarks"
harness = false
path = "benches/benchmarks.rs"

[workspace]
members = [
    "examples/chart",
    "examples/market",
    "examples/orders",
    "examples/trade",
    "examples/prices",
    "examples/transactions",
    "examples/positions",
    "examples/other",
    "examples/simples",
    "examples/streaming",
]

[workspace.dependencies]
ig-client=  { path = "." }
tokio = { version = "1.48", features = ["rt", "rt-multi-thread", "macros", "time", "signal"] }
chrono = { version = "0.4", features = ["serde"] }
tracing = "0.1"
tracing-subscriber = "0.3"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
reqwest = { version = "0.12", features = ["json"] }
criterion = "0.8"
sqlx = { version = "0.8", features = [ "postgres","macros","chrono","runtime-tokio-native-tls"]}
async-trait = "0.1"
regex = "1.12"
dotenv = "0.15"
lightstreamer-rs = "0.2"
lazy_static = "1.5"
nanoid = "0.4"
pretty-simple-display = "0.1"
governor = "0.10"
prettytable-rs = "0.10"
futures = "0.3"