From a7c90a277235fa825f9cfa137aa281da3c0e9acd Mon Sep 17 00:00:00 2001 From: nsfisis Date: Wed, 24 Jun 2026 01:20:46 +0900 Subject: refactor(crates): split metadata-minifier and spdx-licenses into own crates Move MetadataMinifier and SpdxLicenses out of shirabe-external-packages into dedicated shirabe-metadata-minifier and shirabe-spdx-licenses crates, updating all import sites accordingly. Co-Authored-By: Claude Opus 4.8 (1M context) --- .../metadata_minifier/metadata_minifier.rs | 38 ---------------------- .../src/composer/metadata_minifier/mod.rs | 3 -- .../shirabe-external-packages/src/composer/mod.rs | 4 --- .../src/composer/spdx_licenses/mod.rs | 3 -- .../src/composer/spdx_licenses/spdx_licenses.rs | 30 ----------------- 5 files changed, 78 deletions(-) delete mode 100644 crates/shirabe-external-packages/src/composer/metadata_minifier/metadata_minifier.rs delete mode 100644 crates/shirabe-external-packages/src/composer/metadata_minifier/mod.rs delete mode 100644 crates/shirabe-external-packages/src/composer/spdx_licenses/mod.rs delete mode 100644 crates/shirabe-external-packages/src/composer/spdx_licenses/spdx_licenses.rs (limited to 'crates/shirabe-external-packages/src') diff --git a/crates/shirabe-external-packages/src/composer/metadata_minifier/metadata_minifier.rs b/crates/shirabe-external-packages/src/composer/metadata_minifier/metadata_minifier.rs deleted file mode 100644 index 3f1a4fc..0000000 --- a/crates/shirabe-external-packages/src/composer/metadata_minifier/metadata_minifier.rs +++ /dev/null @@ -1,38 +0,0 @@ -//! ref: composer/vendor/composer/metadata-minifier/src/MetadataMinifier.php - -use indexmap::IndexMap; -use shirabe_php_shim::PhpMixed; - -#[derive(Debug)] -pub struct MetadataMinifier; - -impl MetadataMinifier { - pub fn expand(versions: Vec>) -> Vec> { - let mut expanded: Vec> = Vec::new(); - let mut expanded_version: Option> = None; - for version_data in versions { - if expanded_version.as_ref().is_none_or(|ev| ev.is_empty()) { - expanded.push(version_data.clone()); - expanded_version = Some(version_data); - continue; - } - - // add any changes from the previous version to the expanded one - let ev = expanded_version.as_mut().unwrap(); - for (key, val) in version_data { - if matches!(&val, PhpMixed::String(s) if s == "__unset") { - ev.shift_remove(&key); - } else { - ev.insert(key, val); - } - } - - expanded.push(ev.clone()); - } - - expanded - } - - // MetadataMinifier::minify() is not ported because it is not used in Composer itself. - // The function is mainly for package repositories. -} diff --git a/crates/shirabe-external-packages/src/composer/metadata_minifier/mod.rs b/crates/shirabe-external-packages/src/composer/metadata_minifier/mod.rs deleted file mode 100644 index d14cace..0000000 --- a/crates/shirabe-external-packages/src/composer/metadata_minifier/mod.rs +++ /dev/null @@ -1,3 +0,0 @@ -pub mod metadata_minifier; - -pub use metadata_minifier::*; diff --git a/crates/shirabe-external-packages/src/composer/mod.rs b/crates/shirabe-external-packages/src/composer/mod.rs index e5cccdb..0fcd787 100644 --- a/crates/shirabe-external-packages/src/composer/mod.rs +++ b/crates/shirabe-external-packages/src/composer/mod.rs @@ -1,15 +1,11 @@ pub mod ca_bundle; -pub mod metadata_minifier; pub mod pcre; pub mod semver; -pub mod spdx_licenses; pub mod util; pub mod xdebug_handler; pub use ca_bundle::*; -pub use metadata_minifier::*; pub use pcre::*; pub use semver::*; -pub use spdx_licenses::*; pub use util::*; pub use xdebug_handler::*; diff --git a/crates/shirabe-external-packages/src/composer/spdx_licenses/mod.rs b/crates/shirabe-external-packages/src/composer/spdx_licenses/mod.rs deleted file mode 100644 index 5a01abc..0000000 --- a/crates/shirabe-external-packages/src/composer/spdx_licenses/mod.rs +++ /dev/null @@ -1,3 +0,0 @@ -pub mod spdx_licenses; - -pub use spdx_licenses::*; diff --git a/crates/shirabe-external-packages/src/composer/spdx_licenses/spdx_licenses.rs b/crates/shirabe-external-packages/src/composer/spdx_licenses/spdx_licenses.rs deleted file mode 100644 index b955ccd..0000000 --- a/crates/shirabe-external-packages/src/composer/spdx_licenses/spdx_licenses.rs +++ /dev/null @@ -1,30 +0,0 @@ -//! ref: composer/vendor/composer/spdx-licenses/src/SpdxLicenses.php - -use shirabe_php_shim::PhpMixed; - -#[derive(Debug)] -pub struct SpdxLicenses; - -impl Default for SpdxLicenses { - fn default() -> Self { - Self::new() - } -} - -impl SpdxLicenses { - pub fn new() -> Self { - todo!() - } - - pub fn validate(&self, _license: &str) -> bool { - todo!() - } - - pub fn get_license_by_identifier(&self, _identifier: &str) -> Option { - todo!() - } - - pub fn get_licenses(&self) -> PhpMixed { - todo!() - } -} -- cgit v1.3.1