refactor: add Justfile; fix some clippy lints

main
Jef Roosens 2025-04-30 15:15:51 +02:00
parent abafd9a28c
commit 08e77034a7
No known key found for this signature in database
GPG Key ID: 21FD3D77D56BAF49
4 changed files with 40 additions and 22 deletions

35
Justfile 100644
View File

@ -0,0 +1,35 @@
[group('build')]
build pkg:
cargo build --package {{ pkg }}
alias b := build
[group('build')]
build-all:
cargo build --workspace
alias ba := build-all
[group('test')]
test pkg:
cargo test --package {{ pkg }}
alias t := test
[group('test')]
test-all:
cargo test --workspace
alias ta := test-all
[group('check')]
check pkg:
cargo fmt --check --package {{ pkg }}
cargo clippy --package {{ pkg }} -- \
--no-deps \
--deny 'clippy::all'
alias c := check
[group('check')]
check-all:
cargo fmt --check --all
cargo clippy --all -- \
--no-deps \
--deny 'clippy::all'
alias ca := check-all

View File

@ -5,7 +5,7 @@ use serde::{Deserialize, Serialize};
use super::State;
/// Represents the changes relative to the previous backup
#[derive(Debug, Serialize, Deserialize, Clone)]
#[derive(Debug, Serialize, Deserialize, Clone, Default)]
pub struct Delta {
/// What files were added/modified in each part of the tarball.
pub added: State,
@ -17,13 +17,6 @@ pub struct Delta {
}
impl Delta {
pub fn new() -> Self {
Self {
added: State::new(),
removed: State::new(),
}
}
/// Returns whether the delta is empty by checking whether both its added and removed state
/// return true for their `is_empty`.
#[allow(dead_code)]

View File

@ -129,7 +129,7 @@ impl<T: Clone> Backup<T> {
let enc = GzEncoder::new(tar_gz, Compression::default());
let mut ar = tar::Builder::new(enc);
let mut delta = Delta::new();
let mut delta = Delta::default();
for (dir_in_tar, src_dir) in dirs {
let mut added_files: HashSet<PathBuf> = HashSet::new();
@ -187,7 +187,7 @@ impl<T: Clone> Backup<T> {
let enc = GzEncoder::new(tar_gz, Compression::default());
let mut ar = tar::Builder::new(enc);
let mut delta = Delta::new();
let mut delta = Delta::default();
for (dir_in_tar, src_dir) in dirs {
let mut all_files: HashSet<PathBuf> = HashSet::new();

View File

@ -11,14 +11,10 @@ use crate::Delta;
/// Struct that represents a current state for a backup. This struct acts as a smart pointer around
/// a HashMap.
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Default)]
pub struct State(HashMap<PathBuf, HashSet<PathBuf>>);
impl State {
pub fn new() -> Self {
State(HashMap::new())
}
/// Apply the delta to the current state.
pub fn apply(&mut self, delta: &Delta) {
// First we add new files, then we remove the old ones
@ -61,7 +57,7 @@ where
T::Item: Borrow<Delta>,
{
fn from(deltas: T) -> Self {
let mut state = State::new();
let mut state = State::default();
for delta in deltas {
state.apply(delta.borrow());
@ -90,9 +86,3 @@ impl DerefMut for State {
&mut self.0
}
}
impl Default for State {
fn default() -> Self {
Self::new()
}
}