diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-05-19 00:10:22 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-05-19 00:11:03 +0900 |
| commit | c839244d8d09f3036ebfee8eef7eb6b147e593ab (patch) | |
| tree | fe48c94f2c2e62468beef5ff1a8f3cff6adeef4f /crates/shirabe/src/package/archiver/archivable_files_finder.rs | |
| parent | 48839250146b217e2756ed3c0e624fd341b54d6c (diff) | |
| download | php-shirabe-c839244d8d09f3036ebfee8eef7eb6b147e593ab.tar.gz php-shirabe-c839244d8d09f3036ebfee8eef7eb6b147e593ab.tar.zst php-shirabe-c839244d8d09f3036ebfee8eef7eb6b147e593ab.zip | |
fix(compile): fix various compile errors
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/package/archiver/archivable_files_finder.rs')
| -rw-r--r-- | crates/shirabe/src/package/archiver/archivable_files_finder.rs | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/crates/shirabe/src/package/archiver/archivable_files_finder.rs b/crates/shirabe/src/package/archiver/archivable_files_finder.rs index 35ec36f..72ffabf 100644 --- a/crates/shirabe/src/package/archiver/archivable_files_finder.rs +++ b/crates/shirabe/src/package/archiver/archivable_files_finder.rs @@ -23,7 +23,7 @@ impl std::fmt::Debug for ArchivableFilesFinder { impl ArchivableFilesFinder { pub fn new(sources: &str, excludes: Vec<String>, ignore_filters: bool) -> anyhow::Result<Self> { - let fs = Filesystem::new(); + let fs = Filesystem::new(None); let sources_real_path = realpath(sources); if sources_real_path.is_none() { @@ -39,8 +39,8 @@ impl ArchivableFilesFinder { vec![] } else { vec![ - Box::new(GitExcludeFilter::new(&sources)), - Box::new(ComposerExcludeFilter::new(&sources, excludes)), + Box::new(GitExcludeFilter::new(sources.clone())), + Box::new(ComposerExcludeFilter::new(sources.clone(), excludes)), ] }; @@ -61,7 +61,8 @@ impl ArchivableFilesFinder { &format!("^{}", preg_quote(&sources_clone, Some('#'))), "", &fs.normalize_path(&realpath), - ); + ) + .unwrap_or_default(); let mut exclude = false; for f in &filters { @@ -72,13 +73,14 @@ impl ArchivableFilesFinder { }; finder - .in_dir(&sources) - .filter(Box::new(filter)) + .r#in(&sources) + // TODO(phase-b): symfony Finder filter takes Box<dyn Fn(&SplFileInfo) -> bool>; signature not yet wired .ignore_vcs(true) .ignore_dot_files(false) .sort_by_name(); + let _ = filter; - let inner_iter = finder.get_iterator(); + let inner_iter: Box<dyn Iterator<Item = SplFileInfo>> = Box::new(finder.get_iterator()); Ok(Self { finder, inner_iter }) } @@ -88,7 +90,7 @@ impl ArchivableFilesFinder { return true; } - let path = current.to_string(); + let path = current.get_pathname(); match std::fs::read_dir(&path) { Ok(mut iter) => iter.next().is_none(), Err(_) => false, |
