public inbox for pbs-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Maximiliano Sandoval <m.sandoval@proxmox.com>
To: pbs-devel@lists.proxmox.com
Subject: [pbs-devel] [PATCH proxmox 06/10] cargo: run --fix
Date: Mon, 26 Jan 2026 16:13:43 +0100	[thread overview]
Message-ID: <20260126151349.627829-7-m.sandoval@proxmox.com> (raw)
In-Reply-To: <20260126151349.627829-1-m.sandoval@proxmox.com>

It mostly fixes the lippy::collapsible_if lint.

Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
 pbs-api-types/src/maintenance.rs              |  5 ++--
 proxmox-api-macro/src/api/enums.rs            |  5 ++--
 proxmox-api-macro/src/api/method.rs           | 21 ++++++--------
 proxmox-api-macro/src/serde.rs                |  5 ++--
 proxmox-api-macro/src/util.rs                 | 28 ++++++++-----------
 proxmox-apt/src/cache.rs                      |  5 ++--
 proxmox-apt/src/cache_api.rs                  |  5 ++--
 proxmox-apt/src/deb822/release_file.rs        |  5 ++--
 proxmox-apt/src/repositories/file.rs          |  5 ++--
 .../src/repositories/file/list_parser.rs      |  5 ++--
 proxmox-apt/src/repositories/repository.rs    |  5 ++--
 proxmox-config-digest/src/lib.rs              |  5 ++--
 proxmox-ldap/src/sync.rs                      |  5 ++--
 proxmox-rrd/src/cache/journal.rs              | 11 +++-----
 proxmox-section-config/src/lib.rs             |  5 ++--
 proxmox-section-config/src/typed.rs           |  5 ++--
 proxmox-tfa/src/api/mod.rs                    | 14 ++++------
 proxmox-tfa/src/api/webauthn.rs               |  5 ++--
 pve-api-types/src/types/array.rs              |  5 ++--
 pve-api-types/src/types/verifiers.rs          |  9 +++---
 20 files changed, 62 insertions(+), 96 deletions(-)

diff --git a/pbs-api-types/src/maintenance.rs b/pbs-api-types/src/maintenance.rs
index 6b97ff10..404d2c32 100644
--- a/pbs-api-types/src/maintenance.rs
+++ b/pbs-api-types/src/maintenance.rs
@@ -110,11 +110,10 @@ impl MaintenanceMode {
             bail!("offline maintenance mode: {}", message);
         } else if self.ty == MaintenanceType::S3Refresh {
             bail!("S3 refresh maintenance mode: {}", message);
-        } else if self.ty == MaintenanceType::ReadOnly {
-            if let Some(Operation::Write) = operation {
+        } else if self.ty == MaintenanceType::ReadOnly
+            && let Some(Operation::Write) = operation {
                 bail!("read-only maintenance mode: {}", message);
             }
-        }
         Ok(())
     }
 }
diff --git a/proxmox-api-macro/src/api/enums.rs b/proxmox-api-macro/src/api/enums.rs
index ae5c05e1..378e7f05 100644
--- a/proxmox-api-macro/src/api/enums.rs
+++ b/proxmox-api-macro/src/api/enums.rs
@@ -137,8 +137,8 @@ fn handle_string_enum(
             syn::LitStr::new(&name.to_string(), name.span())
         };
 
-        if derives_default {
-            if let Some(attr) = variant.attrs.iter().find(|a| a.path().is_ident("default")) {
+        if derives_default
+            && let Some(attr) = variant.attrs.iter().find(|a| a.path().is_ident("default")) {
                 if let Some(default_value) = &default_value {
                     error!(attr => "multiple default values defined");
                     error!(default_value => "default previously defined here");
@@ -150,7 +150,6 @@ fn handle_string_enum(
                     }
                 }
             }
-        }
 
         variants.extend(quote_spanned! { variant.ident.span() =>
             ::proxmox_schema::EnumEntry {
diff --git a/proxmox-api-macro/src/api/method.rs b/proxmox-api-macro/src/api/method.rs
index ab0801aa..c55a21d4 100644
--- a/proxmox-api-macro/src/api/method.rs
+++ b/proxmox-api-macro/src/api/method.rs
@@ -493,8 +493,8 @@ fn handle_function_signature(method_info: &mut MethodInfo) -> Result<Ident, Erro
 }
 
 fn is_api_method_type(ty: &syn::Type) -> bool {
-    if let syn::Type::Reference(r) = ty {
-        if let syn::Type::Path(p) = &*r.elem {
+    if let syn::Type::Reference(r) = ty
+        && let syn::Type::Path(p) = &*r.elem {
             if p.qself.is_some() {
                 return false;
             }
@@ -502,20 +502,16 @@ fn is_api_method_type(ty: &syn::Type) -> bool {
                 return ps.ident == "ApiMethod";
             }
         }
-    }
     false
 }
 
 fn is_rpc_env_type(ty: &syn::Type) -> bool {
-    if let syn::Type::Reference(r) = ty {
-        if let syn::Type::TraitObject(t) = &*r.elem {
-            if let Some(syn::TypeParamBound::Trait(b)) = t.bounds.first() {
-                if let Some(ps) = b.path.segments.last() {
+    if let syn::Type::Reference(r) = ty
+        && let syn::Type::TraitObject(t) = &*r.elem
+            && let Some(syn::TypeParamBound::Trait(b)) = t.bounds.first()
+                && let Some(ps) = b.path.segments.last() {
                     return ps.ident == "RpcEnvironment";
                 }
-            }
-        }
-    }
     false
 }
 
@@ -945,8 +941,8 @@ struct DefaultParameters<'a>(&'a Schema);
 
 impl VisitMut for DefaultParameters<'_> {
     fn visit_expr_mut(&mut self, i: &mut syn::Expr) {
-        if let syn::Expr::Macro(exprmac) = i {
-            if exprmac.mac.path.is_ident("api_get_default") {
+        if let syn::Expr::Macro(exprmac) = i
+            && exprmac.mac.path.is_ident("api_get_default") {
                 // replace api_get_default macros with the actual default found in the #[api]
                 // macro.
                 match self.get_default(mem::take(&mut exprmac.mac.tokens)) {
@@ -957,7 +953,6 @@ impl VisitMut for DefaultParameters<'_> {
                     }
                 }
             }
-        }
 
         visit_mut::visit_expr_mut(self, i)
     }
diff --git a/proxmox-api-macro/src/serde.rs b/proxmox-api-macro/src/serde.rs
index 0412b945..52dd8fed 100644
--- a/proxmox-api-macro/src/serde.rs
+++ b/proxmox-api-macro/src/serde.rs
@@ -229,11 +229,10 @@ impl FieldAttrib {
     }
 
     pub fn check_non_option_type(&self) {
-        if let Some(span) = self.has_skip_serializing_if {
-            if !self.has_default {
+        if let Some(span) = self.has_skip_serializing_if
+            && !self.has_default {
                 error!(span, "`skip_serializing_if` without `default`");
             }
-        }
     }
 }
 
diff --git a/proxmox-api-macro/src/util.rs b/proxmox-api-macro/src/util.rs
index 9ed3fa0b..042684ff 100644
--- a/proxmox-api-macro/src/util.rs
+++ b/proxmox-api-macro/src/util.rs
@@ -434,19 +434,17 @@ pub fn derive_descriptions(
 
     let mut parts = doc_comment.split("\nReturns:");
 
-    if let Some(first) = parts.next() {
-        if input_schema.description.is_none() {
+    if let Some(first) = parts.next()
+        && input_schema.description.is_none() {
             input_schema.description = Maybe::Derived(syn::LitStr::new(first.trim(), doc_span));
         }
-    }
 
     if let Some(second) = parts.next() {
-        if let Some(returns_schema) = returns_schema {
-            if returns_schema.description.is_none() {
+        if let Some(returns_schema) = returns_schema
+            && returns_schema.description.is_none() {
                 returns_schema.description =
                     Maybe::Derived(syn::LitStr::new(second.trim(), doc_span));
             }
-        }
 
         if parts.next().is_some() {
             bail!(
@@ -519,13 +517,11 @@ pub fn is_option_type(ty: &syn::Type) -> Option<&syn::Type> {
             return None;
         }
 
-        if let syn::PathArguments::AngleBracketed(generic) = &segs.last().unwrap().arguments {
-            if generic.args.len() == 1 {
-                if let syn::GenericArgument::Type(ty) = generic.args.first().unwrap() {
+        if let syn::PathArguments::AngleBracketed(generic) = &segs.last().unwrap().arguments
+            && generic.args.len() == 1
+                && let syn::GenericArgument::Type(ty) = generic.args.first().unwrap() {
                     return Some(ty);
                 }
-            }
-        }
     }
     None
 }
@@ -747,20 +743,18 @@ where
         for arg in std::mem::take(&mut args).into_pairs() {
             match arg {
                 Pair::Punctuated(item, punct) => {
-                    if let syn::Meta::Path(path) = &item {
-                        if !func(path) {
+                    if let syn::Meta::Path(path) = &item
+                        && !func(path) {
                             continue;
                         }
-                    }
                     args.push_value(item);
                     args.push_punct(punct);
                 }
                 Pair::End(item) => {
-                    if let syn::Meta::Path(path) = &item {
-                        if !func(path) {
+                    if let syn::Meta::Path(path) = &item
+                        && !func(path) {
                             continue;
                         }
-                    }
                     args.push_value(item);
                 }
             }
diff --git a/proxmox-apt/src/cache.rs b/proxmox-apt/src/cache.rs
index bd8d6c89..bd12eb22 100644
--- a/proxmox-apt/src/cache.rs
+++ b/proxmox-apt/src/cache.rs
@@ -247,11 +247,10 @@ where
                 // versions anyway
                 let mut pkg_iter = origin.file();
                 let pkg_file = pkg_iter.next();
-                if let Some(pkg_file) = pkg_file {
-                    if let Some(origin_name) = pkg_file.origin() {
+                if let Some(pkg_file) = pkg_file
+                    && let Some(origin_name) = pkg_file.origin() {
                         origin_res = origin_name;
                     }
-                }
             }
 
             if let Some(depends) = depends {
diff --git a/proxmox-apt/src/cache_api.rs b/proxmox-apt/src/cache_api.rs
index 0c55fbc9..d2c7dbfc 100644
--- a/proxmox-apt/src/cache_api.rs
+++ b/proxmox-apt/src/cache_api.rs
@@ -13,11 +13,10 @@ pub fn list_available_apt_update<P: AsRef<Path>>(
     apt_state_file: P,
 ) -> Result<Vec<APTUpdateInfo>, Error> {
     let apt_state_file = apt_state_file.as_ref();
-    if let Ok(false) = crate::cache::pkg_cache_expired(apt_state_file) {
-        if let Ok(Some(cache)) = crate::cache::read_pkg_state(apt_state_file) {
+    if let Ok(false) = crate::cache::pkg_cache_expired(apt_state_file)
+        && let Ok(Some(cache)) = crate::cache::read_pkg_state(apt_state_file) {
             return Ok(cache.package_status);
         }
-    }
 
     let cache = crate::cache::update_cache(apt_state_file)?;
 
diff --git a/proxmox-apt/src/deb822/release_file.rs b/proxmox-apt/src/deb822/release_file.rs
index d7b6009c..e5e9ed74 100644
--- a/proxmox-apt/src/deb822/release_file.rs
+++ b/proxmox-apt/src/deb822/release_file.rs
@@ -150,12 +150,11 @@ impl FileReferenceType {
                 }
                 "debian-installer" => {
                     // another layer, then like regular repo but pointing at udebs
-                    if let Some((dir, rest)) = rest.split_once('/') {
-                        if let Some(arch) = dir.strip_prefix("binary-") {
+                    if let Some((dir, rest)) = rest.split_once('/')
+                        && let Some(arch) = dir.strip_prefix("binary-") {
                             // Packages or compat-Release
                             return parse_binary_dir(rest, arch);
                         }
-                    }
 
                     // all the rest
                     Ok(FileReferenceType::Unknown)
diff --git a/proxmox-apt/src/repositories/file.rs b/proxmox-apt/src/repositories/file.rs
index 1c8afce7..abf9e55e 100644
--- a/proxmox-apt/src/repositories/file.rs
+++ b/proxmox-apt/src/repositories/file.rs
@@ -350,14 +350,13 @@ impl APTRepositoryFileImpl for APTRepositoryFile {
                     add_info("warning", message_new(base_suite));
                 }
 
-                if let Some(require_suffix) = require_suffix {
-                    if suffix != require_suffix {
+                if let Some(require_suffix) = require_suffix
+                    && suffix != require_suffix {
                         add_info(
                             "warning",
                             format!("expected suite '{current_codename}{require_suffix}'"),
                         );
                     }
-                }
             }
         }
 
diff --git a/proxmox-apt/src/repositories/file/list_parser.rs b/proxmox-apt/src/repositories/file/list_parser.rs
index 6eb57157..b800473c 100644
--- a/proxmox-apt/src/repositories/file/list_parser.rs
+++ b/proxmox-apt/src/repositories/file/list_parser.rs
@@ -165,12 +165,11 @@ impl<R: BufRead> APTListFileParser<R> {
         line = line.trim_matches(|c| char::is_ascii_whitespace(&c));
 
         // check for commented out repository first
-        if let Some(commented_out) = line.strip_prefix('#') {
-            if let Ok(Some(mut repo)) = self.parse_one_line(commented_out) {
+        if let Some(commented_out) = line.strip_prefix('#')
+            && let Ok(Some(mut repo)) = self.parse_one_line(commented_out) {
                 repo.set_enabled(false);
                 return Ok(Some(repo));
             }
-        }
 
         let mut repo = APTRepository::new(APTRepositoryFileType::List);
 
diff --git a/proxmox-apt/src/repositories/repository.rs b/proxmox-apt/src/repositories/repository.rs
index 24e7943b..4ec1c4e7 100644
--- a/proxmox-apt/src/repositories/repository.rs
+++ b/proxmox-apt/src/repositories/repository.rs
@@ -224,11 +224,10 @@ fn uri_to_filename(uri: &str) -> String {
         filename = &filename[(begin + 3)..];
     }
 
-    if uri.starts_with("http://") || uri.starts_with("https://") {
-        if let Some(begin) = filename.find('@') {
+    if (uri.starts_with("http://") || uri.starts_with("https://"))
+        && let Some(begin) = filename.find('@') {
             filename = &filename[(begin + 1)..];
         }
-    }
 
     // APT seems to only strip one final slash, so do the same
     filename = filename.strip_suffix('/').unwrap_or(filename);
diff --git a/proxmox-config-digest/src/lib.rs b/proxmox-config-digest/src/lib.rs
index a34a3a90..993e31cc 100644
--- a/proxmox-config-digest/src/lib.rs
+++ b/proxmox-config-digest/src/lib.rs
@@ -41,11 +41,10 @@ impl ConfigDigest {
     ///
     /// This function fails with a reasonable error message if checksums do not match.
     pub fn detect_modification(&self, user_digest: Option<&Self>) -> Result<(), Error> {
-        if let Some(user_digest) = user_digest {
-            if user_digest != self {
+        if let Some(user_digest) = user_digest
+            && user_digest != self {
                 bail!("detected modified configuration - file changed by other user? Try again.");
             }
-        }
         Ok(())
     }
 }
diff --git a/proxmox-ldap/src/sync.rs b/proxmox-ldap/src/sync.rs
index f0d43e14..87841ec3 100644
--- a/proxmox-ldap/src/sync.rs
+++ b/proxmox-ldap/src/sync.rs
@@ -339,13 +339,12 @@ impl LdapRealmSyncJob {
 
                     user_config.sections.remove(&tokenid_string);
 
-                    if !self.dry_run {
-                        if let Err(e) =
+                    if !self.dry_run
+                        && let Err(e) =
                             proxmox_access_control::token_shadow::delete_secret(&tokenid)
                         {
                             log::warn!("could not delete token for user {userid}: {e}",)
                         }
-                    }
 
                     if self.general_sync_settings.should_remove_acls() {
                         acl_config.delete_authid(&tokenid);
diff --git a/proxmox-rrd/src/cache/journal.rs b/proxmox-rrd/src/cache/journal.rs
index 0753d015..a78d06ee 100644
--- a/proxmox-rrd/src/cache/journal.rs
+++ b/proxmox-rrd/src/cache/journal.rs
@@ -170,19 +170,16 @@ impl JournalState {
                 Some(_) => (),
             }
 
-            if let Some(extension) = path.extension() {
-                if let Some(extension) = extension.to_str() {
-                    if let Some(rest) = extension.strip_prefix("journal-") {
-                        if let Ok(time) = u64::from_str_radix(rest, 16) {
+            if let Some(extension) = path.extension()
+                && let Some(extension) = extension.to_str()
+                    && let Some(rest) = extension.strip_prefix("journal-")
+                        && let Ok(time) = u64::from_str_radix(rest, 16) {
                             list.push(JournalFileInfo {
                                 time,
                                 name: format!("rrd.{extension}"),
                                 path: path.to_owned(),
                             });
                         }
-                    }
-                }
-            }
         }
         list.sort_unstable_by_key(|entry| entry.time);
         Ok(list)
diff --git a/proxmox-section-config/src/lib.rs b/proxmox-section-config/src/lib.rs
index 2222fbf1..3fca933d 100644
--- a/proxmox-section-config/src/lib.rs
+++ b/proxmox-section-config/src/lib.rs
@@ -433,12 +433,11 @@ impl SectionConfig {
                                         id_property: &Option<String>|
          -> Result<(), Error> {
             for (name, optional, _prop_schema) in schema.properties() {
-                if let Some(id_property) = id_property {
-                    if name == id_property {
+                if let Some(id_property) = id_property
+                    && name == id_property {
                         // the id_property is the section header, skip for requirement check
                         continue;
                     }
-                }
                 if !*optional && value[name] == Value::Null {
                     return Err(format_err!(
                         "property '{}' is missing and it is not optional.",
diff --git a/proxmox-section-config/src/typed.rs b/proxmox-section-config/src/typed.rs
index 5250fd86..b06d290e 100644
--- a/proxmox-section-config/src/typed.rs
+++ b/proxmox-section-config/src/typed.rs
@@ -215,11 +215,10 @@ impl<T> SectionConfigData<T> {
     {
         let removed_value = self.sections.remove(key);
         // only update the order vector if we actually removed something
-        if removed_value.is_some() {
-            if let Some(pos) = self.order.iter().position(|k| k.borrow() == key) {
+        if removed_value.is_some()
+            && let Some(pos) = self.order.iter().position(|k| k.borrow() == key) {
                 self.order.remove(pos);
             }
-        }
         removed_value
     }
 }
diff --git a/proxmox-tfa/src/api/mod.rs b/proxmox-tfa/src/api/mod.rs
index 5d1386fa..5b2841be 100644
--- a/proxmox-tfa/src/api/mod.rs
+++ b/proxmox-tfa/src/api/mod.rs
@@ -434,11 +434,10 @@ impl TfaConfig {
                     save = true;
                 }
 
-                if save {
-                    if let Err(err) = data.save() {
+                if save
+                    && let Err(err) = data.save() {
                         log::error!("failed to store user challenge data: {err}");
                     }
-                }
                 r
             }
             Ok(r) => r,
@@ -993,8 +992,7 @@ impl TfaUserData {
         if let Some(entry) = self
             .enabled_u2f_entries()
             .find(|e| e.key.key_handle == response.key_handle())
-        {
-            if u2f
+            && u2f
                 .auth_verify_obj(&entry.public_key, &challenge.challenge, response)?
                 .is_some()
             {
@@ -1017,7 +1015,6 @@ impl TfaUserData {
 
                 return Ok(());
             }
-        }
 
         bail!("u2f verification failed");
     }
@@ -1089,8 +1086,8 @@ impl TfaUserData {
         userid: &str,
         value: &str,
     ) -> Result<(), Error> {
-        if let Some(r) = &mut self.recovery {
-            if r.verify(value)? {
+        if let Some(r) = &mut self.recovery
+            && r.verify(value)? {
                 // On success we reset the failure state.
                 self.totp_locked = false;
                 self.tfa_locked_until = None;
@@ -1103,7 +1100,6 @@ impl TfaUserData {
                 }
                 return Ok(());
             }
-        }
         bail!("recovery verification failed");
     }
 
diff --git a/proxmox-tfa/src/api/webauthn.rs b/proxmox-tfa/src/api/webauthn.rs
index 56cf9073..8343d721 100644
--- a/proxmox-tfa/src/api/webauthn.rs
+++ b/proxmox-tfa/src/api/webauthn.rs
@@ -196,11 +196,10 @@ fn force_allow_backup_eligibility(
 ) -> Result<SecurityKeyAuthentication, Error> {
     let mut state =
         serde_json::to_value(&state).context("failed to convert authentication state to json")?;
-    if let Some(obj) = state.get_mut("ast") {
-        if let Some(allow) = obj.get_mut("allow_backup_eligible_upgrade") {
+    if let Some(obj) = state.get_mut("ast")
+        && let Some(allow) = obj.get_mut("allow_backup_eligible_upgrade") {
             *allow = serde_json::Value::Bool(true);
         }
-    }
 
     serde_json::from_value(state).context("failed to convert json back to authentication state")
 }
diff --git a/pve-api-types/src/types/array.rs b/pve-api-types/src/types/array.rs
index 6f468fbf..75a98af4 100644
--- a/pve-api-types/src/types/array.rs
+++ b/pve-api-types/src/types/array.rs
@@ -174,8 +174,8 @@ impl<T, const MAX: usize> ArrayMap<T, { MAX }> {
                 let mut this = ArrayMap::default();
 
                 while let Some((key, value)) = map.next_entry::<std::borrow::Cow<str>, T>()? {
-                    if let Some(id) = key.as_ref().strip_prefix(self.prefix) {
-                        if let Ok(id) = id.parse::<usize>() {
+                    if let Some(id) = key.as_ref().strip_prefix(self.prefix)
+                        && let Ok(id) = id.parse::<usize>() {
                             if this.insert(id, value).map_err(A::Error::custom)?.is_some() {
                                 return Err(A::Error::custom(format!(
                                     "multiple '{}{id}' elements",
@@ -184,7 +184,6 @@ impl<T, const MAX: usize> ArrayMap<T, { MAX }> {
                             }
                             continue;
                         }
-                    }
                     return Err(A::Error::custom(format!(
                         "invalid array element name {key}"
                     )));
diff --git a/pve-api-types/src/types/verifiers.rs b/pve-api-types/src/types/verifiers.rs
index c45063b5..18d16470 100644
--- a/pve-api-types/src/types/verifiers.rs
+++ b/pve-api-types/src/types/verifiers.rs
@@ -152,9 +152,9 @@ pub fn verify_cidrv6(s: &str) -> Result<(), Error> {
 
 pub fn verify_ip_or_cidr(s: &str) -> Result<(), Error> {
     if verify_cidr(s).is_ok() {
-        return Ok(());
+        Ok(())
     } else if verify_ip(s).is_ok() {
-        return Ok(());
+        Ok(())
     } else {
         bail!("not a valid IP address or CIDR notation");
     }
@@ -217,11 +217,10 @@ pub fn verify_lxc_mp_string(s: &str) -> Result<(), Error> {
 }
 
 pub fn verify_ip_with_ll_iface(s: &str) -> Result<(), Error> {
-    if let Some(percent) = s.find('%') {
-        if FE80_RE.is_match(s) && IFACE_RE.is_match(&s[(percent + 1)..]) {
+    if let Some(percent) = s.find('%')
+        && FE80_RE.is_match(s) && IFACE_RE.is_match(&s[(percent + 1)..]) {
             return verify_ipv6(&s[..percent]);
         }
-    }
     verify_ip(s)
 }
 
-- 
2.47.3



_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel


  parent reply	other threads:[~2026-01-26 15:14 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-26 15:13 [pbs-devel] [PATCH proxmox 00/10] Bump edition to 2024 Maximiliano Sandoval
2026-01-26 15:13 ` [pbs-devel] [PATCH proxmox 01/10] adapt to rust 2024 match ergonomics Maximiliano Sandoval
2026-01-26 15:13 ` [pbs-devel] [PATCH proxmox 02/10] rustfmt: Set style_edition to 2021 Maximiliano Sandoval
2026-01-26 15:13 ` [pbs-devel] [PATCH proxmox 03/10] cargo: set workspace edition to 2024 Maximiliano Sandoval
2026-01-26 15:13 ` [pbs-devel] [PATCH proxmox 04/10] cargo: run fmt Maximiliano Sandoval
2026-01-26 15:13 ` [pbs-devel] [PATCH proxmox 05/10] cargo: set resolver to 3 Maximiliano Sandoval
2026-01-26 15:13 ` Maximiliano Sandoval [this message]
2026-01-26 15:13 ` [pbs-devel] [PATCH proxmox 07/10] cargo: run fmt again Maximiliano Sandoval
2026-01-26 15:13 ` [pbs-devel] [PATCH proxmox 08/10] Remove rustfmt.toml and run cargo fmt Maximiliano Sandoval
2026-01-26 15:13 ` [pbs-devel] [PATCH proxmox 09/10] cargo: run fmt with 2024 style Maximiliano Sandoval
2026-01-26 15:13 ` [pbs-devel] [PATCH proxmox 10/10] pve-api-types: specify rustfmt --edition 2024 Maximiliano Sandoval

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260126151349.627829-7-m.sandoval@proxmox.com \
    --to=m.sandoval@proxmox.com \
    --cc=pbs-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal