* [pbs-devel] [PATCH backup 2/8] run cargo clippy --fix
2025-03-06 13:12 [pbs-devel] [PATCH backup 1/8] server: remove needless clone Maximiliano Sandoval
@ 2025-03-06 13:12 ` Maximiliano Sandoval
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 3/8] api: remove redundant guard Maximiliano Sandoval
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Maximiliano Sandoval @ 2025-03-06 13:12 UTC (permalink / raw)
To: pbs-devel
The actual incantation is:
clippy --all-targets --workspace --all-features --fix
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
pbs-datastore/src/prune.rs | 10 +++++-----
src/api2/admin/datastore.rs | 2 +-
src/tools/disks/mod.rs | 6 ++++++
3 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/pbs-datastore/src/prune.rs b/pbs-datastore/src/prune.rs
index ad1493bf..7b6f9f75 100644
--- a/pbs-datastore/src/prune.rs
+++ b/pbs-datastore/src/prune.rs
@@ -124,13 +124,13 @@ pub fn compute_prune_info(
if let Some(keep_hourly) = options.keep_hourly {
mark_selections(&mut mark, &list, keep_hourly as usize, |info| {
- strftime_local("%Y/%m/%d/%H", info.backup_dir.backup_time()).map_err(Error::from)
+ strftime_local("%Y/%m/%d/%H", info.backup_dir.backup_time())
})?;
}
if let Some(keep_daily) = options.keep_daily {
mark_selections(&mut mark, &list, keep_daily as usize, |info| {
- strftime_local("%Y/%m/%d", info.backup_dir.backup_time()).map_err(Error::from)
+ strftime_local("%Y/%m/%d", info.backup_dir.backup_time())
})?;
}
@@ -138,19 +138,19 @@ pub fn compute_prune_info(
mark_selections(&mut mark, &list, keep_weekly as usize, |info| {
// Note: Use iso-week year/week here. This year number
// might not match the calendar year number.
- strftime_local("%G/%V", info.backup_dir.backup_time()).map_err(Error::from)
+ strftime_local("%G/%V", info.backup_dir.backup_time())
})?;
}
if let Some(keep_monthly) = options.keep_monthly {
mark_selections(&mut mark, &list, keep_monthly as usize, |info| {
- strftime_local("%Y/%m", info.backup_dir.backup_time()).map_err(Error::from)
+ strftime_local("%Y/%m", info.backup_dir.backup_time())
})?;
}
if let Some(keep_yearly) = options.keep_yearly {
mark_selections(&mut mark, &list, keep_yearly as usize, |info| {
- strftime_local("%Y", info.backup_dir.backup_time()).map_err(Error::from)
+ strftime_local("%Y", info.backup_dir.backup_time())
})?;
}
diff --git a/src/api2/admin/datastore.rs b/src/api2/admin/datastore.rs
index dbb7ae47..cfe319c4 100644
--- a/src/api2/admin/datastore.rs
+++ b/src/api2/admin/datastore.rs
@@ -2556,7 +2556,7 @@ fn expect_maintanance_unmounting(
if store_config
.get_maintenance_mode()
- .map_or(true, |m| m.ty != MaintenanceType::Unmount)
+ .is_none_or(|m| m.ty != MaintenanceType::Unmount)
{
bail!("maintenance mode is not 'Unmount'");
}
diff --git a/src/tools/disks/mod.rs b/src/tools/disks/mod.rs
index e08ea8ca..b9aef368 100644
--- a/src/tools/disks/mod.rs
+++ b/src/tools/disks/mod.rs
@@ -830,6 +830,12 @@ pub struct DiskUsageQuery {
partitions: bool,
}
+impl Default for DiskUsageQuery {
+ fn default() -> Self {
+ Self::new()
+ }
+}
+
impl DiskUsageQuery {
pub const fn new() -> Self {
Self {
--
2.39.5
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* [pbs-devel] [PATCH backup 3/8] api: remove redundant guard
2025-03-06 13:12 [pbs-devel] [PATCH backup 1/8] server: remove needless clone Maximiliano Sandoval
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 2/8] run cargo clippy --fix Maximiliano Sandoval
@ 2025-03-06 13:12 ` Maximiliano Sandoval
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 4/8] snapshot_reader: replace Arc with Rc Maximiliano Sandoval
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Maximiliano Sandoval @ 2025-03-06 13:12 UTC (permalink / raw)
To: pbs-devel
Fixes the redundant_guards clippy lint.
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
src/api2/status/mod.rs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/api2/status/mod.rs b/src/api2/status/mod.rs
index 5efde9c3..e066a99c 100644
--- a/src/api2/status/mod.rs
+++ b/src/api2/status/mod.rs
@@ -150,7 +150,7 @@ pub async fn datastore_status(
if usage_list.len() >= 7 {
entry.estimated_full_date = match linear_regression(&time_list, &usage_list) {
Some((a, b)) if b != 0.0 => Some(((1.0 - a) / b).floor() as i64),
- Some((_, b)) if b == 0.0 => Some(0), // infinite estimate, set to past for gui to detect
+ Some((_, 0.0)) => Some(0), // infinite estimate, set to past for gui to detect
_ => None,
};
}
--
2.39.5
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* [pbs-devel] [PATCH backup 4/8] snapshot_reader: replace Arc with Rc
2025-03-06 13:12 [pbs-devel] [PATCH backup 1/8] server: remove needless clone Maximiliano Sandoval
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 2/8] run cargo clippy --fix Maximiliano Sandoval
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 3/8] api: remove redundant guard Maximiliano Sandoval
@ 2025-03-06 13:12 ` Maximiliano Sandoval
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 5/8] fix the type_complexity clippy lint Maximiliano Sandoval
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Maximiliano Sandoval @ 2025-03-06 13:12 UTC (permalink / raw)
To: pbs-devel
The type `Box<dyn IndexFile + Send>>, usize, Vec<(usize, u64)>` is not
Sync so it makes more sense to use Rc. This is suggested by clippy.
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
pbs-datastore/src/snapshot_reader.rs | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/pbs-datastore/src/snapshot_reader.rs b/pbs-datastore/src/snapshot_reader.rs
index b9c3d931..36349888 100644
--- a/pbs-datastore/src/snapshot_reader.rs
+++ b/pbs-datastore/src/snapshot_reader.rs
@@ -2,6 +2,7 @@ use std::fs::File;
use std::os::unix::io::{AsRawFd, FromRawFd};
use std::path::Path;
use std::sync::Arc;
+use std::rc::Rc;
use anyhow::{bail, Error};
use nix::dir::Dir;
@@ -128,7 +129,7 @@ pub struct SnapshotChunkIterator<'a, F: Fn(&[u8; 32]) -> bool> {
todo_list: Vec<String>,
skip_fn: F,
#[allow(clippy::type_complexity)]
- current_index: Option<(Arc<Box<dyn IndexFile + Send>>, usize, Vec<(usize, u64)>)>,
+ current_index: Option<(Rc<Box<dyn IndexFile + Send>>, usize, Vec<(usize, u64)>)>,
}
impl<F: Fn(&[u8; 32]) -> bool> Iterator for SnapshotChunkIterator<'_, F> {
@@ -158,7 +159,7 @@ impl<F: Fn(&[u8; 32]) -> bool> Iterator for SnapshotChunkIterator<'_, F> {
let order =
datastore.get_chunks_in_order(&*index, &self.skip_fn, |_| Ok(()))?;
- self.current_index = Some((Arc::new(index), 0, order));
+ self.current_index = Some((Rc::new(index), 0, order));
} else {
return Ok(None);
}
--
2.39.5
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* [pbs-devel] [PATCH backup 5/8] fix the type_complexity clippy lint
2025-03-06 13:12 [pbs-devel] [PATCH backup 1/8] server: remove needless clone Maximiliano Sandoval
` (2 preceding siblings ...)
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 4/8] snapshot_reader: replace Arc with Rc Maximiliano Sandoval
@ 2025-03-06 13:12 ` Maximiliano Sandoval
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 6/8] create a CachedSchema struct Maximiliano Sandoval
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Maximiliano Sandoval @ 2025-03-06 13:12 UTC (permalink / raw)
To: pbs-devel
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
proxmox-backup-client/src/main.rs | 4 +++-
.../src/proxmox_restore_daemon/auth.rs | 10 ++++------
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/proxmox-backup-client/src/main.rs b/proxmox-backup-client/src/main.rs
index 0a2fc267..26a07b1c 100644
--- a/proxmox-backup-client/src/main.rs
+++ b/proxmox-backup-client/src/main.rs
@@ -193,13 +193,15 @@ pub async fn dir_or_last_from_group(
}
}
+type Catalog = CatalogWriter<TokioWriterAdapter<StdChannelWriter<Error>>>;
+
async fn backup_directory<P: AsRef<Path>>(
client: &BackupWriter,
dir_path: P,
archive_name: &BackupArchiveName,
payload_target: Option<&BackupArchiveName>,
chunk_size: Option<usize>,
- catalog: Option<Arc<Mutex<CatalogWriter<TokioWriterAdapter<StdChannelWriter<Error>>>>>>,
+ catalog: Option<Arc<Mutex<Catalog>>>,
pxar_create_options: pbs_client::pxar::PxarCreateOptions,
upload_options: UploadOptions,
) -> Result<(BackupStats, Option<BackupStats>), Error> {
diff --git a/proxmox-restore-daemon/src/proxmox_restore_daemon/auth.rs b/proxmox-restore-daemon/src/proxmox_restore_daemon/auth.rs
index 8cfc4f13..8173d48a 100644
--- a/proxmox-restore-daemon/src/proxmox_restore_daemon/auth.rs
+++ b/proxmox-restore-daemon/src/proxmox_restore_daemon/auth.rs
@@ -39,17 +39,15 @@ pub fn read_ticket() -> Result<Arc<str>, Error> {
Ok(ticket.into())
}
-pub fn check_auth<'a>(
- ticket: Arc<str>,
- headers: &'a HeaderMap,
- _method: &'a Method,
-) -> Pin<
+type AuthFn<'a> = Pin<
Box<
dyn Future<Output = Result<(String, Box<dyn UserInformation + Sync + Send>), AuthError>>
+ Send
+ 'a,
>,
-> {
+>;
+
+pub fn check_auth<'a>(ticket: Arc<str>, headers: &'a HeaderMap, _method: &'a Method) -> AuthFn<'a> {
Box::pin(async move {
match headers.get(hyper::header::AUTHORIZATION) {
Some(header) if header.to_str().unwrap_or("") == &*ticket => {
--
2.39.5
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* [pbs-devel] [PATCH backup 6/8] create a CachedSchema struct
2025-03-06 13:12 [pbs-devel] [PATCH backup 1/8] server: remove needless clone Maximiliano Sandoval
` (3 preceding siblings ...)
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 5/8] fix the type_complexity clippy lint Maximiliano Sandoval
@ 2025-03-06 13:12 ` Maximiliano Sandoval
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 7/8] zfs: remove unnecessary arc from dataset object map Maximiliano Sandoval
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Maximiliano Sandoval @ 2025-03-06 13:12 UTC (permalink / raw)
To: pbs-devel
Fix the type_complexity clippy lint.
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
src/api2/config/acme.rs | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/src/api2/config/acme.rs b/src/api2/config/acme.rs
index 422b9720..99832d1d 100644
--- a/src/api2/config/acme.rs
+++ b/src/api2/config/acme.rs
@@ -428,9 +428,13 @@ impl Serialize for ChallengeSchemaWrapper {
}
}
+struct CachedSchema {
+ schema: Arc<Vec<AcmeChallengeSchema>>,
+ cached_mtime: SystemTime,
+}
+
fn get_cached_challenge_schemas() -> Result<ChallengeSchemaWrapper, Error> {
- static CACHE: LazyLock<Mutex<Option<(Arc<Vec<AcmeChallengeSchema>>, SystemTime)>>> =
- LazyLock::new(|| Mutex::new(None));
+ static CACHE: LazyLock<Mutex<Option<CachedSchema>>> = LazyLock::new(|| Mutex::new(None));
// the actual loading code
let mut last = CACHE.lock().unwrap();
@@ -438,10 +442,16 @@ fn get_cached_challenge_schemas() -> Result<ChallengeSchemaWrapper, Error> {
let actual_mtime = fs::metadata(crate::config::acme::ACME_DNS_SCHEMA_FN)?.modified()?;
let schema = match &*last {
- Some((schema, cached_mtime)) if *cached_mtime >= actual_mtime => schema.clone(),
+ Some(CachedSchema {
+ schema,
+ cached_mtime,
+ }) if *cached_mtime >= actual_mtime => schema.clone(),
_ => {
let new_schema = Arc::new(crate::config::acme::load_dns_challenge_schema()?);
- *last = Some((Arc::clone(&new_schema), actual_mtime));
+ *last = Some(CachedSchema {
+ schema: Arc::clone(&new_schema),
+ cached_mtime: actual_mtime,
+ });
new_schema
}
};
--
2.39.5
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* [pbs-devel] [PATCH backup 7/8] zfs: remove unnecessary arc from dataset object map
2025-03-06 13:12 [pbs-devel] [PATCH backup 1/8] server: remove needless clone Maximiliano Sandoval
` (4 preceding siblings ...)
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 6/8] create a CachedSchema struct Maximiliano Sandoval
@ 2025-03-06 13:12 ` Maximiliano Sandoval
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 8/8] add too_many_arguments clippy exception Maximiliano Sandoval
2025-03-06 14:00 ` [pbs-devel] applied-series: [PATCH backup 1/8] server: remove needless clone Wolfgang Bumiller
7 siblings, 0 replies; 9+ messages in thread
From: Maximiliano Sandoval @ 2025-03-06 13:12 UTC (permalink / raw)
To: pbs-devel
The static was not really used anywhere else so it was made private.
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
src/tools/disks/zfs.rs | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/tools/disks/zfs.rs b/src/tools/disks/zfs.rs
index 3b7da154..034bc52d 100644
--- a/src/tools/disks/zfs.rs
+++ b/src/tools/disks/zfs.rs
@@ -1,7 +1,7 @@
use std::collections::HashSet;
use std::os::unix::fs::MetadataExt;
use std::path::PathBuf;
-use std::sync::{Arc, LazyLock, Mutex};
+use std::sync::{LazyLock, Mutex};
use anyhow::{bail, Error};
@@ -98,8 +98,8 @@ const_regex! {
OBJSET_REGEX = r"^objset-0x[a-fA-F0-9]+$";
}
-pub static ZFS_DATASET_OBJSET_MAP: LazyLock<Arc<Mutex<HashMap<String, (String, String)>>>> =
- LazyLock::new(|| Arc::new(Mutex::new(HashMap::new())));
+static ZFS_DATASET_OBJSET_MAP: LazyLock<Mutex<HashMap<String, (String, String)>>> =
+ LazyLock::new(|| Mutex::new(HashMap::new()));
// parses /proc/spl/kstat/zfs/POOL/objset-ID files
// they have the following format:
--
2.39.5
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* [pbs-devel] [PATCH backup 8/8] add too_many_arguments clippy exception
2025-03-06 13:12 [pbs-devel] [PATCH backup 1/8] server: remove needless clone Maximiliano Sandoval
` (5 preceding siblings ...)
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 7/8] zfs: remove unnecessary arc from dataset object map Maximiliano Sandoval
@ 2025-03-06 13:12 ` Maximiliano Sandoval
2025-03-06 14:00 ` [pbs-devel] applied-series: [PATCH backup 1/8] server: remove needless clone Wolfgang Bumiller
7 siblings, 0 replies; 9+ messages in thread
From: Maximiliano Sandoval @ 2025-03-06 13:12 UTC (permalink / raw)
To: pbs-devel
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
pbs-client/src/pxar/create.rs | 1 +
proxmox-backup-client/src/main.rs | 1 +
2 files changed, 2 insertions(+)
diff --git a/pbs-client/src/pxar/create.rs b/pbs-client/src/pxar/create.rs
index 33a4c29e..4968e4b8 100644
--- a/pbs-client/src/pxar/create.rs
+++ b/pbs-client/src/pxar/create.rs
@@ -871,6 +871,7 @@ impl Archiver {
.await
}
+ #[allow(clippy::too_many_arguments)]
async fn add_entry_to_archive<T: SeqWrite + Send>(
&mut self,
encoder: &mut Encoder<'_, T>,
diff --git a/proxmox-backup-client/src/main.rs b/proxmox-backup-client/src/main.rs
index 26a07b1c..7fa57b2f 100644
--- a/proxmox-backup-client/src/main.rs
+++ b/proxmox-backup-client/src/main.rs
@@ -195,6 +195,7 @@ pub async fn dir_or_last_from_group(
type Catalog = CatalogWriter<TokioWriterAdapter<StdChannelWriter<Error>>>;
+#[allow(clippy::too_many_arguments)]
async fn backup_directory<P: AsRef<Path>>(
client: &BackupWriter,
dir_path: P,
--
2.39.5
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* [pbs-devel] applied-series: [PATCH backup 1/8] server: remove needless clone
2025-03-06 13:12 [pbs-devel] [PATCH backup 1/8] server: remove needless clone Maximiliano Sandoval
` (6 preceding siblings ...)
2025-03-06 13:12 ` [pbs-devel] [PATCH backup 8/8] add too_many_arguments clippy exception Maximiliano Sandoval
@ 2025-03-06 14:00 ` Wolfgang Bumiller
7 siblings, 0 replies; 9+ messages in thread
From: Wolfgang Bumiller @ 2025-03-06 14:00 UTC (permalink / raw)
To: Maximiliano Sandoval; +Cc: pbs-devel
applied series, thanks
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
^ permalink raw reply [flat|nested] 9+ messages in thread