diff --git a/packages/next/build/webpack-config.ts b/packages/next/build/webpack-config.ts index 0597a711ba62..4d7df85fd41a 100644 --- a/packages/next/build/webpack-config.ts +++ b/packages/next/build/webpack-config.ts @@ -2002,7 +2002,7 @@ export default async function getBaseWebpackConfig( }), (isClient || isEdgeServer) && new DropClientPage(), config.outputFileTracing && - (isNodeServer || isEdgeServer) && + isNodeServer && !dev && new (require('./webpack/plugins/next-trace-entrypoints-plugin') .TraceEntryPointsPlugin as typeof import('./webpack/plugins/next-trace-entrypoints-plugin').TraceEntryPointsPlugin)( diff --git a/test/e2e/edge-render-getserversideprops/index.test.ts b/test/e2e/edge-render-getserversideprops/index.test.ts index c3ea23aca7ed..8d6133490cae 100644 --- a/test/e2e/edge-render-getserversideprops/index.test.ts +++ b/test/e2e/edge-render-getserversideprops/index.test.ts @@ -4,6 +4,7 @@ import { fetchViaHTTP, normalizeRegEx, renderViaHTTP } from 'next-test-utils' import cheerio from 'cheerio' import { join } from 'path' import escapeStringRegexp from 'escape-string-regexp' +import fs from 'fs-extra' describe('edge-render-getserversideprops', () => { let next: NextInstance @@ -16,6 +17,28 @@ describe('edge-render-getserversideprops', () => { }) afterAll(() => next.destroy()) + if ((global as any).isNextStart) { + it('should not output trace files for edge routes', async () => { + expect(await fs.pathExists(join(next.testDir, '.next/pages'))).toBe(false) + expect( + await fs.pathExists(join(next.testDir, '.next/server/pages/[id].js')) + ).toBe(true) + expect( + await fs.pathExists( + join(next.testDir, '.next/server/pages/[id].js.nft.json') + ) + ).toBe(false) + expect( + await fs.pathExists(join(next.testDir, '.next/server/pages/index.js')) + ).toBe(true) + expect( + await fs.pathExists( + join(next.testDir, '.next/server/pages/index.js.nft.json') + ) + ).toBe(false) + }) + } + it('should have correct query/params on index', async () => { const html = await renderViaHTTP(next.url, '/') const $ = cheerio.load(html)