[package] name = "gitbutler" version = "0.0.0" edition = "2021" rust-version = "1.57" [lib] name = "gblib" path = "src/lib.rs" [[bin]] name = "gitbutler" path = "src/bin.rs" [build-dependencies] tauri-build = { version = "1.5", features = [] } [dev-dependencies] once_cell = "1.0" pretty_assertions = "1.4" tempfile = "3.8" [dependencies] anyhow = "1.0.72" async-trait = "0.1.74" backoff = "0.4.0" bstr = "1.7.0" byteorder = "1.4.3" chrono = { version = "0.4.29", features = ["serde"] } console-subscriber = "0.2.0" diffy = "0.3.0" filetime = "0.2.22" futures = "0.3" git2 = { version = "0.18.1", features = ["vendored-openssl", "vendored-libgit2"] } itertools = "0.11" md5 = "0.7.0" notify = { version = "6.0.1" } num_cpus = "1.16.0" r2d2 = "0.8.10" r2d2_sqlite = "0.22.0" rand = "0.8.5" refinery = { version = "0.8", features = [ "rusqlite" ] } reqwest = "0.11.22" resolve-path = "0.1.0" rusqlite = { version = "0.29.0", features = [ "bundled", "blob" ] } rustix = "0.38" sentry = { version = "0.31", features = ["backtrace", "contexts", "panic", "transport", "anyhow", "debug-images", "reqwest", "native-tls" ] } sentry-tracing = "0.31.7" serde = { version = "1.0", features = ["derive"] } serde-jsonlines = "0.4.0" serde_json = { version = "1.0", features = [ "std", "arbitrary_precision" ] } sha1 = "0.10.6" sha2 = "0.10.8" similar = { version = "2.2.1", features = ["unicode"] } slug = "0.1.4" ssh-key = { version = "0.6.2", features = [ "alloc", "ed25519" ] } tauri = { version = "1.5.2", features = ["dialog-open", "fs-read-file", "path-all", "process-relaunch", "protocol-asset", "shell-open", "system-tray", "window-maximize", "window-start-dragging", "window-unmaximize"] } tauri-plugin-context-menu = { git = "https://github.com/gitbutlerapp/tauri-plugin-context-menu", branch = "main" } tauri-plugin-single-instance = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v1" } tauri-plugin-window-state = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v1" } thiserror = "1.0.44" tokio = { version = "1.33.0", features = [ "full", "sync", "tracing" ] } tokio-util = "0.7.9" tracing = "0.1.37" tracing-appender = "0.2.2" tracing-subscriber = "0.3.17" url = "2.4" urlencoding = "2.1.3" uuid = "1.4.1" walkdir = "2.3.2" zip = "0.6.5" [features] # by default Tauri runs in production mode # when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is an URL default = ["custom-protocol"] # enabled debug logging debug = [] # this feature enables devtools devtools = ["tauri/devtools"] # this feature is used used for production builds where `devPath` points to the filesystem # DO NOT remove this custom-protocol = ["tauri/custom-protocol"]