From e8e4794efb324bbdd2f29805e7a96cf1ee1616a8 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 14 Jun 2026 13:58:59 +0900 Subject: refactor: fix warnings --- Cargo.toml | 3 ++- crates/shirabe-class-map-generator/src/class_map.rs | 2 +- .../src/symfony/console/helper/table.rs | 2 +- crates/shirabe-external-packages/src/symfony/mod.rs | 6 ------ crates/shirabe-semver/src/semver.rs | 2 ++ crates/shirabe/src/command/remove_command.rs | 6 +++--- .../src/dependency_resolver/lock_transaction.rs | 7 +++++-- crates/shirabe/src/dependency_resolver/request.rs | 3 ++- crates/shirabe/src/downloader/archive_downloader.rs | 3 ++- crates/shirabe/src/repository/composer_repository.rs | 20 ++++++++++---------- crates/shirabe/src/repository/repository_manager.rs | 6 +++--- crates/shirabe/src/util/package_sorter.rs | 2 +- crates/shirabe/src/util/stream_context_factory.rs | 2 +- 13 files changed, 33 insertions(+), 31 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index accaec5..8747cba 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -27,4 +27,5 @@ url = "2.5.8" zip = "8.6.0" [workspace.lints.rust] -warnings = "allow" +async_fn_in_trait = "allow" +unused = "allow" diff --git a/crates/shirabe-class-map-generator/src/class_map.rs b/crates/shirabe-class-map-generator/src/class_map.rs index 8a29373..0b828be 100644 --- a/crates/shirabe-class-map-generator/src/class_map.rs +++ b/crates/shirabe-class-map-generator/src/class_map.rs @@ -84,7 +84,7 @@ impl ClassMap { } pub fn add_class(&mut self, class_name: String, path: String) { - self.psr_violations.remove(&strtr(&path, "\\", "/")); + self.psr_violations.shift_remove(&strtr(&path, "\\", "/")); self.map.insert(class_name, path); } diff --git a/crates/shirabe-external-packages/src/symfony/console/helper/table.rs b/crates/shirabe-external-packages/src/symfony/console/helper/table.rs index 71d6c78..a9a2457 100644 --- a/crates/shirabe-external-packages/src/symfony/console/helper/table.rs +++ b/crates/shirabe-external-packages/src/symfony/console/helper/table.rs @@ -651,7 +651,7 @@ impl Table { - shirabe_php_shim::mb_strwidth(&cell_str, Some(&encoding)); } - let style = self.get_column_style(column).clone(); + let style = self.get_column_style(column); if shirabe_php_shim::instance_of::(&cell) { return shirabe_php_shim::sprintf( diff --git a/crates/shirabe-external-packages/src/symfony/mod.rs b/crates/shirabe-external-packages/src/symfony/mod.rs index e4feb6f..9c572b2 100644 --- a/crates/shirabe-external-packages/src/symfony/mod.rs +++ b/crates/shirabe-external-packages/src/symfony/mod.rs @@ -3,9 +3,3 @@ pub mod filesystem; pub mod finder; pub mod process; pub mod string; - -pub use console::*; -pub use filesystem::*; -pub use finder::*; -pub use process::*; -pub use string::*; diff --git a/crates/shirabe-semver/src/semver.rs b/crates/shirabe-semver/src/semver.rs index 2314069..9793fd8 100644 --- a/crates/shirabe-semver/src/semver.rs +++ b/crates/shirabe-semver/src/semver.rs @@ -56,6 +56,8 @@ impl Semver { .enumerate() .map(|(key, version)| -> anyhow::Result<(String, usize)> { let normalized_version = version_parser.normalize(version, None)?; + // The original PHP code still uses this deprecated function internally. + #[allow(deprecated)] let normalized_version = version_parser.normalize_default_branch(&normalized_version); Ok((normalized_version, key)) diff --git a/crates/shirabe/src/command/remove_command.rs b/crates/shirabe/src/command/remove_command.rs index 75f1dcb..3604c90 100644 --- a/crates/shirabe/src/command/remove_command.rs +++ b/crates/shirabe/src/command/remove_command.rs @@ -478,12 +478,12 @@ impl RemoveCommand { for (link_type, names) in &to_remove { for name in names { if let Some(section) = links.get_mut(link_type.as_str()) { - section.remove(name.as_str()); + section.shift_remove(name.as_str()); } } } - root_package.set_requires(links.remove("require").unwrap_or_default()); - root_package.set_dev_requires(links.remove("require-dev").unwrap_or_default()); + root_package.set_requires(links.shift_remove("require").unwrap_or_default()); + root_package.set_dev_requires(links.shift_remove("require-dev").unwrap_or_default()); } let mut command_event = crate::plugin::CommandEvent::new( diff --git a/crates/shirabe/src/dependency_resolver/lock_transaction.rs b/crates/shirabe/src/dependency_resolver/lock_transaction.rs index 77fa65f..30706f5 100644 --- a/crates/shirabe/src/dependency_resolver/lock_transaction.rs +++ b/crates/shirabe/src/dependency_resolver/lock_transaction.rs @@ -75,11 +75,14 @@ impl LockTransaction { pub fn set_non_dev_packages(&mut self, extraction_result: &LockTransaction) { let packages = extraction_result.get_new_lock_packages(false, false); - let non_dev = self.result_packages.remove("non-dev").unwrap_or_default(); + let non_dev = self + .result_packages + .shift_remove("non-dev") + .unwrap_or_default(); self.result_packages.insert("dev".to_string(), non_dev); self.result_packages.insert("non-dev".to_string(), vec![]); - let mut remaining_dev = self.result_packages.remove("dev").unwrap_or_default(); + let mut remaining_dev = self.result_packages.shift_remove("dev").unwrap_or_default(); for package in &packages { let mut i = 0; while i < remaining_dev.len() { diff --git a/crates/shirabe/src/dependency_resolver/request.rs b/crates/shirabe/src/dependency_resolver/request.rs index 83efb9b..d391c0a 100644 --- a/crates/shirabe/src/dependency_resolver/request.rs +++ b/crates/shirabe/src/dependency_resolver/request.rs @@ -127,7 +127,8 @@ impl Request { } pub fn unlock_package(&mut self, package: BasePackageHandle) { - self.locked_packages.remove(&package.ptr_id().to_string()); + self.locked_packages + .shift_remove(&package.ptr_id().to_string()); } pub fn set_update_allow_list( diff --git a/crates/shirabe/src/downloader/archive_downloader.rs b/crates/shirabe/src/downloader/archive_downloader.rs index a44e9c5..9003e63 100644 --- a/crates/shirabe/src/downloader/archive_downloader.rs +++ b/crates/shirabe/src/downloader/archive_downloader.rs @@ -37,7 +37,8 @@ pub trait ArchiveDownloader { path: &str, prev_package: Option, ) -> Result> { - self.cleanup_executed_mut().remove(&package.get_name()); + self.cleanup_executed_mut() + .shift_remove(&package.get_name()); self.inner_mut() .prepare(r#type, package, path, prev_package) .await diff --git a/crates/shirabe/src/repository/composer_repository.rs b/crates/shirabe/src/repository/composer_repository.rs index c1e2379..4cc106f 100644 --- a/crates/shirabe/src/repository/composer_repository.rs +++ b/crates/shirabe/src/repository/composer_repository.rs @@ -118,10 +118,10 @@ pub struct ComposerRepository { security_advisory_config: Option, /// list of package names which are fresh and can be loaded from the cache directly in case loadPackage is called several times /// useful for v2 metadata repositories with lazy providers - freshMetadataUrls: IndexMap, + fresh_metadata_urls: IndexMap, /// list of package names which returned a 404 and should not be re-fetched in case loadPackage is called several times /// useful for v2 metadata repositories with lazy providers - packagesNotFoundCache: IndexMap, + packages_not_found_cache: IndexMap, version_parser: VersionParser, } @@ -311,8 +311,8 @@ impl ComposerRepository { partial_packages_by_name: None, displayed_warning_about_non_matching_package_index: false, security_advisory_config: None, - freshMetadataUrls: IndexMap::new(), - packagesNotFoundCache: IndexMap::new(), + fresh_metadata_urls: IndexMap::new(), + packages_not_found_cache: IndexMap::new(), version_parser, }; this.cache @@ -3094,7 +3094,7 @@ impl ComposerRepository { .into()); } - if self.packagesNotFoundCache.contains_key(filename) { + if self.packages_not_found_cache.contains_key(filename) { let mut empty: IndexMap = IndexMap::new(); empty.insert("packages".to_string(), PhpMixed::Array(IndexMap::new())); return Ok(PhpMixed::Array( @@ -3102,7 +3102,7 @@ impl ComposerRepository { )); } - if self.freshMetadataUrls.contains_key(filename) && last_modified_time.is_some() { + if self.fresh_metadata_urls.contains_key(filename) && last_modified_time.is_some() { // make it look like we got a 304 response return Ok(PhpMixed::Bool(true)); } @@ -3190,7 +3190,7 @@ impl ComposerRepository { ) -> anyhow::Result { // package not found is acceptable for a v2 protocol repository if response.get_status_code() == 404 { - self.packagesNotFoundCache + self.packages_not_found_cache .insert(filename.to_string(), true); let mut empty: IndexMap = IndexMap::new(); @@ -3202,7 +3202,7 @@ impl ComposerRepository { let mut json = response.get_body().unwrap_or("").to_string(); if json.is_empty() && response.get_status_code() == 304 { - self.freshMetadataUrls.insert(filename.to_string(), true); + self.fresh_metadata_urls.insert(filename.to_string(), true); return Ok(PhpMixed::Bool(true)); } @@ -3236,7 +3236,7 @@ impl ComposerRepository { if !self.cache.is_read_only() { self.cache.write(cache_key, &json); } - self.freshMetadataUrls.insert(filename.to_string(), true); + self.fresh_metadata_urls.insert(filename.to_string(), true); Ok(PhpMixed::Array( data.into_iter().map(|(k, v)| (k, Box::new(v))).collect(), @@ -3254,7 +3254,7 @@ impl ComposerRepository { ) -> anyhow::Result { if let Some(te) = e.downcast_ref::() { if te.get_status_code() == Some(404) { - self.packagesNotFoundCache + self.packages_not_found_cache .insert(filename.to_string(), true); return Ok(PhpMixed::Bool(false)); diff --git a/crates/shirabe/src/repository/repository_manager.rs b/crates/shirabe/src/repository/repository_manager.rs index 9b1d9ab..9027af6 100644 --- a/crates/shirabe/src/repository/repository_manager.rs +++ b/crates/shirabe/src/repository/repository_manager.rs @@ -131,9 +131,9 @@ impl RepositoryManager { }; let mut cleaned_config = config; - cleaned_config.remove("only"); - cleaned_config.remove("exclude"); - cleaned_config.remove("canonical"); + cleaned_config.shift_remove("only"); + cleaned_config.shift_remove("exclude"); + cleaned_config.shift_remove("canonical"); // Phase B: implement dynamic class instantiation by class name let repository = self.create_repository_by_class(&class, cleaned_config)?; diff --git a/crates/shirabe/src/util/package_sorter.rs b/crates/shirabe/src/util/package_sorter.rs index 97b2561..8361dcc 100644 --- a/crates/shirabe/src/util/package_sorter.rs +++ b/crates/shirabe/src/util/package_sorter.rs @@ -112,7 +112,7 @@ impl ComputeImportanceHelper<'_> { weight -= 1 - self.compute(user); } } - self.computing.remove(name); + self.computing.shift_remove(name); self.computed.insert(name.to_string(), weight); weight } diff --git a/crates/shirabe/src/util/stream_context_factory.rs b/crates/shirabe/src/util/stream_context_factory.rs index 488d807..7d8ab3f 100644 --- a/crates/shirabe/src/util/stream_context_factory.rs +++ b/crates/shirabe/src/util/stream_context_factory.rs @@ -45,7 +45,7 @@ impl StreamContextFactory { let default_options = { let mut o = default_options; if let Some(PhpMixed::Array(http)) = o.get_mut("http") { - http.remove("header"); + http.shift_remove("header"); } o }; -- cgit v1.3.1