gitbutler/Cargo.toml
2024-10-08 15:27:16 +02:00

106 lines
4.1 KiB
TOML

[workspace]
members = [
"crates/gitbutler-tauri",
"crates/gitbutler-git",
"crates/gitbutler-watcher",
"crates/gitbutler-watcher/vendor/debouncer",
"crates/gitbutler-testsupport",
"crates/gitbutler-cli",
"crates/gitbutler-branch-actions",
"crates/gitbutler-sync",
"crates/gitbutler-oplog",
"crates/gitbutler-repo",
"crates/gitbutler-command-context",
"crates/gitbutler-feedback",
"crates/gitbutler-config",
"crates/gitbutler-project",
"crates/gitbutler-user",
"crates/gitbutler-branch",
"crates/gitbutler-reference",
"crates/gitbutler-error",
"crates/gitbutler-serde",
"crates/gitbutler-secret",
"crates/gitbutler-id",
"crates/gitbutler-storage",
"crates/gitbutler-fs",
"crates/gitbutler-time",
"crates/gitbutler-commit",
"crates/gitbutler-tagged-string",
"crates/gitbutler-url",
"crates/gitbutler-diff",
"crates/gitbutler-operating-modes",
"crates/gitbutler-edit-mode",
"crates/gitbutler-cherry-pick",
"crates/gitbutler-oxidize",
"crates/gitbutler-stack-api",
"crates/gitbutler-stack",
"crates/gitbutler-patch-reference",
]
resolver = "2"
[workspace.dependencies]
bstr = "1.10.0"
# Add the `tracing` or `tracing-detail` features to see more of gitoxide in the logs. Useful to see which programs it invokes.
gix = { git = "https://github.com/Byron/gitoxide", rev = "72daa46bad9d397ef2cc48a3cffda23f414ccd8a", default-features = false, features = [
] }
git2 = { version = "0.19.0", features = [
"vendored-openssl",
"vendored-libgit2",
] }
uuid = { version = "1.8.0", features = ["serde"] }
serde = { version = "1.0", features = ["derive"] }
thiserror = "1.0.64"
tokio = { version = "1.40.0", default-features = false }
keyring = "2.3.3"
anyhow = "1.0.86"
parking_lot = "0.12.3"
futures = "0.3.30"
toml = "0.8.13"
tracing = "0.1.40"
tracing-subscriber = "0.3.17"
gitbutler-id = { path = "crates/gitbutler-id" }
gitbutler-git = { path = "crates/gitbutler-git" }
gitbutler-watcher = { path = "crates/gitbutler-watcher" }
gitbutler-testsupport = { path = "crates/gitbutler-testsupport" }
gitbutler-cli = { path = "crates/gitbutler-cli" }
gitbutler-branch-actions = { path = "crates/gitbutler-branch-actions" }
gitbutler-sync = { path = "crates/gitbutler-sync" }
gitbutler-oplog = { path = "crates/gitbutler-oplog" }
gitbutler-repo = { path = "crates/gitbutler-repo" }
gitbutler-command-context = { path = "crates/gitbutler-command-context" }
gitbutler-feedback = { path = "crates/gitbutler-feedback" }
gitbutler-config = { path = "crates/gitbutler-config" }
gitbutler-project = { path = "crates/gitbutler-project" }
gitbutler-user = { path = "crates/gitbutler-user" }
gitbutler-branch = { path = "crates/gitbutler-branch" }
gitbutler-reference = { path = "crates/gitbutler-reference" }
gitbutler-error = { path = "crates/gitbutler-error" }
gitbutler-serde = { path = "crates/gitbutler-serde" }
gitbutler-secret = { path = "crates/gitbutler-secret" }
gitbutler-storage = { path = "crates/gitbutler-storage" }
gitbutler-fs = { path = "crates/gitbutler-fs" }
gitbutler-time = { path = "crates/gitbutler-time" }
gitbutler-commit = { path = "crates/gitbutler-commit" }
gitbutler-tagged-string = { path = "crates/gitbutler-tagged-string" }
gitbutler-url = { path = "crates/gitbutler-url" }
gitbutler-diff = { path = "crates/gitbutler-diff" }
gitbutler-operating-modes = { path = "crates/gitbutler-operating-modes" }
gitbutler-edit-mode = { path = "crates/gitbutler-edit-mode" }
gitbutler-cherry-pick = { path = "crates/gitbutler-cherry-pick" }
gitbutler-oxidize = { path = "crates/gitbutler-oxidize" }
gitbutler-stack-api = { path = "crates/gitbutler-stack-api" }
gitbutler-stack = { path = "crates/gitbutler-stack" }
gitbutler-patch-reference = { path = "crates/gitbutler-patch-reference" }
[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 profiling
[profile.bench]
codegen-units = 256
lto = false
opt-level = 3