Conversation
[email protected] renamed VitestTestRunner (exported as V) to TestRunner (exported as T) in dist/chunks/test.*. Update isTestPackage to detect both export shapes, and update the wrapVitestTestRunner call to use whichever is present. Signed-off-by: Juan Fernandez <[email protected]>
Overall package sizeSelf size: 4.97 MB Dependency sizes| name | version | self size | total size | |------|---------|-----------|------------| | import-in-the-middle | 3.0.0 | 81.15 kB | 815.98 kB | | dc-polyfill | 0.1.10 | 26.73 kB | 26.73 kB |🤖 This report was automatically generated by heaviest-objects-in-the-universe |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #7804 +/- ##
==========================================
- Coverage 80.30% 80.23% -0.08%
==========================================
Files 743 748 +5
Lines 32318 32404 +86
==========================================
+ Hits 25954 25999 +45
- Misses 6364 6405 +41
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
This comment has been minimized.
This comment has been minimized.
BenchmarksBenchmark execution time: 2026-03-17 13:44:26 Comparing candidate commit 9abf053 in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 228 metrics, 32 unstable metrics. |
Vitest 4.1.0 reshuffled minified export keys in its chunk files, breaking instrumentation hooks that relied on hardcoded single-letter keys. Replace all hardcoded key lookups with a findExportByName() helper that searches exports by their .name property, making instrumentation resilient to minified key changes across versions. Also bump vitest and related packages to 4.1.0 in test versions, and add reporters: ['default'] to the vitest test config to prevent vitest 4.1's new agent reporter from suppressing console output. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]> Signed-off-by: Juan Fernandez <[email protected]>
Signed-off-by: Juan Fernandez <[email protected]>
BridgeAR
left a comment
There was a problem hiding this comment.
LGTM, just left few suggestions (of which the test version is likely the main one)
| // cucumber does not support Node.js@18 anymore | ||
| if (NODE_MAJOR <= 18 && testFramework === 'cucumber') return | ||
| // cucumber and [email protected] do not support Node.js@18 | ||
| if (NODE_MAJOR <= 18 && (testFramework === 'cucumber' || testFramework === 'vitest')) return |
There was a problem hiding this comment.
Nit: I would skip instead of just returning (while it needs the method to be changed from an arrow function to a regular one to work)
| if (NODE_MAJOR <= 18 && (testFramework === 'cucumber' || testFramework === 'vitest')) return | |
| if (NODE_MAJOR <= 18 && (testFramework === 'cucumber' || testFramework === 'vitest')) { | |
| this.skip() | |
| return | |
| } |
There was a problem hiding this comment.
this.skip can only be called from hooks or test functions, not at the describe level
There was a problem hiding this comment.
The docs say it is possible: https://mochajs.org/declaring/inclusive-tests/
It could be that it has to be defined up front in that case instead of inside of the describe block.
There was a problem hiding this comment.
a simple test:
⎿ Error: Exit code 1
Exception during run: TypeError: this.skip is not a function
at Suite.<anonymous> (/private/tmp/skip-test2.js:2:8)
...
as far as I can see, all this.skip examples in https://mochajs.org/declaring/inclusive-tests/ are within hooks or tests
Co-authored-by: Ruben Bridgewater <[email protected]> Signed-off-by: Juan Fernandez <[email protected]>
a55e114
a55e114 to
9abf053
Compare
Signed-off-by: Juan Fernandez <[email protected]> Co-authored-by: Samuel Lukes <[email protected]>
Signed-off-by: Juan Fernandez <[email protected]> Co-authored-by: Samuel Lukes <[email protected]>
What does this PR do?
Update attributes we use to check
vitestexports to be compatible with 4.1.0.It piggybacks on the changes in #7797.
Additionally we need to limit the execution of
[email protected]for node 18, which is no longer compatible withvitest. They dropped support for it in v4 but it had worked so far but in 4.1.0 they introduced the usage of node:util.styleText which is not available in node18. The specific chain is:The specific commit added
[email protected]as dependency range: vitest-dev/vitest@990281d. Then when vite 8.0.0 went stable (latest), npm started resolving to it, pulling in rolldown which broke Node 18.Motivation
Fix
[email protected]release: https://github.com/vitest-dev/vitest/releases/tag/v4.1.0.