- 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?
Texto traducido por IA.
Resumen de la publicación por la IA de durumis
- Durante el proceso de depuración de Next.js Turbopack, se realizó una tarea para verificar la forma en que se aplica la lógica a cada archivo debido a un error en los casos de prueba.
- Como resultado de la tarea, se identificó que el contenido de un archivo específico era la causa del problema y, para acelerar el proceso de depuración, se deshabilitaron los casos de prueba relacionados.
- Se registró la experiencia de que, incluso con pequeños cambios, se produjeron errores inesperados en las pruebas, lo que llevó a una considerable inversión de tiempo en la depuración.
Era un cambio tan pequeño que se podría decir que era lógicamente perfecto, pero los casos de prueba se rompieron. El problema era que no se tenía ni idea de la causa...
Así que, aunque era mi cumpleaños el fin de semana, trabajé duro. Fue una tarea de averiguar qué archivos no eran compatibles con la nueva lógica aplicando la lógica anterior a algunos archivos según el nombre del archivo.
De esta manera, trabajé duro uno por uno,
Finalmente, descubrí el caso de prueba problemático. Pero el contenido de ese archivo era
'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'); }
todo. Parecía que la depuración iba a llevar mucho tiempo, así que deshabilité los casos de prueba relacionados.
TURBOPACK=1 pnpm test-dev test/e2e/prerender.test.ts