- fix(turbopack): Do not create invalid `EcmascriptModulePartAsset` by kdy1 · Pull Request #70016 · vercel/next.js
- What? EcmascriptModulePartAsset is invalid if the splitting is failed. We now carefully create it, only when the original module is splitable. Why? This is part of the tree-shaking PR. How?
Dit is een door AI vertaalde tekst.
Samenvatting van de tekst door durumis AI
- Tijdens het debuggen van Next.js Turbopack is er een fout opgetreden in een testgeval, wat leidde tot een onderzoek naar de manier waarop de logica per bestand wordt toegepast.
- Uit het onderzoek bleek dat de inhoud van een specifiek bestand de oorzaak van het probleem was. Om de debugtijd te verkorten, zijn de bijbehorende testgevallen uitgeschakeld.
- Het bleek dat zelfs kleine wijzigingen onverwachte fouten in de tests opleverden, wat resulteerde in een aanzienlijke debugtijd. Deze ervaring is vastgelegd in dit logboek.
Het is duidelijk een kleine verandering die logisch gezien perfect zou moeten zijn, maar de testcases zijn gebroken. Het probleem is dat de oorzaak niet duidelijk is...
Daarom heb ik in het weekend, ondanks mijn verjaardag, veel tijd besteed aan het oplossen van het probleem. Ik heb gewerkt met een bestandssoort, waarbij ik voor sommige bestanden de oude logica heb toegepast en heb geprobeerd te achterhalen welke bestanden niet compatibel zijn met de nieuwe logica.
Ik heb op deze manier stukje voor stukje gewerkt,
en uiteindelijk de problematische testcase gevonden. De inhoud van dat bestand was echter
```javascript 'use strict';
if (process.env.NODE_ENV === 'production') { module.exports = require('./cjs/react-jsx-runtime.production.js'); } else { module.exports = require('./cjs/react-jsx-runtime.development.js'); }
Het leek erop dat het debuggen veel tijd zou kosten, dus heb ik de bijbehorende testcases uitgeschakeld.
```javascript TURBOPACK=1 pnpm test-dev test/e2e/prerender.test.ts