diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2024-03-27 14:25:39 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-27 14:25:39 -0400 |
commit | 68fecc6de4b2e6556adeb2730798bf42017c4be6 (patch) | |
tree | ed7b7644221e4a53f30df3e33d41e7994e10b169 /cli/util/fs.rs | |
parent | 0e4d1cb5f9a3645f6da480b2b8540568fa69d675 (diff) |
fix: less aggressive vendor folder ignoring (#23100)
This is slightly breaking as some users want the `vendor` folder
excluded and may not have that specified in their deno.json.
Closes #22833
Diffstat (limited to 'cli/util/fs.rs')
-rw-r--r-- | cli/util/fs.rs | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/cli/util/fs.rs b/cli/util/fs.rs index 047bf18dc..ba55eb89d 100644 --- a/cli/util/fs.rs +++ b/cli/util/fs.rs @@ -260,7 +260,6 @@ pub struct FileCollector<TFilter: Fn(WalkEntry) -> bool> { file_filter: TFilter, ignore_git_folder: bool, ignore_node_modules: bool, - ignore_vendor_folder: bool, vendor_folder: Option<PathBuf>, use_gitignore: bool, } @@ -271,7 +270,6 @@ impl<TFilter: Fn(WalkEntry) -> bool> FileCollector<TFilter> { file_filter, ignore_git_folder: false, ignore_node_modules: false, - ignore_vendor_folder: false, vendor_folder: None, use_gitignore: false, } @@ -282,11 +280,6 @@ impl<TFilter: Fn(WalkEntry) -> bool> FileCollector<TFilter> { self } - pub fn ignore_vendor_folder(mut self) -> Self { - self.ignore_vendor_folder = true; - self - } - pub fn set_vendor_folder(mut self, vendor_folder: Option<PathBuf>) -> Self { self.vendor_folder = vendor_folder; self @@ -422,7 +415,6 @@ impl<TFilter: Fn(WalkEntry) -> bool> FileCollector<TFilter> { let dir_name = dir_name.to_string_lossy().to_lowercase(); let is_ignored_file = match dir_name.as_str() { "node_modules" => self.ignore_node_modules, - "vendor" => self.ignore_vendor_folder, ".git" => self.ignore_git_folder, _ => false, }; @@ -446,6 +438,7 @@ impl<TFilter: Fn(WalkEntry) -> bool> FileCollector<TFilter> { /// Note: This ignores all .git and node_modules folders. pub fn collect_specifiers( mut files: FilePatterns, + vendor_folder: Option<PathBuf>, predicate: impl Fn(WalkEntry) -> bool, ) -> Result<Vec<ModuleSpecifier>, AnyError> { let mut prepared = vec![]; @@ -484,7 +477,7 @@ pub fn collect_specifiers( let collected_files = FileCollector::new(predicate) .ignore_git_folder() .ignore_node_modules() - .ignore_vendor_folder() + .set_vendor_folder(vendor_folder) .collect_file_patterns(files)?; let mut collected_files_as_urls = collected_files .iter() @@ -958,7 +951,7 @@ mod tests { let file_collector = file_collector .ignore_git_folder() .ignore_node_modules() - .ignore_vendor_folder(); + .set_vendor_folder(Some(child_dir_path.join("vendor").to_path_buf())); let result = file_collector .collect_file_patterns(file_patterns.clone()) .unwrap(); @@ -1074,6 +1067,7 @@ mod tests { ignore_dir_path.to_path_buf(), )]), }, + None, predicate, ) .unwrap(); @@ -1119,6 +1113,7 @@ mod tests { .unwrap()])), exclude: Default::default(), }, + None, predicate, ) .unwrap(); |