[package]
name = "azalea-client"
description = "A headless Minecraft client."
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true

[dependencies]
async-compat.workspace = true
azalea-auth.workspace = true
azalea-block.workspace = true
azalea-buf.workspace = true
azalea-chat.workspace = true
azalea-core.workspace = true
azalea-crypto.workspace = true
azalea-entity.workspace = true
azalea-inventory.workspace = true
azalea-physics.workspace = true
azalea-protocol = { workspace = true, features = ["connecting", "bevy_ecs"] }
azalea-registry.workspace = true
azalea-world.workspace = true
bevy_app.workspace = true
bevy_ecs.workspace = true
bevy_log = { workspace = true, optional = true }
bevy_tasks.workspace = true
bevy_time.workspace = true
chrono = { workspace = true, features = ["now"] }
derive_more = { workspace = true, features = ["deref", "deref_mut"] }
indexmap.workspace = true
minecraft_folder_path.workspace = true
parking_lot.workspace = true
regex.workspace = true
reqwest = { workspace = true, optional = true, features = ["socks"] }
simdnbt.workspace = true
thiserror.workspace = true
tokio = { workspace = true, features = ["sync"] }
tracing.workspace = true
uuid.workspace = true
# TODO: this is here to make bevy show system names in conflict warnings.
# in bevy 0.18, we should be able to just enable the debug feature on bevy_ecs instead.
bevy_utils = { workspace = true, features = ["debug"] }

[dev-dependencies]
eyre.workspace = true

[features]
default = ["log", "packet-event", "online-mode"]
# enables bevy_log::LogPlugin by default
log = ["bevy_log"]
packet-event = []
online-mode = [
    "azalea-auth/online-mode",
    "azalea-protocol/online-mode",
    "dep:reqwest",
]

[lints]
workspace = true
