diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-06-25 17:49:35 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-06-26 00:20:05 +0900 |
| commit | d4ec1dcb6fc04ff029ded35cc2fcc14f3bbc02ad (patch) | |
| tree | 0a85bd085961fcdfd5570cafc3b44ba5eb8cb152 /crates/shirabe/src/package/loader/array_loader.rs | |
| parent | 22d0b327368e5f39de6f381046c081d08efdba15 (diff) | |
| download | php-shirabe-d4ec1dcb6fc04ff029ded35cc2fcc14f3bbc02ad.tar.gz php-shirabe-d4ec1dcb6fc04ff029ded35cc2fcc14f3bbc02ad.tar.zst php-shirabe-d4ec1dcb6fc04ff029ded35cc2fcc14f3bbc02ad.zip | |
test: port 32 command/repository/downloader tests
Add create_installed_json/create_composer_lock test helpers. Port command (8),
repository path/forgejo/perforce/vcs (11), and fossil/hg/download_manager (13)
tests. Fix production porting bugs: root_package_loader/forgejo_url/version_bumper
regex delimiters, repository_manager create_repository_by_class, array_loader
isset, licenses_command RefCell borrow; implement disk_free_space and
touch2/touch3 via libc.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/package/loader/array_loader.rs')
| -rw-r--r-- | crates/shirabe/src/package/loader/array_loader.rs | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/crates/shirabe/src/package/loader/array_loader.rs b/crates/shirabe/src/package/loader/array_loader.rs index 844b3ef..20280e0 100644 --- a/crates/shirabe/src/package/loader/array_loader.rs +++ b/crates/shirabe/src/package/loader/array_loader.rs @@ -370,7 +370,7 @@ impl ArrayLoader { package.package_mut().set_is_default_branch(true); } - if let Some(source) = config.get("source").cloned() { + if let Some(source) = config.get("source").filter(|v| !v.is_null()).cloned() { let source_map = match &source { PhpMixed::Array(m) => Some(m.clone()), _ => None, @@ -404,9 +404,12 @@ impl ArrayLoader { package .package_mut() .set_source_url(source_map.get("url").map(|v| strval(v))); - package - .package_mut() - .set_source_reference(source_map.get("reference").map(|v| strval(v))); + package.package_mut().set_source_reference( + source_map + .get("reference") + .filter(|v| !v.is_null()) + .map(|v| strval(v)), + ); if let Some(mirrors) = source_map.get("mirrors") { package .package_mut() @@ -414,7 +417,7 @@ impl ArrayLoader { } } - if let Some(dist) = config.get("dist").cloned() { + if let Some(dist) = config.get("dist").filter(|v| !v.is_null()).cloned() { let dist_map = match &dist { PhpMixed::Array(m) => Some(m.clone()), _ => None, @@ -446,9 +449,12 @@ impl ArrayLoader { package .package_mut() .set_dist_url(dist_map.get("url").map(|v| strval(v))); - package - .package_mut() - .set_dist_reference(dist_map.get("reference").map(|v| strval(v))); + package.package_mut().set_dist_reference( + dist_map + .get("reference") + .filter(|v| !v.is_null()) + .map(|v| strval(v)), + ); package .package_mut() .set_dist_sha1_checksum(dist_map.get("shasum").map(|v| strval(v))); |
