summaryrefslogtreecommitdiff
path: root/cli/standalone/virtual_fs.rs
diff options
context:
space:
mode:
authorDavid Sherret <dsherret@users.noreply.github.com>2024-08-19 12:41:11 -0400
committerGitHub <noreply@github.com>2024-08-19 16:41:11 +0000
commitc9edb15f151774ba593bec162a5696989e1c40be (patch)
treebfb36b90ffae34e23200a40ba0bd239284818099 /cli/standalone/virtual_fs.rs
parenta20418e2e8c4753e9e479ad0c0cc2a2087f374d6 (diff)
fix(compile): make output more deterministic (#25092)
Closes https://github.com/denoland/deno/issues/25084
Diffstat (limited to 'cli/standalone/virtual_fs.rs')
-rw-r--r--cli/standalone/virtual_fs.rs7
1 files changed, 5 insertions, 2 deletions
diff --git a/cli/standalone/virtual_fs.rs b/cli/standalone/virtual_fs.rs
index c44e2227b..53d045b62 100644
--- a/cli/standalone/virtual_fs.rs
+++ b/cli/standalone/virtual_fs.rs
@@ -90,8 +90,11 @@ impl VfsBuilder {
let read_dir = std::fs::read_dir(path)
.with_context(|| format!("Reading {}", path.display()))?;
- for entry in read_dir {
- let entry = entry?;
+ let mut dir_entries =
+ read_dir.into_iter().collect::<Result<Vec<_>, _>>()?;
+ dir_entries.sort_by_cached_key(|entry| entry.file_name()); // determinism
+
+ for entry in dir_entries {
let file_type = entry.file_type()?;
let path = entry.path();