diff --git a/Cargo.toml b/Cargo.toml index 34d2a11a..0bf5d0b9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,6 +18,7 @@ members = [ "clipcat-notify", "clipcatctl", "clipcatd", + "crates/base", "crates/cli", "crates/client", @@ -29,6 +30,96 @@ members = [ "crates/server", ] +[workspace.dependencies] +tracing = "0.1" +tracing-journald = "0.3" +tracing-subscriber = "0.3" + +bincode = "1" +http-serde = "2" +serde = { version = "1", features = ["derive"] } +serde_json = "1" +serde_with = "3" +toml = "0.8" + +async-trait = "0.1" +futures = "0.3" +sigfinn = "0.2" +tokio = { version = "1", features = [ + "fs", + "macros", + "rt-multi-thread", + "sync", +] } +tokio-stream = { version = "0.1", features = ["net"] } + +arboard = { version = "3", default-features = false, features = [ + "image-data", + "wayland-data-control", +] } + +axum = "0.7" +tower = { version = "0.4", features = ["timeout"] } +tower-http = { version = "0.5", features = ["trace"] } +hyper-util = "0.1" + +prost = "0.13" +prost-build = "0.13" +prost-types = "0.13" +tonic = { version = "0.12", features = ["gzip"] } +tonic-build = { version = "0.12", default-features = false, features = [ + "prost", + "transport", +] } + +zbus = { version = "4", default-features = false, features = ["tokio"] } +zvariant = "4" + +bytes = "1" +clap = { version = "4", features = ["derive", "env"] } +clap_complete = "4" +daemonize = "0.5" +directories = "5" +exitcode = "1" +hex = "0.4" +http = "1" +humansize = "2" +image = "0.25" +libc = "0.2" +linicon = "2" +mime = "0.3" +mio = { version = "1.0", features = ["os-ext"] } +notify = "6" +notify-rust = "4" +once_cell = "1" +parking_lot = "0.12" +prometheus = "0.13" +regex = "1" +resolve-path = "0.1" +semver = "1" +sha2 = "0.10" +shadow-rs = "0.29" +simdutf8 = "0.1" +skim = "0.10" +snafu = "0.8" +time = { version = "0.3", features = [ + "formatting", + "local-offset", + "macros", + "parsing", + "serde", +] } + +clipcat-base = { path = "./crates/base" } +clipcat-cli = { path = "./crates/cli" } +clipcat-client = { path = "./crates/client" } +clipcat-clipboard = { path = "./crates/clipboard" } +clipcat-dbus-variant = { path = "./crates/dbus-variant" } +clipcat-external-editor = { path = "./crates/external-editor" } +clipcat-metrics = { path = "./crates/metrics" } +clipcat-proto = { path = "./crates/proto" } +clipcat-server = { path = "./crates/server" } + [workspace.lints.rust] box_pointers = "allow" diff --git a/clipcat-menu/Cargo.toml b/clipcat-menu/Cargo.toml index 156c3fb2..d55aa55d 100644 --- a/clipcat-menu/Cargo.toml +++ b/clipcat-menu/Cargo.toml @@ -13,31 +13,31 @@ categories.workspace = true keywords.workspace = true [dependencies] -tracing = "0.1" -tracing-journald = "0.3" -tracing-subscriber = "0.3" +tracing = { workspace = true } +tracing-journald = { workspace = true } +tracing-subscriber = { workspace = true } -http-serde = "2" -serde = { version = "1", features = ["derive"] } -toml = "0.8" +http-serde = { workspace = true } +serde = { workspace = true } +toml = { workspace = true } -tokio = { version = "1", features = ["rt-multi-thread", "sync"] } +tokio = { workspace = true } -clap = { version = "4", features = ["derive", "env"] } -clap_complete = "4" -http = "1" -resolve-path = "0.1" -shadow-rs = "0.29" -skim = "0.10" -snafu = "0.8" +clap = { workspace = true } +clap_complete = { workspace = true } +http = { workspace = true } +resolve-path = { workspace = true } +shadow-rs = { workspace = true } +skim = { workspace = true } +snafu = { workspace = true } -clipcat-base = { path = "../crates/base" } -clipcat-cli = { path = "../crates/cli" } -clipcat-client = { path = "../crates/client" } -clipcat-external-editor = { path = "../crates/external-editor" } +clipcat-base = { workspace = true } +clipcat-cli = { workspace = true } +clipcat-client = { workspace = true } +clipcat-external-editor = { workspace = true } [build-dependencies] -shadow-rs = "0.29" +shadow-rs = { workspace = true } [lints] workspace = true diff --git a/clipcat-notify/Cargo.toml b/clipcat-notify/Cargo.toml index 85776b54..898cc33d 100644 --- a/clipcat-notify/Cargo.toml +++ b/clipcat-notify/Cargo.toml @@ -13,23 +13,23 @@ categories.workspace = true keywords.workspace = true [dependencies] -serde = { version = "1", features = ["derive"] } -serde_json = "1" +serde = { workspace = true } +serde_json = { workspace = true } -tokio = { version = "1", features = ["rt-multi-thread", "sync"] } +tokio = { workspace = true } -clap = { version = "4", features = ["derive", "env"] } -clap_complete = "4" -mime = "0.3" -shadow-rs = "0.29" -snafu = "0.8" -time = { version = "0.3", features = ["local-offset", "serde"] } +clap = { workspace = true } +clap_complete = { workspace = true } +mime = { workspace = true } +shadow-rs = { workspace = true } +snafu = { workspace = true } +time = { workspace = true } -clipcat-base = { path = "../crates/base" } -clipcat-server = { path = "../crates/server" } +clipcat-base = { workspace = true } +clipcat-server = { workspace = true } [build-dependencies] -shadow-rs = "0.29" +shadow-rs = { workspace = true } [lints] workspace = true diff --git a/clipcatctl/Cargo.toml b/clipcatctl/Cargo.toml index 9316cb58..22416f9d 100644 --- a/clipcatctl/Cargo.toml +++ b/clipcatctl/Cargo.toml @@ -13,34 +13,34 @@ categories.workspace = true keywords.workspace = true [dependencies] -tracing = "0.1" -tracing-journald = "0.3" -tracing-subscriber = "0.3" +tracing = { workspace = true } +tracing-journald = { workspace = true } +tracing-subscriber = { workspace = true } -http-serde = "2" -serde = { version = "1", features = ["derive"] } -toml = "0.8" +http-serde = { workspace = true } +serde = { workspace = true } +toml = { workspace = true } -tokio = { version = "1", features = ["rt-multi-thread", "sync"] } +tokio = { workspace = true } -bytes = "1" -clap = { version = "4", features = ["derive", "env"] } -clap_complete = "4" -directories = "5" -http = "1" -mime = "0.3" -resolve-path = "0.1" -shadow-rs = "0.29" -simdutf8 = "0.1" -snafu = "0.8" +bytes = { workspace = true } +clap = { workspace = true } +clap_complete = { workspace = true } +directories = { workspace = true } +http = { workspace = true } +mime = { workspace = true } +resolve-path = { workspace = true } +shadow-rs = { workspace = true } +simdutf8 = { workspace = true } +snafu = { workspace = true } -clipcat-base = { path = "../crates/base" } -clipcat-cli = { path = "../crates/cli" } -clipcat-client = { path = "../crates/client" } -clipcat-external-editor = { path = "../crates/external-editor" } +clipcat-base = { workspace = true } +clipcat-cli = { workspace = true } +clipcat-client = { workspace = true } +clipcat-external-editor = { workspace = true } [build-dependencies] -shadow-rs = "0.29" +shadow-rs = { workspace = true } [lints] workspace = true diff --git a/clipcatd/Cargo.toml b/clipcatd/Cargo.toml index bdde65a3..075097a3 100644 --- a/clipcatd/Cargo.toml +++ b/clipcatd/Cargo.toml @@ -13,35 +13,35 @@ categories.workspace = true keywords.workspace = true [dependencies] -tracing = "0.1" -tracing-journald = "0.3" -tracing-subscriber = "0.3" +tracing = { workspace = true } +tracing-journald = { workspace = true } +tracing-subscriber = { workspace = true } -tokio = { version = "1", features = ["rt-multi-thread", "sync"] } +tokio = { workspace = true } -serde = { version = "1", features = ["derive"] } -toml = "0.8" +serde = { workspace = true } +toml = { workspace = true } -clap = { version = "4", features = ["derive", "env"] } -clap_complete = "4" -daemonize = "0.5" -directories = "5" -exitcode = "1" -libc = "0.2" -linicon = "2" -mime = "0.3" -resolve-path = "0.1" -shadow-rs = "0.29" -simdutf8 = "0.1" -snafu = "0.8" -time = { version = "0.3", features = ["formatting", "macros"] } +clap = { workspace = true } +clap_complete = { workspace = true } +daemonize = { workspace = true } +directories = { workspace = true } +exitcode = { workspace = true } +libc = { workspace = true } +linicon = { workspace = true } +mime = { workspace = true } +resolve-path = { workspace = true } +shadow-rs = { workspace = true } +simdutf8 = { workspace = true } +snafu = { workspace = true } +time = { workspace = true } -clipcat-base = { path = "../crates/base" } -clipcat-cli = { path = "../crates/cli" } -clipcat-server = { path = "../crates/server" } +clipcat-base = { workspace = true } +clipcat-cli = { workspace = true } +clipcat-server = { workspace = true } [build-dependencies] -shadow-rs = "0.29" +shadow-rs = { workspace = true } [lints] workspace = true diff --git a/crates/base/Cargo.toml b/crates/base/Cargo.toml index 58e34fdd..ca03c214 100644 --- a/crates/base/Cargo.toml +++ b/crates/base/Cargo.toml @@ -13,23 +13,23 @@ categories.workspace = true keywords.workspace = true [dependencies] -serde = { version = "1", features = ["derive"] } +serde = { workspace = true } -tokio = { version = "1" } +tokio = { workspace = true } -http = "1" +http = { workspace = true } -bytes = "1" -directories = "5" -humansize = "2" -image = "0.25" -mime = "0.3" -once_cell = "1" -regex = "1" -semver = "1" -sha2 = "0.10" -snafu = "0.8" -time = { version = "0.3", features = ["formatting", "local-offset", "macros"] } +bytes = { workspace = true } +directories = { workspace = true } +humansize = { workspace = true } +image = { workspace = true } +mime = { workspace = true } +once_cell = { workspace = true } +regex = { workspace = true } +semver = { workspace = true } +sha2 = { workspace = true } +snafu = { workspace = true } +time = { workspace = true } [lints] workspace = true diff --git a/crates/cli/Cargo.toml b/crates/cli/Cargo.toml index fd419d4f..5407f65d 100644 --- a/crates/cli/Cargo.toml +++ b/crates/cli/Cargo.toml @@ -13,12 +13,12 @@ categories.workspace = true keywords.workspace = true [dependencies] -serde = { version = "1", features = ["derive"] } -serde_with = "3" +serde = { workspace = true } +serde_with = { workspace = true } -tracing = "0.1" -tracing-journald = "0.3" -tracing-subscriber = "0.3" +tracing = { workspace = true } +tracing-journald = { workspace = true } +tracing-subscriber = { workspace = true } [lints] workspace = true diff --git a/crates/client/Cargo.toml b/crates/client/Cargo.toml index 7c6a3626..7af6ead0 100644 --- a/crates/client/Cargo.toml +++ b/crates/client/Cargo.toml @@ -13,24 +13,24 @@ categories.workspace = true keywords.workspace = true [dependencies] -tracing = "0.1" +tracing = { workspace = true } -async-trait = "0.1" -hyper-util = "0.1" -tokio = { version = "1", features = ["net"] } +async-trait = { workspace = true } +hyper-util = { workspace = true } +tokio = { workspace = true } -http = "1" -tower = "0.4" +http = { workspace = true } +tower = { workspace = true } -prost-types = "0.13" -tonic = { version = "0.12", features = ["gzip"] } +prost-types = { workspace = true } +tonic = { workspace = true } -mime = "0.3" -semver = "1" -snafu = "0.8" +mime = { workspace = true } +semver = { workspace = true } +snafu = { workspace = true } -clipcat-base = { path = "../base" } -clipcat-proto = { path = "../proto" } +clipcat-base = { workspace = true } +clipcat-proto = { workspace = true } [lints] workspace = true diff --git a/crates/clipboard/Cargo.toml b/crates/clipboard/Cargo.toml index 6d1a91f2..b142ce49 100644 --- a/crates/clipboard/Cargo.toml +++ b/crates/clipboard/Cargo.toml @@ -15,18 +15,15 @@ keywords.workspace = true autoexamples = false [dependencies] -tracing = "0.1" +tracing = { workspace = true } -arboard = { version = "3", default-features = false, features = [ - "image-data", - "wayland-data-control", -] } +arboard = { workspace = true } -bytes = "1" -mime = "0.3" -mio = { version = "1.0", features = ["os-ext"] } -parking_lot = "0.12" -snafu = "0.8" +bytes = { workspace = true } +mime = { workspace = true } +mio = { workspace = true } +parking_lot = { workspace = true } +snafu = { workspace = true } clipcat-base = { path = "../base/" } diff --git a/crates/dbus-variant/Cargo.toml b/crates/dbus-variant/Cargo.toml index 177cd1c4..9d226058 100644 --- a/crates/dbus-variant/Cargo.toml +++ b/crates/dbus-variant/Cargo.toml @@ -13,13 +13,14 @@ categories.workspace = true keywords.workspace = true [dependencies] -serde = { version = "1", features = ["derive"] } -zvariant = "4" +serde = { workspace = true } -mime = "0.3" -time = { version = "0.3", features = ["formatting", "macros"] } +zvariant = { workspace = true } -clipcat-base = { path = "../base" } +mime = { workspace = true } +time = { workspace = true } + +clipcat-base = { workspace = true } [lints] workspace = true diff --git a/crates/external-editor/Cargo.toml b/crates/external-editor/Cargo.toml index fbbcfcb5..dfb54122 100644 --- a/crates/external-editor/Cargo.toml +++ b/crates/external-editor/Cargo.toml @@ -13,11 +13,11 @@ categories.workspace = true keywords.workspace = true [dependencies] -tokio = { version = "1", features = ["fs", "process", "rt-multi-thread"] } +tokio = { workspace = true } -snafu = "0.8" +snafu = { workspace = true } -clipcat-base = { path = "../base" } +clipcat-base = { workspace = true } [lints] workspace = true diff --git a/crates/metrics/Cargo.toml b/crates/metrics/Cargo.toml index 142f4492..c2ddd17b 100644 --- a/crates/metrics/Cargo.toml +++ b/crates/metrics/Cargo.toml @@ -13,18 +13,18 @@ categories.workspace = true keywords.workspace = true [dependencies] -async-trait = "0.1" -tokio = { version = "1", features = ["net"] } +async-trait = { workspace = true } +tokio = { workspace = true } -axum = "0.7" -tower = { version = "0.4", features = ["timeout"] } -tower-http = { version = "0.5", features = ["trace"] } +axum = { workspace = true } +tower = { workspace = true } +tower-http = { workspace = true } -bytes = "1" -mime = "0.3" -once_cell = "1" -prometheus = "0.13" -snafu = "0.8" +bytes = { workspace = true } +mime = { workspace = true } +once_cell = { workspace = true } +prometheus = { workspace = true } +snafu = { workspace = true } [lints] workspace = true diff --git a/crates/proto/Cargo.toml b/crates/proto/Cargo.toml index 74b0b83e..b152812d 100644 --- a/crates/proto/Cargo.toml +++ b/crates/proto/Cargo.toml @@ -13,21 +13,18 @@ categories.workspace = true keywords.workspace = true [dependencies] -prost = "0.13" -prost-types = "0.13" -tonic = { version = "0.12", features = ["gzip"] } +prost = { workspace = true } +prost-types = { workspace = true } +tonic = { workspace = true } -mime = "0.3" -time = { version = "0.3", features = ["formatting", "macros"] } +mime = { workspace = true } +time = { workspace = true } -clipcat-base = { path = "../base" } +clipcat-base = { workspace = true } [build-dependencies] -tonic-build = { version = "0.12", default-features = false, features = [ - "prost", - "transport", -] } -prost-build = "0.13" +tonic-build = { workspace = true } +prost-build = { workspace = true } [lints] workspace = true diff --git a/crates/server/Cargo.toml b/crates/server/Cargo.toml index 1b6fd893..4f0322b7 100644 --- a/crates/server/Cargo.toml +++ b/crates/server/Cargo.toml @@ -13,52 +13,42 @@ categories.workspace = true keywords.workspace = true [dependencies] -tracing = "0.1" - -bincode = "1" -serde = { version = "1", features = ["derive"] } -serde_json = "1" - -async-trait = "0.1" -futures = "0.3" -sigfinn = "0.2" -tokio = { version = "1", features = [ - "fs", - "macros", - "rt-multi-thread", - "sync", -] } -tokio-stream = { version = "0.1", features = ["net"] } - -tonic = { version = "0.12", features = ["gzip"] } - -zbus = { version = "4", default-features = false, features = ["tokio"] } -zvariant = "4" - -hex = "0.4" -humansize = "2" -mime = "0.3" -notify = "6" -notify-rust = "4" -once_cell = "1" -parking_lot = "0.12" -prometheus = "0.13" -regex = "1" -semver = "1" -simdutf8 = "0.1" -snafu = "0.8" -time = { version = "0.3", features = [ - "formatting", - "macros", - "parsing", - "serde", -] } - -clipcat-base = { path = "../base" } -clipcat-clipboard = { path = "../clipboard" } -clipcat-dbus-variant = { path = "../dbus-variant" } -clipcat-metrics = { path = "../metrics" } -clipcat-proto = { path = "../proto" } +tracing = { workspace = true } + +bincode = { workspace = true } +serde = { workspace = true } +serde_json = { workspace = true } + +async-trait = { workspace = true } +futures = { workspace = true } +sigfinn = { workspace = true } +tokio = { workspace = true } +tokio-stream = { workspace = true } + +tonic = { workspace = true } + +zbus = { workspace = true } +zvariant = { workspace = true } + +hex = { workspace = true } +humansize = { workspace = true } +mime = { workspace = true } +notify = { workspace = true } +notify-rust = { workspace = true } +once_cell = { workspace = true } +parking_lot = { workspace = true } +prometheus = { workspace = true } +regex = { workspace = true } +semver = { workspace = true } +simdutf8 = { workspace = true } +snafu = { workspace = true } +time = { workspace = true } + +clipcat-base = { workspace = true } +clipcat-clipboard = { workspace = true } +clipcat-dbus-variant = { workspace = true } +clipcat-metrics = { workspace = true } +clipcat-proto = { workspace = true } [lints] workspace = true