[workspace]
members = [
    "crates/gitbutler-analytics",
    "crates/gitbutler-core",
    "crates/gitbutler-tauri",
    "crates/gitbutler-changeset",
    "crates/gitbutler-git",
    "crates/gitbutler-watcher",
    "crates/gitbutler-testsupport",
]
resolver = "2"

[workspace.dependencies]
git2 = { version = "0.18.3", features = ["vendored-openssl", "vendored-libgit2"] }
uuid = { version = "1.8.0", features = ["serde"] }
serde = { version = "1.0", features = ["derive"] }
thiserror = "1.0.58"
rusqlite = { version = "0.29.0", features = [ "bundled", "blob" ] }
tokio = { version = "1.37.0", default-features = false }

gitbutler-git = { path = "crates/gitbutler-git" }
gitbutler-core = { path = "crates/gitbutler-core" }
gitbutler-analytics = { path = "crates/gitbutler-analytics" }
gitbutler-watcher = { path = "crates/gitbutler-watcher" }
gitbutler-testsupport = { path = "crates/gitbutler-testsupport" }

[profile.release]
codegen-units = 1 # Compile crates one after another so the compiler can optimize better
lto = true        # Enables link to optimizations
opt-level = "s"   # Optimize for binary size
debug = true      # Enable debug symbols, for sentry