aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/package/version
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/package/version')
-rw-r--r--crates/shirabe/src/package/version/stability_filter.rs8
-rw-r--r--crates/shirabe/src/package/version/version_guesser.rs20
-rw-r--r--crates/shirabe/src/package/version/version_parser.rs8
-rw-r--r--crates/shirabe/src/package/version/version_selector.rs42
4 files changed, 42 insertions, 36 deletions
diff --git a/crates/shirabe/src/package/version/stability_filter.rs b/crates/shirabe/src/package/version/stability_filter.rs
index da2f1a6..0bcfe4a 100644
--- a/crates/shirabe/src/package/version/stability_filter.rs
+++ b/crates/shirabe/src/package/version/stability_filter.rs
@@ -15,10 +15,10 @@ impl StabilityFilter {
for name in names {
// allow if package matches the package-specific stability flag
if let Some(&flag) = stability_flags.get(name) {
- if let Some(&stability_value) = STABILITIES.get(stability) {
- if stability_value <= flag {
- return true;
- }
+ if let Some(&stability_value) = STABILITIES.get(stability)
+ && stability_value <= flag
+ {
+ return true;
}
} else if acceptable_stabilities.contains_key(stability) {
// allow if package matches the global stability requirement and has no exception
diff --git a/crates/shirabe/src/package/version/version_guesser.rs b/crates/shirabe/src/package/version/version_guesser.rs
index 4eb3864..5d41434 100644
--- a/crates/shirabe/src/package/version/version_guesser.rs
+++ b/crates/shirabe/src/package/version/version_guesser.rs
@@ -90,10 +90,10 @@ impl VersionGuesser {
}
let version_data = self.guess_hg_version(package_config, path)?;
- if let Some(vd) = version_data {
- if vd.version.is_some() {
- return Ok(Some(self.postprocess(vd)));
- }
+ if let Some(vd) = version_data
+ && vd.version.is_some()
+ {
+ return Ok(Some(self.postprocess(vd)));
}
let version_data = self.guess_fossil_version(path)?;
@@ -102,10 +102,10 @@ impl VersionGuesser {
}
let version_data = self.guess_svn_version(package_config, path)?;
- if let Some(vd) = version_data {
- if vd.version.is_some() {
- return Ok(Some(self.postprocess(vd)));
- }
+ if let Some(vd) = version_data
+ && vd.version.is_some()
+ {
+ return Ok(Some(self.postprocess(vd)));
}
Ok(None)
@@ -173,7 +173,7 @@ impl VersionGuesser {
package_config: &IndexMap<String, PhpMixed>,
path: &str,
) -> Result<VersionData> {
- GitUtil::clean_env(&mut self.process);
+ GitUtil::clean_env(&self.process);
let mut commit: Option<String> = None;
let mut version: Option<String> = None;
let mut pretty_version: Option<String> = None;
@@ -263,7 +263,7 @@ impl VersionGuesser {
}
}
GitUtil::check_for_repo_ownership_error(
- &self.process.borrow().get_error_output(),
+ self.process.borrow().get_error_output(),
path,
self.io.clone(),
);
diff --git a/crates/shirabe/src/package/version/version_parser.rs b/crates/shirabe/src/package/version/version_parser.rs
index e600c37..87fa6c8 100644
--- a/crates/shirabe/src/package/version/version_parser.rs
+++ b/crates/shirabe/src/package/version/version_parser.rs
@@ -18,6 +18,12 @@ pub struct VersionParser {
inner: SemverVersionParser,
}
+impl Default for VersionParser {
+ fn default() -> Self {
+ Self::new()
+ }
+}
+
impl VersionParser {
pub const DEFAULT_BRANCH_ALIAS: &'static str = "9999999-dev";
@@ -45,7 +51,7 @@ impl VersionParser {
let count = pairs.len();
let mut i = 0_usize;
while i < count {
- let mut pair = Preg::replace(r"{^([^=: ]+)[=: ](.*)$}", "$1 $2", &pairs[i].trim());
+ let mut pair = Preg::replace(r"{^([^=: ]+)[=: ](.*)$}", "$1 $2", pairs[i].trim());
if !pair.contains(' ')
&& i + 1 < count
&& !pairs[i + 1].contains('/')
diff --git a/crates/shirabe/src/package/version/version_selector.rs b/crates/shirabe/src/package/version/version_selector.rs
index 872ca93..0d69132 100644
--- a/crates/shirabe/src/package/version/version_selector.rs
+++ b/crates/shirabe/src/package/version/version_selector.rs
@@ -59,6 +59,7 @@ impl VersionSelector {
})
}
+ #[allow(clippy::too_many_arguments, reason = "to keep PHP signature")]
pub fn find_best_candidate(
&mut self,
package_name: &str,
@@ -92,7 +93,7 @@ impl VersionSelector {
};
let mut candidates = self.repository_set.borrow().find_packages(
&strtolower(package_name),
- constraint.as_ref().map(|c| c.clone()),
+ constraint.clone(),
repo_set_flags,
)?;
@@ -158,16 +159,16 @@ impl VersionSelector {
.as_any()
.downcast_ref::<IgnoreListPlatformRequirementFilter>(
);
- if let Some(list_filter) = list_filter_opt {
- if list_filter.is_upper_bound_ignored(name) {
- let filtered_constraint = list_filter.filter_constraint(
- name,
- link.get_constraint().clone(),
- false,
- )?;
- if filtered_constraint.matches(provided_constraint) {
- continue 'reqs;
- }
+ if let Some(list_filter) = list_filter_opt
+ && list_filter.is_upper_bound_ignored(name)
+ {
+ let filtered_constraint = list_filter.filter_constraint(
+ name,
+ link.get_constraint().clone(),
+ false,
+ )?;
+ if filtered_constraint.matches(provided_constraint) {
+ continue 'reqs;
}
}
}
@@ -220,13 +221,13 @@ impl VersionSelector {
continue;
}
- found_package = Some(pkg.clone().into());
+ found_package = Some(pkg.clone());
break;
}
package = found_package;
} else {
package = if !candidates.is_empty() {
- Some(candidates.remove(0).into())
+ Some(candidates.remove(0))
} else {
None
};
@@ -279,14 +280,13 @@ impl VersionSelector {
let loader = ArrayLoader::new(Some(self.get_parser().clone()), false);
let dumper = ArrayDumper::new();
let extra = loader.get_branch_alias(&dumper.dump(package.clone()))?;
- if let Some(extra) = extra {
- if extra != VersionParser::DEFAULT_BRANCH_ALIAS {
- let new_extra =
- Preg::replace(r"{^(\d+\.\d+\.\d+)(\.9999999)-dev$}", "$1.0", &extra);
- if new_extra != extra {
- let new_extra = new_extra.replace(".9999999", ".0");
- return self.transform_version(&new_extra, &new_extra, "dev");
- }
+ if let Some(extra) = extra
+ && extra != VersionParser::DEFAULT_BRANCH_ALIAS
+ {
+ let new_extra = Preg::replace(r"{^(\d+\.\d+\.\d+)(\.9999999)-dev$}", "$1.0", &extra);
+ if new_extra != extra {
+ let new_extra = new_extra.replace(".9999999", ".0");
+ return self.transform_version(&new_extra, &new_extra, "dev");
}
}