[workspace]
package.version = "0.1.2"
package.edition = "2024"
package.license = "MIT OR Apache-2.0"
package.repository = "https://github.com/tirbofish/dropbear"
package.readme = "README.md"
package.authors = ["Thribhu K <4tkbytes@pm.me>"]

resolver = "3"
members = [
    "crates/*",
]

[workspace.dependencies]
anyhow = { version = "1.0", features = ["backtrace"] }
app_dirs2 = "2.5"
bytemuck = { version = "1.24", features = ["derive"] }
chrono = "0.4"
clap = { version = "4.5", features = ["derive"] }
colored = "3.0"
crossbeam-channel = "0.5"
dropbear-engine = { path = "crates/dropbear-engine" }

egui = "0.34"
egui-toast = { version = "0.20" }
egui-wgpu = { version = "0.34" }
egui-winit = { version = "0.34" }
egui_dnd = "0.15"
#egui_dock = { version = "0.18", features = ["serde"] }
egui_dock = { git = "https://github.com/enomado/egui_dock", branch = "update-egui-0.34", features = ["serde"]}
egui_extras = { version = "0.34", features = ["all_loaders"] }
egui_ltreeview = { git = "https://github.com/LennysLounge/egui_ltreeview", features = ["doc"] }
egui_plot = "0.35"
transform-gizmo-egui = { version = "0.9" }

env_logger = "0.11"
futures = "0.3"
gilrs = "0.11"
git2 = { version = "0.20", features = ["vendored-openssl"] }
glam = { version = "0.30", features = ["serde", "mint", "bytemuck", "rkyv", "bytecheck"] } # required to be at 0.30 because of rapier3d not being updated yet
hecs = { version = "0.11", features = ["serde"] }
log = "0.4"
log-once = "0.4"
#model_to_image = "0.1"
once_cell = "1.21"
parking_lot = {version = "0.12", features = ["deadlock_detection"] }
rfd = "0.17"
ron = "0.12"
serde = { version = "1.0", features = ["derive"] }
spin_sleep = "1.3"
tokio = { version = "1", features = ["full"] }
wgpu = "29"
winit = { version = "0.30", features = [] }
zip = "8.4"
walkdir = "2.5"
rayon = "1.11"
backtrace = "0.3"
gltf = "1"
os_info = "3.12"
rustc_version_runtime = "0.3"
jni = { version = "0.22", features = ["invocation"] }
tree-sitter = "0.22" # must be kept as 0.22 because tree-sitter-kotlin has not been updated
tree-sitter-kotlin = "0.3"
libloading = "0.9"
indexmap = "2.11"
sha2 = "0.11"
wesl = { version = "0.3", features = ["package"] }
dashmap = "6.1"
open = "5.3"
memory-stats = "1.2"
typetag = "0.2"
syn = { version = "2.0", features = ["full"] }
quote = "1.0"
proc-macro2 = "1.0"

dyn-hash = "1.0"
semver = { version = "1.0", features = ["serde"] }
rapier3d = { version = "0.32", features = [ "simd-stable", "serde-serialize" ] }
cbindgen = { version = "0.29.2" }
postcard = { version = "1.1", features = ["use-std"]}
pollster = "0.4"
thiserror = "2.0"
tempfile = "3.24"
combine = "4.6"
glyphon = { git = "https://github.com/grovesNL/glyphon" }
puffin = "0.20"
bitflags = "2.10"
features = "0.10"
puffin_http = "0.17"
dyn-clone = "1.0"
downcast-rs = "2.0"
float-derive = "0.1"
rkyv = "0.8"
bevy_mikktspace = "1.0.0"
naga = { version = "29", features = ["wgsl-in"] }
uuid = { version = "1.22", features = ["v4", "serde"] }
splines = "5.0"

notify = "9.0.0-rc.2"
arc-swap = "1.9"

[patch.crates-io]
egui = { git = "https://github.com/emilk/egui", branch = "main" }
emath = { git = "https://github.com/emilk/egui", branch = "main" }
epaint = { git = "https://github.com/emilk/egui", branch = "main" }
ecolor = { git = "https://github.com/emilk/egui", branch = "main" }

[workspace.dependencies.image]
version = "0.25"
default-features = false
features = ["png", "jpeg", "hdr"]

[profile.dev]
opt-level = 1
debug = true
codegen-units = 256
incremental = true
lto = false

# makes the debug builds so much more faster
[profile.dev.package."*"]
opt-level = 3
codegen-units = 1
