Skip to content

Conversation

@poteto
Copy link
Member

@poteto poteto commented Jan 7, 2026

Jest's default test sequencer sorts alphabetically, causing large test files
(eg ReactDOMFloat-test.js at 9k lines, ReactHooksWithNoopRenderer-test.js at 4k
lines) to cluster in shard 3/5. This made shard 3/5 average 117s vs 77s for
other shards, a 52% slowdown. I'm using filesize as a rough proxy for number of tests.

This custom sequencer sorts tests by file size and distributes large files evenly across all shards
instead of clustering them together.


Stack created with Sapling. Best reviewed with ReviewStack.

@meta-cla meta-cla bot added the CLA Signed label Jan 7, 2026
@github-actions github-actions bot added the React Core Team Opened by a member of the React Core Team label Jan 7, 2026
@react-sizebot
Copy link

react-sizebot commented Jan 7, 2026

Comparing: 0e18014...8577345

Critical size changes

Includes critical production bundles, as well as any change greater than 2%:

Name +/- Base Current +/- gzip Base gzip Current gzip
oss-stable/react-dom/cjs/react-dom.production.js = 6.84 kB 6.84 kB +0.05% 1.88 kB 1.88 kB
oss-stable/react-dom/cjs/react-dom-client.production.js = 607.60 kB 607.60 kB = 107.53 kB 107.54 kB
oss-experimental/react-dom/cjs/react-dom.production.js = 6.84 kB 6.84 kB +0.11% 1.88 kB 1.89 kB
oss-experimental/react-dom/cjs/react-dom-client.production.js = 666.83 kB 666.83 kB = 117.42 kB 117.42 kB
facebook-www/ReactDOM-prod.classic.js = 692.91 kB 692.91 kB = 121.92 kB 121.92 kB
facebook-www/ReactDOM-prod.modern.js = 683.34 kB 683.34 kB = 120.31 kB 120.31 kB

Significant size changes

Includes any change greater than 0.2%:

(No significant changes)

Generated by 🚫 dangerJS against 8577345

poteto added 2 commits January 6, 2026 18:08
[ci] Increase DevTools test shards and bump timeout

- Increase DevTools test shards from 3 to 5
- Bump timeout to 20s
Jest's default test sequencer sorts alphabetically, causing large test files
(eg ReactDOMFloat-test.js at 9k lines, ReactHooksWithNoopRenderer-test.js at 4k
lines) to cluster in shard 3/5. This made shard 3/5 average 117s vs 77s for
other shards, a 52% slowdown. I'm using filesize as a rough proxy for number of tests.

This custom sequencer sorts tests by file size and distributes large files evenly across all shards
instead of clustering them together.
poteto added a commit that referenced this pull request Jan 7, 2026
[ci] Increase DevTools test shards and bump timeout

- Increase DevTools test shards from 3 to 5
- Bump timeout to 20s

---
[//]: # (BEGIN SAPLING FOOTER)
Stack created with [Sapling](https://sapling-scm.com). Best reviewed
with [ReviewStack](https://reviewstack.dev/facebook/react/pull/35459).
* #35458
* __->__ #35459
@poteto poteto merged commit d6cae44 into main Jan 7, 2026
234 checks passed
@poteto poteto deleted the pr35458 branch January 7, 2026 02:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed React Core Team Opened by a member of the React Core Team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants