mirror of
https://github.com/RGBCube/dix
synced 2025-07-28 04:07:46 +00:00
src/main.rs: add coloring
This commit is contained in:
parent
2d92e91205
commit
2893509d42
3 changed files with 47 additions and 14 deletions
26
Cargo.lock
generated
26
Cargo.lock
generated
|
@ -107,6 +107,15 @@ version = "1.0.3"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990"
|
||||
|
||||
[[package]]
|
||||
name = "colored"
|
||||
version = "3.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fde0e0ec90c9dfb3b4b1a0891a7dcd0e2bffde2f7efed5fe7c9bb00e5bfb915e"
|
||||
dependencies = [
|
||||
"windows-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "heck"
|
||||
version = "0.5.0"
|
||||
|
@ -125,6 +134,15 @@ version = "2.7.4"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
|
||||
|
||||
[[package]]
|
||||
name = "nnpdt"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"clap",
|
||||
"colored",
|
||||
"regex",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "once_cell"
|
||||
version = "1.21.3"
|
||||
|
@ -207,14 +225,6 @@ version = "0.2.2"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
|
||||
|
||||
[[package]]
|
||||
name = "version-diff"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"clap",
|
||||
"regex",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "windows-sys"
|
||||
version = "0.59.0"
|
||||
|
|
|
@ -5,6 +5,7 @@ edition = "2024"
|
|||
|
||||
[dependencies]
|
||||
clap = { version = "4.5.37", features = ["derive"] }
|
||||
colored = "3.0.0"
|
||||
regex = "1.11.1"
|
||||
|
||||
[workspace.lints.clippy]
|
||||
|
|
34
src/main.rs
34
src/main.rs
|
@ -1,4 +1,5 @@
|
|||
use clap::Parser;
|
||||
use colored::Colorize;
|
||||
use core::str;
|
||||
use regex::Regex;
|
||||
use std::{
|
||||
|
@ -64,23 +65,35 @@ fn main() {
|
|||
let removed: HashSet<String> = &pre_keys - &post_keys;
|
||||
|
||||
println!("Difference between the two generations:");
|
||||
println!("Packages added: ");
|
||||
println!("{}", "Packages added:".underline().bold());
|
||||
for p in added {
|
||||
let version = post.get(&p);
|
||||
if let Some(ver) = version {
|
||||
println!("A: {p} @ {ver}");
|
||||
println!(
|
||||
"{} {} {} {}",
|
||||
"[A:]".green().bold(),
|
||||
p,
|
||||
"@".yellow().bold(),
|
||||
ver.cyan()
|
||||
);
|
||||
}
|
||||
}
|
||||
println!();
|
||||
println!("Packages removed: ");
|
||||
println!("{}", "Packages removed:".underline().bold());
|
||||
for p in removed {
|
||||
let version = pre.get(&p);
|
||||
if let Some(ver) = version {
|
||||
println!("R: {p} @ {ver}");
|
||||
println!(
|
||||
"{} {} {} {}",
|
||||
"[R:]".red().bold(),
|
||||
p,
|
||||
"@".yellow(),
|
||||
ver.cyan()
|
||||
);
|
||||
}
|
||||
}
|
||||
println!();
|
||||
println!("Version changes: ");
|
||||
println!("{}", "Version changes:".underline().bold());
|
||||
for p in maybe_changed {
|
||||
if p.is_empty() {
|
||||
continue;
|
||||
|
@ -90,7 +103,16 @@ fn main() {
|
|||
|
||||
if let (Some(ver_pre), Some(ver_post)) = (version_pre, version_post) {
|
||||
if ver_pre != ver_post {
|
||||
println!("C: {p} @ {ver_pre} -> {ver_post}");
|
||||
// println!("C: {p} @ {ver_pre} -> {ver_post}");
|
||||
println!(
|
||||
"{} {} {} {} {} {}",
|
||||
"[C:]".purple().bold(),
|
||||
p,
|
||||
"@".yellow(),
|
||||
ver_pre.yellow(),
|
||||
"~>".purple(),
|
||||
ver_post.cyan()
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue