Skip to content

Conversation

jbedard
Copy link
Member

@jbedard jbedard commented Jul 9, 2025

recursive:true was added in node10, and surely that is faster then multiple existsSync+mkdirSync calls?

The mkdirs set will still prevent most calls, this reduces it to 1 instead of 2*n when that quick-exit is not hit.

Changes are visible to end-users: no

Test plan

  • Covered by existing test cases
  • Manual testing; please provide instructions so we can reproduce: run on large devserver, profile

@jbedard jbedard requested review from dzbarsky, Aghassi and thesayyn July 9, 2025 02:31
Copy link

aspect-workflows bot commented Jul 9, 2025

Test

2 test targets passed

Targets
//js/private/test/js_run_devserver:js_run_devserver_test [k8-fastbuild]                 245ms
//js/private/test/js_run_devserver:node_modules_symlink_to_execroot_test [k8-fastbuild] 485ms

Total test execution time was 730ms. 223 tests (99.1%) were fully cached saving 33s.


Test

e2e/bzlmod

All tests were cache hits

5 tests (100.0%) were fully cached saving 539ms.


Test

e2e/gyp_no_install_script

All tests were cache hits

2 tests (100.0%) were fully cached saving 184ms.


Test

e2e/js_image_oci

All tests were cache hits

1 test (100.0%) was fully cached saving 6s.


Test

e2e/npm_link_package

All tests were cache hits

3 tests (100.0%) were fully cached saving 533ms.


Test

e2e/npm_link_package-esm

All tests were cache hits

3 tests (100.0%) were fully cached saving 630ms.


Test

e2e/npm_translate_lock

All tests were cache hits

1 test (100.0%) was fully cached saving 31ms.


Test

e2e/npm_translate_lock_empty

All tests were cache hits

1 test (100.0%) was fully cached saving 31ms.


Test

e2e/npm_translate_lock_multi

All tests were cache hits

2 tests (100.0%) were fully cached saving 268ms.


Test

e2e/npm_translate_lock_partial_clone

All tests were cache hits

1 test (100.0%) was fully cached saving 31ms.


Test

e2e/npm_translate_lock_replace_packages

All tests were cache hits

3 tests (100.0%) were fully cached saving 269ms.


Test

e2e/npm_translate_lock_subdir_patch

All tests were cache hits

1 test (100.0%) was fully cached saving 73ms.


Test

e2e/npm_translate_package_lock

All tests were cache hits

1 test (100.0%) was fully cached saving 31ms.


Test

e2e/npm_translate_yarn_lock

All tests were cache hits

1 test (100.0%) was fully cached saving 31ms.


Test

e2e/package_json_module

All tests were cache hits

1 test (100.0%) was fully cached saving 324ms.


Test

e2e/pnpm_lockfiles

All tests were cache hits

52 tests (100.0%) were fully cached saving 6s.


Test

e2e/pnpm_workspace

All tests were cache hits

15 tests (100.0%) were fully cached saving 2s.


Test

e2e/pnpm_workspace_rerooted

All tests were cache hits

15 tests (100.0%) were fully cached saving 2s.


Test

e2e/repo_mapping

All tests were cache hits

3 tests (100.0%) were fully cached saving 410ms.


Test

e2e/rules_foo

All tests were cache hits

2 tests (100.0%) were fully cached saving 137ms.


Test

e2e/runfiles

All tests were cache hits

1 test (100.0%) was fully cached saving 107ms.


Test

e2e/vendored_node

All tests were cache hits

1 test (100.0%) was fully cached saving 114ms.


Buildifier      Format

@jbedard jbedard merged commit 78f2005 into aspect-build:main Jul 9, 2025
99 checks passed
@jbedard jbedard deleted the js_run_devserver-mkdirp branch July 9, 2025 06:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants