dillon1000/react

Commit

[be] Consolidate sprout -> snap

--- 

No changes to snap or sprout's functionality. 

Tweaks to consolidate sprout into snap while keeping its simple interface and 
most developer patterns. 

- to keep `filter` mode fast, we do not run sprout in filter mode 

- sprout is run in non-filter mode for both test and update 

~~Small qol improvement: `--watch` will start you in `filter` mode~~ 

### Cost of this change 

`performance.now()` is quite noisy due to background processes and ThreadPool 
logic (especially with asymmetric task distribution), so I used 
`process.cpuUsage` which reports time spent in user-space. This was much less 
noisy (1-4% standard dev / mean) 

Running all tests becomes slower by ~50%. Initial runs are slower because they 
load in Forget's `require` chains. 

- 23.9s previous initial run 

- 34.6s current initial run 

- 11.5s previous subsequent runs 

- 15.4s current subsequent runs 

Running filtered tests remains very fast (~100ms on the average case) 

--- 

Additional modes or commands could be added as needed (e.g. run tests in filter 
mode, with sprout output)
Browse files
Changed paths33 files
First-parent comparison
M compiler/packages/babel-plugin-react-forget/package.json ModifiedM compiler/packages/babel-plugin-react-forget/src/Babel/RunReactForgetBabelPlugin.ts ModifiedM compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/early-return-no-declarations-reassignments-dependencies.expect.md ModifiedM compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/hook-declaration-basic.flow.expect.md ModifiedM compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/rules-of-hooks/allow-locals-named-like-hooks.expect.md ModifiedM compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/ssa-throw.expect.md ModifiedM compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/tsconfig.json ModifiedD compiler/packages/fixture-test-utils/package.json DeletedD compiler/packages/fixture-test-utils/src/compiler-utils.ts DeletedD compiler/packages/fixture-test-utils/src/index.ts DeletedD compiler/packages/fixture-test-utils/tsconfig.json DeletedM compiler/packages/snap/package.json ModifiedR compiler/packages/sprout/src/SproutTodoFilter.ts →compiler/packages/snap/src/SproutTodoFilter.ts RenamedA compiler/packages/snap/src/compiler.ts AddedR compiler/packages/fixture-test-utils/src/constants.ts →compiler/packages/snap/src/constants.ts RenamedR compiler/packages/fixture-test-utils/src/fixture-utils.ts →compiler/packages/snap/src/fixture-utils.ts RenamedR compiler/packages/fixture-test-utils/src/output-utils.ts →compiler/packages/snap/src/reporter.ts RenamedA compiler/packages/snap/src/runner-watch.ts AddedR compiler/packages/snap/src/compiler-worker.ts →compiler/packages/snap/src/runner-worker.ts RenamedM compiler/packages/snap/src/runner.ts ModifiedR compiler/packages/sprout/README.md →compiler/packages/snap/src/sprout/README.md RenamedR compiler/packages/sprout/src/ReactForgetFeatureFlag.ts →compiler/packages/snap/src/sprout/ReactForgetFeatureFlag.ts RenamedR compiler/packages/sprout/src/runner-evaluator.ts →compiler/packages/snap/src/sprout/evaluator.ts RenamedA compiler/packages/snap/src/sprout/index.ts AddedR compiler/packages/sprout/src/shared-runtime.ts →compiler/packages/snap/src/sprout/shared-runtime.ts RenamedA compiler/packages/snap/src/types.d.ts AddedM compiler/packages/snap/tsconfig.json ModifiedD compiler/packages/sprout/package.json DeletedD compiler/packages/sprout/src/main.ts DeletedD compiler/packages/sprout/src/runner-worker.ts DeletedD compiler/packages/sprout/src/runner.ts DeletedD compiler/packages/sprout/tsconfig.json DeletedM compiler/yarn.lock Modified
Patch

Files changed

Rendering syntax-highlighted changes…