From 716f44031a39c5e43fb441ecc470db76efc23dd4 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 14 Jun 2026 11:24:36 +0900 Subject: refactor(pcre): drop Result from Preg method return types The Preg methods panic on PCRE failure (per the file header rationale), so their anyhow::Result wrappers never carried an Err. Co-Authored-By: Claude Opus 4.8 --- crates/shirabe/src/util/http/curl_downloader.rs | 8 ++++---- crates/shirabe/src/util/http/response.rs | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'crates/shirabe/src/util/http') diff --git a/crates/shirabe/src/util/http/curl_downloader.rs b/crates/shirabe/src/util/http/curl_downloader.rs index 37993f9..98f874a 100644 --- a/crates/shirabe/src/util/http/curl_downloader.rs +++ b/crates/shirabe/src/util/http/curl_downloader.rs @@ -333,7 +333,7 @@ impl CurlDownloader { let original_options = options.clone(); // check URL can be accessed (i.e. is not insecure), but allow insecure Packagist calls to $hashed providers as file integrity is verified with sha256 - if !Preg::is_match(r"{^http://(repo\.)?packagist\.org/p/}", url).unwrap_or(false) + if !Preg::is_match(r"{^http://(repo\.)?packagist\.org/p/}", url) || (strpos(url, "$").is_none() && strpos(url, "%24").is_none()) { self.config.borrow_mut().prohibit_url_by_config( @@ -1582,7 +1582,7 @@ impl CurlDownloader { ), &format!("\\1{}", location_header), job_url, - )?; + ); } else { // Relative path; e.g. foo // This actually differs from PHP which seems to add duplicate slashes. @@ -1591,7 +1591,7 @@ impl CurlDownloader { r"{^(.+/)[^/?]*(?:\?.*)?$}", &format!("\\1{}", location_header), job_url, - )?; + ); } } } @@ -1690,7 +1690,7 @@ impl CurlDownloader { .inner .get_header("content-type") .unwrap_or_default(), - )? + ) { needs_auth_retry = Some("Bitbucket requires authentication and it was not provided"); } diff --git a/crates/shirabe/src/util/http/response.rs b/crates/shirabe/src/util/http/response.rs index 4810397..ad55fa2 100644 --- a/crates/shirabe/src/util/http/response.rs +++ b/crates/shirabe/src/util/http/response.rs @@ -29,7 +29,7 @@ impl Response { pub fn get_status_message(&self) -> Option { let mut value = None; for header in &self.headers { - if Preg::is_match(r"(?i)^HTTP/\S+ \d+", header).unwrap_or(false) { + if Preg::is_match(r"(?i)^HTTP/\S+ \d+", header) { // In case of redirects, headers contain the headers of all responses // so we can not return directly and need to keep iterating value = Some(header.clone()); @@ -69,7 +69,7 @@ impl Response { shirabe_external_packages::composer::pcre::CaptureKey, String, > = indexmap::IndexMap::new(); - if Preg::match3(&pattern, header, Some(&mut matches)).unwrap_or(false) { + if Preg::match3(&pattern, header, Some(&mut matches)) { if let Some(s) = matches.get(&shirabe_external_packages::composer::pcre::CaptureKey::ByIndex(1)) { -- cgit v1.3.1