Skip to content

Commit 92db2b9

Browse files
committed
refactor: centralize dependencies under [workspace.dependencies]
Move all shared dependencies to the workspace root to eliminate version drift and provide a single source of truth. Normalizes versions across crates (blake3 1.5→1.8, serde "1.0.219"→"1", colored "3.0.0"→"3.0", indexmap "2.9.0"→"2.9", tempfile "3.20.0"→"3.20", which "7.0.3"→"7.0").
1 parent 1e400ac commit 92db2b9

9 files changed

Lines changed: 178 additions & 275 deletions

File tree

Cargo.lock

Lines changed: 69 additions & 195 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,43 @@ description = "Toolchain for building, linting, metadata generation, and cache m
1515
repository = "https://github.com/pkgforge/sbuilder"
1616
keywords = ["soar", "sbuild", "lint", "build", "package"]
1717

18+
[workspace.dependencies]
19+
# Internal crates
20+
sbuild-cache = { path = "sbuild-cache" }
21+
sbuild-linter = { path = "sbuild-linter" }
22+
sbuild-meta = { path = "sbuild-meta" }
23+
24+
# External
25+
base64 = "0.22"
26+
blake3 = "1.8"
27+
chrono = { version = "0.4", default-features = false }
28+
clap = { version = "4", features = ["derive", "env"] }
29+
colored = "3.0"
30+
env_logger = "0.11"
31+
futures = "0.3"
32+
glob = "0.3"
33+
goblin = { version = "0.10", default-features = false, features = ["elf64", "elf32", "endian_fd", "std"] }
34+
indexmap = "2.9"
35+
log = "0.4"
36+
memmap2 = "0.9"
37+
rayon = "1.10"
38+
regex = "1"
39+
reqwest = { version = "0.12", default-features = false }
40+
rusqlite = { version = "0.36", features = ["bundled"] }
41+
serde = { version = "1", features = ["derive"] }
42+
serde_json = "1"
43+
serde_yaml = "0.9"
44+
serde_yml = "0.0.12"
45+
sha2 = "0.10"
46+
squishy = { version = "0.3", features = ["appimage"] }
47+
tempfile = "3.20"
48+
thiserror = "2"
49+
tokio = "1"
50+
url = "2.5"
51+
which = "7.0"
52+
xz2 = "0.1"
53+
zstd = "0.13"
54+
1855
[profile.release]
1956
strip = true
2057
opt-level = "z"

sbuild-cache/Cargo.toml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ repository = "https://github.com/pkgforge/sbuilder"
99
keywords = ["soar", "sbuild", "cache", "sqlite", "build-history"]
1010

1111
[dependencies]
12-
rusqlite = { version = "0.36", features = ["bundled"] }
13-
serde = { version = "1", features = ["derive"] }
14-
serde_json = "1"
15-
chrono = { version = "0.4", features = ["serde"] }
16-
thiserror = "2"
17-
tracing = "0.1"
12+
chrono = { workspace = true, features = ["serde"] }
13+
log.workspace = true
14+
rusqlite.workspace = true
15+
serde.workspace = true
16+
serde_json.workspace = true
17+
thiserror.workspace = true
1818

1919
[lib]
2020
name = "sbuild_cache"

sbuild-linter/Cargo.toml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@ repository.workspace = true
99
keywords.workspace = true
1010

1111
[dependencies]
12-
colored = "3.0.0"
13-
indexmap = { version = "2.9.0", features = ["serde"] }
14-
serde = { version = "1.0.219", features = ["derive"] }
15-
serde_yml = "0.0.12"
16-
tempfile = "3.20.0"
17-
url = "2.5.4"
18-
which = "7.0.3"
12+
colored.workspace = true
13+
indexmap = { workspace = true, features = ["serde"] }
14+
serde.workspace = true
15+
serde_yml.workspace = true
16+
tempfile.workspace = true
17+
url.workspace = true
18+
which.workspace = true
1919

2020
[lib]
2121
name = "sbuild_linter"

sbuild-meta/Cargo.toml

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -9,24 +9,23 @@ repository = "https://github.com/pkgforge/sbuilder"
99
keywords = ["soar", "sbuild", "metadata", "ghcr", "package"]
1010

1111
[dependencies]
12-
blake3 = "1.5"
13-
rayon = "1.10"
14-
reqwest = { version = "0.12", features = ["json", "rustls-tls"], default-features = false }
15-
rusqlite = { version = "0.36", features = ["bundled"] }
16-
serde = { version = "1", features = ["derive"] }
17-
serde_json = "1"
18-
serde_yaml = "0.9"
19-
tokio = { version = "1", features = ["full"] }
20-
tracing = "0.1"
21-
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
22-
xz2 = "0.1"
23-
zstd = "0.13"
24-
chrono = { version = "0.4", features = ["serde"] }
25-
base64 = "0.22"
26-
thiserror = "2"
27-
futures = "0.3"
28-
regex = "1"
29-
glob = "0.3"
12+
base64.workspace = true
13+
blake3.workspace = true
14+
chrono = { workspace = true, features = ["serde"] }
15+
futures.workspace = true
16+
glob.workspace = true
17+
log.workspace = true
18+
rayon.workspace = true
19+
regex.workspace = true
20+
reqwest = { workspace = true, features = ["json", "rustls-tls"] }
21+
rusqlite.workspace = true
22+
serde.workspace = true
23+
serde_json.workspace = true
24+
serde_yaml.workspace = true
25+
thiserror.workspace = true
26+
tokio = { workspace = true, features = ["full"] }
27+
xz2.workspace = true
28+
zstd.workspace = true
3029

3130
[lib]
3231
name = "sbuild_meta"

sbuild-meta/src/recipe.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -530,12 +530,12 @@ pub fn scan_recipes(dir: &Path) -> Result<Vec<(std::path::PathBuf, SBuildRecipe)
530530
match SBuildRecipe::from_file(&path) {
531531
Ok(recipe) => recipes.push((path, recipe)),
532532
Err(e) => {
533-
tracing::warn!("Failed to parse recipe {:?}: {}", path, e);
533+
log::warn!("Failed to parse recipe {:?}: {}", path, e);
534534
}
535535
}
536536
}
537537
Err(e) => {
538-
tracing::warn!("Glob error: {}", e);
538+
log::warn!("Glob error: {}", e);
539539
}
540540
}
541541
}

sbuild/Cargo.toml

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -9,27 +9,27 @@ repository.workspace = true
99
keywords.workspace = true
1010

1111
[dependencies]
12-
blake3 = "1.8"
13-
chrono = { version = "0.4", default-features = false, features = ["now"] }
14-
clap = { version = "4", features = ["derive", "env"] }
15-
colored = "3.0"
16-
futures = "0.3"
17-
glob = "0.3"
18-
goblin = { version = "0.10", features = ["elf64", "elf32", "endian_fd", "std"] }
19-
indexmap = "2.9"
20-
memmap2 = "0.9"
21-
reqwest = { version = "0.12", features = ["blocking", "http2", "rustls-tls", "stream"], default-features = false }
22-
sbuild-cache = { version = "*", path = "../sbuild-cache" }
23-
sbuild-linter = { version = "*", path = "../sbuild-linter" }
24-
sbuild-meta = { version = "*", path = "../sbuild-meta" }
25-
serde = { version = "1", features = ["derive"] }
26-
serde_json = { version = "1", features = ["indexmap"] }
27-
serde_yml = "0.0.12"
28-
sha2 = "0.10"
29-
squishy = { version = "0.3", features = ["appimage"] }
30-
tempfile = "3.20"
31-
thiserror = "2"
32-
tokio = { version = "1", features = ["macros", "rt-multi-thread", "process", "time"] }
33-
tracing = "0.1"
34-
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
35-
which = "7.0"
12+
blake3.workspace = true
13+
chrono = { workspace = true, features = ["now"] }
14+
clap.workspace = true
15+
colored.workspace = true
16+
env_logger.workspace = true
17+
futures.workspace = true
18+
glob.workspace = true
19+
goblin.workspace = true
20+
indexmap.workspace = true
21+
log.workspace = true
22+
memmap2.workspace = true
23+
reqwest = { workspace = true, features = ["blocking", "http2", "rustls-tls", "stream"] }
24+
sbuild-cache.workspace = true
25+
sbuild-linter.workspace = true
26+
sbuild-meta.workspace = true
27+
serde.workspace = true
28+
serde_json = { workspace = true, features = ["indexmap"] }
29+
serde_yml.workspace = true
30+
sha2.workspace = true
31+
squishy.workspace = true
32+
tempfile.workspace = true
33+
thiserror.workspace = true
34+
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "process", "time"] }
35+
which.workspace = true

sbuild/src/commands/build.rs

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ use std::{
1212

1313
use clap::Parser;
1414
use colored::Colorize;
15+
use log::{error, info, warn, LevelFilter};
1516
use sbuild::{
1617
builder::Builder,
1718
checksum, fetch_recipe,
@@ -23,8 +24,6 @@ use sbuild::{
2324
};
2425
use sbuild_linter::logger::{LogManager, LogMessage};
2526
use sbuild_meta::sanitize_oci_name;
26-
use tracing::{error, info, warn, Level};
27-
use tracing_subscriber::FmtSubscriber;
2827

2928
#[derive(Parser)]
3029
#[command(about = "Build packages from SBUILD recipes")]
@@ -102,12 +101,11 @@ impl From<LogLevel> for u8 {
102101
}
103102
}
104103

105-
impl From<LogLevel> for Level {
106-
fn from(level: LogLevel) -> Level {
104+
impl From<LogLevel> for LevelFilter {
105+
fn from(level: LogLevel) -> LevelFilter {
107106
match level {
108-
LogLevel::Debug => Level::DEBUG,
109-
LogLevel::Verbose => Level::DEBUG,
110-
LogLevel::Info => Level::INFO,
107+
LogLevel::Debug | LogLevel::Verbose => LevelFilter::Debug,
108+
LogLevel::Info => LevelFilter::Info,
111109
}
112110
}
113111
}
@@ -286,14 +284,11 @@ pub async fn run(args: BuildArgs, soar_env: Option<SoarEnv>) -> Result<(), Strin
286284
}
287285

288286
fn init_logging(_ci_mode: bool, log_level: LogLevel) {
289-
let level: Level = log_level.into();
290-
let subscriber = FmtSubscriber::builder()
291-
.with_max_level(level)
292-
.with_target(false)
293-
.with_thread_ids(false)
294-
.without_time()
295-
.finish();
296-
tracing::subscriber::set_global_default(subscriber).ok();
287+
env_logger::Builder::new()
288+
.filter_level(log_level.into())
289+
.format_target(false)
290+
.format_timestamp(None)
291+
.init();
297292
}
298293

299294
fn write_github_env(key: &str, value: &str) {

sbuild/src/commands/meta.rs

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use std::path::PathBuf;
22

33
use clap::{Parser, Subcommand};
4+
use log::{debug, info, warn};
45
use sbuild_meta::{
56
hash::{compute_recipe_hash, compute_recipe_hash_excluding_version},
67
manifest::OciManifest,
@@ -9,8 +10,6 @@ use sbuild_meta::{
910
registry::RegistryClient,
1011
Error, Result,
1112
};
12-
use tracing::{debug, info, warn, Level};
13-
use tracing_subscriber::FmtSubscriber;
1413

1514
#[derive(Parser)]
1615
#[command(about = "Metadata generator for SBUILD packages")]
@@ -148,12 +147,11 @@ pub async fn run(args: MetaArgs) -> Result<()> {
148147
}
149148

150149
fn setup_logging() {
151-
let subscriber = FmtSubscriber::builder()
152-
.with_max_level(Level::INFO)
153-
.with_target(false)
154-
.compact()
155-
.finish();
156-
tracing::subscriber::set_global_default(subscriber).expect("Failed to set tracing subscriber");
150+
env_logger::Builder::new()
151+
.filter_level(log::LevelFilter::Info)
152+
.format_target(false)
153+
.format_timestamp(None)
154+
.init();
157155
}
158156

159157
async fn cmd_generate(

0 commit comments

Comments
 (0)