next 15.0.4-canary.25 → 15.0.4-canary.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of next might be problematic. Click here for more details.

@@ -284,7 +284,7 @@ export default async function build(dir, reactProductionProfiling = false, debug
284
284
  const nextBuildSpan = trace('next-build', undefined, {
285
285
  buildMode: experimentalBuildMode,
286
286
  isTurboBuild: String(turboNextBuild),
287
- version: "15.0.4-canary.25"
287
+ version: "15.0.4-canary.26"
288
288
  });
289
289
  NextBuildContext.nextBuildSpan = nextBuildSpan;
290
290
  NextBuildContext.dir = dir;
@@ -686,7 +686,7 @@ export default async function build(dir, reactProductionProfiling = false, debug
686
686
  // Files outside of the distDir can be "type": "module"
687
687
  await writeFileUtf8(path.join(distDir, 'package.json'), '{"type": "commonjs"}');
688
688
  // These are written to distDir, so they need to come after creating and cleaning distDr.
689
- await recordFrameworkVersion("15.0.4-canary.25");
689
+ await recordFrameworkVersion("15.0.4-canary.26");
690
690
  await updateBuildDiagnostics({
691
691
  buildStage: 'start'
692
692
  });
@@ -11,7 +11,7 @@ import { isDeepStrictEqual } from 'util';
11
11
  import { getDefineEnv } from '../webpack/plugins/define-env-plugin';
12
12
  import { getReactCompilerLoader } from '../get-babel-loader-config';
13
13
  import { TurbopackInternalError } from '../../server/dev/turbopack-utils';
14
- const nextVersion = "15.0.4-canary.25";
14
+ const nextVersion = "15.0.4-canary.26";
15
15
  const ArchName = arch();
16
16
  const PlatformName = platform();
17
17
  function infoLog(...args) {
@@ -1,6 +1,6 @@
1
1
  import * as Log from '../output/log';
2
2
  import { NextBuildContext } from '../build-context';
3
- import { Worker } from '../../lib/worker';
3
+ import { Worker } from 'next/dist/compiled/jest-worker';
4
4
  import origDebug from 'next/dist/compiled/debug';
5
5
  import path from 'path';
6
6
  import { exportTraceState, recordTraceEvents } from '../../trace';
@@ -28,25 +28,39 @@ async function webpackBuildWithWorker(compilerNamesArg) {
28
28
  const compilerNames = compilerNamesArg || ORDERED_COMPILER_NAMES;
29
29
  const { nextBuildSpan, ...prunedBuildContext } = NextBuildContext;
30
30
  prunedBuildContext.pluginState = pluginState;
31
- const worker = new Worker(path.join(__dirname, 'impl.js'), {
32
- exposedMethods: [
33
- 'workerMain'
34
- ],
35
- numWorkers: 1,
36
- maxRetries: 0,
37
- forkOptions: {
38
- env: {
39
- ...process.env,
40
- NEXT_PRIVATE_BUILD_WORKER: '1'
31
+ const getWorker = (compilerName)=>{
32
+ var _worker__workerPool;
33
+ const _worker = new Worker(path.join(__dirname, 'impl.js'), {
34
+ exposedMethods: [
35
+ 'workerMain'
36
+ ],
37
+ numWorkers: 1,
38
+ maxRetries: 0,
39
+ forkOptions: {
40
+ env: {
41
+ ...process.env,
42
+ NEXT_PRIVATE_BUILD_WORKER: '1'
43
+ }
41
44
  }
45
+ });
46
+ _worker.getStderr().pipe(process.stderr);
47
+ _worker.getStdout().pipe(process.stdout);
48
+ for (const worker of ((_worker__workerPool = _worker._workerPool) == null ? void 0 : _worker__workerPool._workers) || []){
49
+ worker._child.on('exit', (code, signal)=>{
50
+ if (code || signal && signal !== 'SIGINT') {
51
+ debug(`Compiler ${compilerName} unexpectedly exited with code: ${code} and signal: ${signal}`);
52
+ }
53
+ });
42
54
  }
43
- });
55
+ return _worker;
56
+ };
44
57
  const combinedResult = {
45
58
  duration: 0,
46
59
  buildTraceContext: {}
47
60
  };
48
61
  for (const compilerName of compilerNames){
49
62
  var _curResult_buildTraceContext;
63
+ const worker = getWorker(compilerName);
50
64
  const curResult = await worker.workerMain({
51
65
  buildContext: prunedBuildContext,
52
66
  compilerName,
@@ -59,6 +73,8 @@ async function webpackBuildWithWorker(compilerNamesArg) {
59
73
  if (nextBuildSpan && curResult.debugTraceEvents) {
60
74
  recordTraceEvents(curResult.debugTraceEvents);
61
75
  }
76
+ // destroy worker so it's not sticking around using memory
77
+ await worker.end();
62
78
  // Update plugin state
63
79
  pluginState = deepMerge(pluginState, curResult.pluginState);
64
80
  prunedBuildContext.pluginState = pluginState;
@@ -82,8 +98,6 @@ async function webpackBuildWithWorker(compilerNamesArg) {
82
98
  }
83
99
  }
84
100
  }
85
- // destroy worker so it's not sticking around using memory
86
- worker.end();
87
101
  if (compilerNames.length === 3) {
88
102
  Log.event('Compiled successfully');
89
103
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/build/webpack-build/index.ts"],"sourcesContent":["import type { COMPILER_INDEXES } from '../../shared/lib/constants'\nimport * as Log from '../output/log'\nimport { NextBuildContext } from '../build-context'\nimport type { BuildTraceContext } from '../webpack/plugins/next-trace-entrypoints-plugin'\nimport { Worker } from '../../lib/worker'\nimport origDebug from 'next/dist/compiled/debug'\nimport path from 'path'\nimport { exportTraceState, recordTraceEvents } from '../../trace'\n\nconst debug = origDebug('next:build:webpack-build')\n\nconst ORDERED_COMPILER_NAMES = [\n 'server',\n 'edge-server',\n 'client',\n] as (keyof typeof COMPILER_INDEXES)[]\n\nlet pluginState: Record<any, any> = {}\n\nfunction deepMerge(target: any, source: any) {\n const result = { ...target, ...source }\n for (const key of Object.keys(result)) {\n result[key] = Array.isArray(target[key])\n ? (target[key] = [...target[key], ...(source[key] || [])])\n : typeof target[key] == 'object' && typeof source[key] == 'object'\n ? deepMerge(target[key], source[key])\n : result[key]\n }\n return result\n}\n\nasync function webpackBuildWithWorker(\n compilerNamesArg: typeof ORDERED_COMPILER_NAMES | null\n) {\n const compilerNames = compilerNamesArg || ORDERED_COMPILER_NAMES\n const { nextBuildSpan, ...prunedBuildContext } = NextBuildContext\n\n prunedBuildContext.pluginState = pluginState\n\n const worker = new Worker(path.join(__dirname, 'impl.js'), {\n exposedMethods: ['workerMain'],\n numWorkers: 1,\n maxRetries: 0,\n forkOptions: {\n env: {\n ...process.env,\n NEXT_PRIVATE_BUILD_WORKER: '1',\n },\n },\n }) as Worker & typeof import('./impl')\n\n const combinedResult = {\n duration: 0,\n buildTraceContext: {} as BuildTraceContext,\n }\n\n for (const compilerName of compilerNames) {\n const curResult = await worker.workerMain({\n buildContext: prunedBuildContext,\n compilerName,\n traceState: {\n ...exportTraceState(),\n defaultParentSpanId: nextBuildSpan?.getId(),\n shouldSaveTraceEvents: true,\n },\n })\n if (nextBuildSpan && curResult.debugTraceEvents) {\n recordTraceEvents(curResult.debugTraceEvents)\n }\n\n // Update plugin state\n pluginState = deepMerge(pluginState, curResult.pluginState)\n prunedBuildContext.pluginState = pluginState\n\n if (curResult.telemetryState) {\n NextBuildContext.telemetryState = curResult.telemetryState\n }\n\n combinedResult.duration += curResult.duration\n\n if (curResult.buildTraceContext?.entriesTrace) {\n const { entryNameMap } = curResult.buildTraceContext.entriesTrace!\n\n if (entryNameMap) {\n combinedResult.buildTraceContext.entriesTrace =\n curResult.buildTraceContext.entriesTrace\n combinedResult.buildTraceContext.entriesTrace!.entryNameMap =\n entryNameMap\n }\n\n if (curResult.buildTraceContext?.chunksTrace) {\n const { entryNameFilesMap } = curResult.buildTraceContext.chunksTrace!\n\n if (entryNameFilesMap) {\n combinedResult.buildTraceContext.chunksTrace =\n curResult.buildTraceContext.chunksTrace!\n\n combinedResult.buildTraceContext.chunksTrace!.entryNameFilesMap =\n entryNameFilesMap\n }\n }\n }\n }\n\n // destroy worker so it's not sticking around using memory\n worker.end()\n\n if (compilerNames.length === 3) {\n Log.event('Compiled successfully')\n }\n\n return combinedResult\n}\n\nexport function webpackBuild(\n withWorker: boolean,\n compilerNames: typeof ORDERED_COMPILER_NAMES | null\n): ReturnType<typeof webpackBuildWithWorker> {\n if (withWorker) {\n debug('using separate compiler workers')\n return webpackBuildWithWorker(compilerNames)\n } else {\n debug('building all compilers in same process')\n const webpackBuildImpl = require('./impl').webpackBuildImpl\n return webpackBuildImpl(null, null)\n }\n}\n"],"names":["Log","NextBuildContext","Worker","origDebug","path","exportTraceState","recordTraceEvents","debug","ORDERED_COMPILER_NAMES","pluginState","deepMerge","target","source","result","key","Object","keys","Array","isArray","webpackBuildWithWorker","compilerNamesArg","compilerNames","nextBuildSpan","prunedBuildContext","worker","join","__dirname","exposedMethods","numWorkers","maxRetries","forkOptions","env","process","NEXT_PRIVATE_BUILD_WORKER","combinedResult","duration","buildTraceContext","compilerName","curResult","workerMain","buildContext","traceState","defaultParentSpanId","getId","shouldSaveTraceEvents","debugTraceEvents","telemetryState","entriesTrace","entryNameMap","chunksTrace","entryNameFilesMap","end","length","event","webpackBuild","withWorker","webpackBuildImpl","require"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/build/webpack-build/index.ts"],"sourcesContent":["import type { COMPILER_INDEXES } from '../../shared/lib/constants'\nimport * as Log from '../output/log'\nimport { NextBuildContext } from '../build-context'\nimport type { BuildTraceContext } from '../webpack/plugins/next-trace-entrypoints-plugin'\nimport { Worker } from 'next/dist/compiled/jest-worker'\nimport origDebug from 'next/dist/compiled/debug'\nimport type { ChildProcess } from 'child_process'\nimport path from 'path'\nimport { exportTraceState, recordTraceEvents } from '../../trace'\n\nconst debug = origDebug('next:build:webpack-build')\n\nconst ORDERED_COMPILER_NAMES = [\n 'server',\n 'edge-server',\n 'client',\n] as (keyof typeof COMPILER_INDEXES)[]\n\nlet pluginState: Record<any, any> = {}\n\nfunction deepMerge(target: any, source: any) {\n const result = { ...target, ...source }\n for (const key of Object.keys(result)) {\n result[key] = Array.isArray(target[key])\n ? (target[key] = [...target[key], ...(source[key] || [])])\n : typeof target[key] == 'object' && typeof source[key] == 'object'\n ? deepMerge(target[key], source[key])\n : result[key]\n }\n return result\n}\n\nasync function webpackBuildWithWorker(\n compilerNamesArg: typeof ORDERED_COMPILER_NAMES | null\n) {\n const compilerNames = compilerNamesArg || ORDERED_COMPILER_NAMES\n const { nextBuildSpan, ...prunedBuildContext } = NextBuildContext\n\n prunedBuildContext.pluginState = pluginState\n\n const getWorker = (compilerName: string) => {\n const _worker = new Worker(path.join(__dirname, 'impl.js'), {\n exposedMethods: ['workerMain'],\n numWorkers: 1,\n maxRetries: 0,\n forkOptions: {\n env: {\n ...process.env,\n NEXT_PRIVATE_BUILD_WORKER: '1',\n },\n },\n }) as Worker & typeof import('./impl')\n _worker.getStderr().pipe(process.stderr)\n _worker.getStdout().pipe(process.stdout)\n\n for (const worker of ((_worker as any)._workerPool?._workers || []) as {\n _child: ChildProcess\n }[]) {\n worker._child.on('exit', (code, signal) => {\n if (code || (signal && signal !== 'SIGINT')) {\n debug(\n `Compiler ${compilerName} unexpectedly exited with code: ${code} and signal: ${signal}`\n )\n }\n })\n }\n\n return _worker\n }\n\n const combinedResult = {\n duration: 0,\n buildTraceContext: {} as BuildTraceContext,\n }\n\n for (const compilerName of compilerNames) {\n const worker = getWorker(compilerName)\n\n const curResult = await worker.workerMain({\n buildContext: prunedBuildContext,\n compilerName,\n traceState: {\n ...exportTraceState(),\n defaultParentSpanId: nextBuildSpan?.getId(),\n shouldSaveTraceEvents: true,\n },\n })\n if (nextBuildSpan && curResult.debugTraceEvents) {\n recordTraceEvents(curResult.debugTraceEvents)\n }\n // destroy worker so it's not sticking around using memory\n await worker.end()\n\n // Update plugin state\n pluginState = deepMerge(pluginState, curResult.pluginState)\n prunedBuildContext.pluginState = pluginState\n\n if (curResult.telemetryState) {\n NextBuildContext.telemetryState = curResult.telemetryState\n }\n\n combinedResult.duration += curResult.duration\n\n if (curResult.buildTraceContext?.entriesTrace) {\n const { entryNameMap } = curResult.buildTraceContext.entriesTrace!\n\n if (entryNameMap) {\n combinedResult.buildTraceContext.entriesTrace =\n curResult.buildTraceContext.entriesTrace\n combinedResult.buildTraceContext.entriesTrace!.entryNameMap =\n entryNameMap\n }\n\n if (curResult.buildTraceContext?.chunksTrace) {\n const { entryNameFilesMap } = curResult.buildTraceContext.chunksTrace!\n\n if (entryNameFilesMap) {\n combinedResult.buildTraceContext.chunksTrace =\n curResult.buildTraceContext.chunksTrace!\n\n combinedResult.buildTraceContext.chunksTrace!.entryNameFilesMap =\n entryNameFilesMap\n }\n }\n }\n }\n\n if (compilerNames.length === 3) {\n Log.event('Compiled successfully')\n }\n\n return combinedResult\n}\n\nexport function webpackBuild(\n withWorker: boolean,\n compilerNames: typeof ORDERED_COMPILER_NAMES | null\n): ReturnType<typeof webpackBuildWithWorker> {\n if (withWorker) {\n debug('using separate compiler workers')\n return webpackBuildWithWorker(compilerNames)\n } else {\n debug('building all compilers in same process')\n const webpackBuildImpl = require('./impl').webpackBuildImpl\n return webpackBuildImpl(null, null)\n }\n}\n"],"names":["Log","NextBuildContext","Worker","origDebug","path","exportTraceState","recordTraceEvents","debug","ORDERED_COMPILER_NAMES","pluginState","deepMerge","target","source","result","key","Object","keys","Array","isArray","webpackBuildWithWorker","compilerNamesArg","compilerNames","nextBuildSpan","prunedBuildContext","getWorker","compilerName","_worker","join","__dirname","exposedMethods","numWorkers","maxRetries","forkOptions","env","process","NEXT_PRIVATE_BUILD_WORKER","getStderr","pipe","stderr","getStdout","stdout","worker","_workerPool","_workers","_child","on","code","signal","combinedResult","duration","buildTraceContext","curResult","workerMain","buildContext","traceState","defaultParentSpanId","getId","shouldSaveTraceEvents","debugTraceEvents","end","telemetryState","entriesTrace","entryNameMap","chunksTrace","entryNameFilesMap","length","event","webpackBuild","withWorker","webpackBuildImpl","require"],"mappings":"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"}
@@ -1403,7 +1403,7 @@ export default async function getBaseWebpackConfig(dir, { buildId, encryptionKey
1403
1403
  isClient && new CopyFilePlugin({
1404
1404
  // file path to build output of `@next/polyfill-nomodule`
1405
1405
  filePath: require.resolve('./polyfills/polyfill-nomodule'),
1406
- cacheKey: "15.0.4-canary.25",
1406
+ cacheKey: "15.0.4-canary.26",
1407
1407
  name: `static/chunks/polyfills${dev ? '' : '-[hash]'}.js`,
1408
1408
  minimize: false,
1409
1409
  info: {
@@ -1632,7 +1632,7 @@ export default async function getBaseWebpackConfig(dir, { buildId, encryptionKey
1632
1632
  // - Next.js location on disk (some loaders use absolute paths and some resolve options depend on absolute paths)
1633
1633
  // - Next.js version
1634
1634
  // - next.config.js keys that affect compilation
1635
- version: `${__dirname}|${"15.0.4-canary.25"}|${configVars}`,
1635
+ version: `${__dirname}|${"15.0.4-canary.26"}|${configVars}`,
1636
1636
  cacheDirectory: path.join(distDir, 'cache', 'webpack'),
1637
1637
  // For production builds, it's more efficient to compress all cache files together instead of compression each one individually.
1638
1638
  // So we disable compression here and allow the build runner to take care of compressing the cache as a whole.
@@ -3,7 +3,7 @@
3
3
  * sure the following scripts are executed in the correct order:
4
4
  * - Polyfills
5
5
  * - next/script with `beforeInteractive` strategy
6
- */ const version = "15.0.4-canary.25";
6
+ */ const version = "15.0.4-canary.26";
7
7
  window.next = {
8
8
  version,
9
9
  appDir: true
@@ -26,7 +26,7 @@ import { SearchParamsContext, PathParamsContext } from '../shared/lib/hooks-clie
26
26
  import { onRecoverableError } from './react-client-callbacks/shared';
27
27
  import tracer from './tracing/tracer';
28
28
  import reportToSocket from './tracing/report-to-socket';
29
- export const version = "15.0.4-canary.25";
29
+ export const version = "15.0.4-canary.26";
30
30
  export let router;
31
31
  export const emitter = mitt();
32
32
  const looseToArray = (input)=>[].slice.call(input);
@@ -155,7 +155,7 @@ function assignDefaults(dir, userConfig, silent) {
155
155
  if (((_result_experimental = result.experimental) == null ? void 0 : _result_experimental.allowDevelopmentBuild) && process.env.NODE_ENV !== 'development') {
156
156
  throw new Error(`The experimental.allowDevelopmentBuild option requires NODE_ENV to be explicitly set to 'development'.`);
157
157
  }
158
- if (!((_process_env___NEXT_VERSION = "15.0.4-canary.25") == null ? void 0 : _process_env___NEXT_VERSION.includes('canary')) && !process.env.__NEXT_TEST_MODE && !process.env.NEXT_PRIVATE_SKIP_CANARY_CHECK) {
158
+ if (!((_process_env___NEXT_VERSION = "15.0.4-canary.26") == null ? void 0 : _process_env___NEXT_VERSION.includes('canary')) && !process.env.__NEXT_TEST_MODE && !process.env.NEXT_PRIVATE_SKIP_CANARY_CHECK) {
159
159
  var _result_experimental7, _result_experimental8, _result_experimental_turbo3, _result_experimental9, _result_experimental10;
160
160
  // Prevents usage of certain experimental features outside of canary
161
161
  if ((_result_experimental7 = result.experimental) == null ? void 0 : _result_experimental7.ppr) {
@@ -48,7 +48,7 @@ export async function createHotReloaderTurbopack(opts, serverFields, distDir, re
48
48
  }
49
49
  const hasRewrites = opts.fsChecker.rewrites.afterFiles.length > 0 || opts.fsChecker.rewrites.beforeFiles.length > 0 || opts.fsChecker.rewrites.fallback.length > 0;
50
50
  const hotReloaderSpan = trace('hot-reloader', undefined, {
51
- version: "15.0.4-canary.25"
51
+ version: "15.0.4-canary.26"
52
52
  });
53
53
  // Ensure the hotReloaderSpan is flushed immediately as it's the parentSpan for all processing
54
54
  // of the current `next dev` invocation.
@@ -184,7 +184,7 @@ export default class HotReloaderWebpack {
184
184
  this.previewProps = previewProps;
185
185
  this.rewrites = rewrites;
186
186
  this.hotReloaderSpan = trace('hot-reloader', undefined, {
187
- version: "15.0.4-canary.25"
187
+ version: "15.0.4-canary.26"
188
188
  });
189
189
  // Ensure the hotReloaderSpan is flushed immediately as it's the parentSpan for all processing
190
190
  // of the current `next dev` invocation.
@@ -4,7 +4,7 @@ import { bold, purple } from '../../lib/picocolors';
4
4
  import { PHASE_DEVELOPMENT_SERVER, PHASE_PRODUCTION_BUILD } from '../../shared/lib/constants';
5
5
  import loadConfig, { getEnabledExperimentalFeatures } from '../config';
6
6
  export function logStartInfo({ networkUrl, appUrl, envInfo, expFeatureInfo, maxExperimentalFeatures = Infinity }) {
7
- Log.bootstrap(`${bold(purple(`${Log.prefixes.ready} Next.js ${"15.0.4-canary.25"}`))}${process.env.TURBOPACK ? ' (Turbopack)' : ''}`);
7
+ Log.bootstrap(`${bold(purple(`${Log.prefixes.ready} Next.js ${"15.0.4-canary.26"}`))}${process.env.TURBOPACK ? ' (Turbopack)' : ''}`);
8
8
  if (appUrl) {
9
9
  Log.bootstrap(`- Local: ${appUrl}`);
10
10
  }
@@ -42,7 +42,7 @@ export async function getRequestHandlers({ dir, port, isDev, onCleanup, server,
42
42
  export async function startServer(serverOptions) {
43
43
  const { dir, isDev, hostname, minimalMode, allowRetry, keepAliveTimeout, selfSignedCertificate } = serverOptions;
44
44
  let { port } = serverOptions;
45
- process.title = `next-server (v${"15.0.4-canary.25"})`;
45
+ process.title = `next-server (v${"15.0.4-canary.26"})`;
46
46
  let handlersReady = ()=>{};
47
47
  let handlersError = ()=>{};
48
48
  let handlersPromise = new Promise((resolve, reject)=>{
@@ -234,7 +234,7 @@ function assignDefaults(dir, userConfig, silent) {
234
234
  if (((_result_experimental = result.experimental) == null ? void 0 : _result_experimental.allowDevelopmentBuild) && process.env.NODE_ENV !== 'development') {
235
235
  throw new Error(`The experimental.allowDevelopmentBuild option requires NODE_ENV to be explicitly set to 'development'.`);
236
236
  }
237
- if (!((_process_env___NEXT_VERSION = "15.0.4-canary.25") == null ? void 0 : _process_env___NEXT_VERSION.includes('canary')) && !process.env.__NEXT_TEST_MODE && !process.env.NEXT_PRIVATE_SKIP_CANARY_CHECK) {
237
+ if (!((_process_env___NEXT_VERSION = "15.0.4-canary.26") == null ? void 0 : _process_env___NEXT_VERSION.includes('canary')) && !process.env.__NEXT_TEST_MODE && !process.env.NEXT_PRIVATE_SKIP_CANARY_CHECK) {
238
238
  var _result_experimental7, _result_experimental8, _result_experimental_turbo3, _result_experimental9, _result_experimental10;
239
239
  // Prevents usage of certain experimental features outside of canary
240
240
  if ((_result_experimental7 = result.experimental) == null ? void 0 : _result_experimental7.ppr) {
@@ -104,7 +104,7 @@ async function createHotReloaderTurbopack(opts, serverFields, distDir, resetFetc
104
104
  }
105
105
  const hasRewrites = opts.fsChecker.rewrites.afterFiles.length > 0 || opts.fsChecker.rewrites.beforeFiles.length > 0 || opts.fsChecker.rewrites.fallback.length > 0;
106
106
  const hotReloaderSpan = (0, _trace.trace)('hot-reloader', undefined, {
107
- version: "15.0.4-canary.25"
107
+ version: "15.0.4-canary.26"
108
108
  });
109
109
  // Ensure the hotReloaderSpan is flushed immediately as it's the parentSpan for all processing
110
110
  // of the current `next dev` invocation.
@@ -260,7 +260,7 @@ class HotReloaderWebpack {
260
260
  this.previewProps = previewProps;
261
261
  this.rewrites = rewrites;
262
262
  this.hotReloaderSpan = (0, _trace.trace)('hot-reloader', undefined, {
263
- version: "15.0.4-canary.25"
263
+ version: "15.0.4-canary.26"
264
264
  });
265
265
  // Ensure the hotReloaderSpan is flushed immediately as it's the parentSpan for all processing
266
266
  // of the current `next dev` invocation.
@@ -67,7 +67,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
67
67
  return newObj;
68
68
  }
69
69
  function logStartInfo({ networkUrl, appUrl, envInfo, expFeatureInfo, maxExperimentalFeatures = Infinity }) {
70
- _log.bootstrap(`${(0, _picocolors.bold)((0, _picocolors.purple)(`${_log.prefixes.ready} Next.js ${"15.0.4-canary.25"}`))}${process.env.TURBOPACK ? ' (Turbopack)' : ''}`);
70
+ _log.bootstrap(`${(0, _picocolors.bold)((0, _picocolors.purple)(`${_log.prefixes.ready} Next.js ${"15.0.4-canary.26"}`))}${process.env.TURBOPACK ? ' (Turbopack)' : ''}`);
71
71
  if (appUrl) {
72
72
  _log.bootstrap(`- Local: ${appUrl}`);
73
73
  }
@@ -110,7 +110,7 @@ async function getRequestHandlers({ dir, port, isDev, onCleanup, server, hostnam
110
110
  async function startServer(serverOptions) {
111
111
  const { dir, isDev, hostname, minimalMode, allowRetry, keepAliveTimeout, selfSignedCertificate } = serverOptions;
112
112
  let { port } = serverOptions;
113
- process.title = `next-server (v${"15.0.4-canary.25"})`;
113
+ process.title = `next-server (v${"15.0.4-canary.26"})`;
114
114
  let handlersReady = ()=>{};
115
115
  let handlersError = ()=>{};
116
116
  let handlersPromise = new Promise((resolve, reject)=>{
@@ -81,7 +81,7 @@ function getAnonymousMeta() {
81
81
  isWsl: _iswsl.default,
82
82
  isCI: _ciinfo.isCI,
83
83
  ciName: _ciinfo.isCI && _ciinfo.name || null,
84
- nextVersion: "15.0.4-canary.25"
84
+ nextVersion: "15.0.4-canary.26"
85
85
  };
86
86
  return traits;
87
87
  }
@@ -11,11 +11,11 @@ Object.defineProperty(exports, "eventCliSessionStopped", {
11
11
  const EVENT_VERSION = 'NEXT_CLI_SESSION_STOPPED';
12
12
  function eventCliSessionStopped(event) {
13
13
  // This should be an invariant, if it fails our build tooling is broken.
14
- if (typeof "15.0.4-canary.25" !== 'string') {
14
+ if (typeof "15.0.4-canary.26" !== 'string') {
15
15
  return [];
16
16
  }
17
17
  const payload = {
18
- nextVersion: "15.0.4-canary.25",
18
+ nextVersion: "15.0.4-canary.26",
19
19
  nodeVersion: process.version,
20
20
  cliCommand: event.cliCommand,
21
21
  durationMilliseconds: event.durationMilliseconds,
@@ -36,12 +36,12 @@ function hasBabelConfig(dir) {
36
36
  function eventCliSession(dir, nextConfig, event) {
37
37
  var _nextConfig_experimental_staleTimes, _nextConfig_experimental_staleTimes1, _nextConfig_experimental_reactCompiler, _nextConfig_experimental_reactCompiler1;
38
38
  // This should be an invariant, if it fails our build tooling is broken.
39
- if (typeof "15.0.4-canary.25" !== 'string') {
39
+ if (typeof "15.0.4-canary.26" !== 'string') {
40
40
  return [];
41
41
  }
42
42
  const { images, i18n } = nextConfig || {};
43
43
  const payload = {
44
- nextVersion: "15.0.4-canary.25",
44
+ nextVersion: "15.0.4-canary.26",
45
45
  nodeVersion: process.version,
46
46
  cliCommand: event.cliCommand,
47
47
  isSrcDir: event.isSrcDir,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "next",
3
- "version": "15.0.4-canary.25",
3
+ "version": "15.0.4-canary.26",
4
4
  "description": "The React Framework",
5
5
  "main": "./dist/server/next.js",
6
6
  "license": "MIT",
@@ -97,7 +97,7 @@
97
97
  ]
98
98
  },
99
99
  "dependencies": {
100
- "@next/env": "15.0.4-canary.25",
100
+ "@next/env": "15.0.4-canary.26",
101
101
  "@swc/counter": "0.1.3",
102
102
  "@swc/helpers": "0.5.13",
103
103
  "busboy": "1.6.0",
@@ -129,14 +129,14 @@
129
129
  },
130
130
  "optionalDependencies": {
131
131
  "sharp": "^0.33.5",
132
- "@next/swc-darwin-arm64": "15.0.4-canary.25",
133
- "@next/swc-darwin-x64": "15.0.4-canary.25",
134
- "@next/swc-linux-arm64-gnu": "15.0.4-canary.25",
135
- "@next/swc-linux-arm64-musl": "15.0.4-canary.25",
136
- "@next/swc-linux-x64-gnu": "15.0.4-canary.25",
137
- "@next/swc-linux-x64-musl": "15.0.4-canary.25",
138
- "@next/swc-win32-arm64-msvc": "15.0.4-canary.25",
139
- "@next/swc-win32-x64-msvc": "15.0.4-canary.25"
132
+ "@next/swc-darwin-arm64": "15.0.4-canary.26",
133
+ "@next/swc-darwin-x64": "15.0.4-canary.26",
134
+ "@next/swc-linux-arm64-gnu": "15.0.4-canary.26",
135
+ "@next/swc-linux-arm64-musl": "15.0.4-canary.26",
136
+ "@next/swc-linux-x64-gnu": "15.0.4-canary.26",
137
+ "@next/swc-linux-x64-musl": "15.0.4-canary.26",
138
+ "@next/swc-win32-arm64-msvc": "15.0.4-canary.26",
139
+ "@next/swc-win32-x64-msvc": "15.0.4-canary.26"
140
140
  },
141
141
  "devDependencies": {
142
142
  "@ampproject/toolbox-optimizer": "2.8.3",
@@ -169,11 +169,11 @@
169
169
  "@jest/types": "29.5.0",
170
170
  "@mswjs/interceptors": "0.23.0",
171
171
  "@napi-rs/triples": "1.2.0",
172
- "@next/font": "15.0.4-canary.25",
173
- "@next/polyfill-module": "15.0.4-canary.25",
174
- "@next/polyfill-nomodule": "15.0.4-canary.25",
175
- "@next/react-refresh-utils": "15.0.4-canary.25",
176
- "@next/swc": "15.0.4-canary.25",
172
+ "@next/font": "15.0.4-canary.26",
173
+ "@next/polyfill-module": "15.0.4-canary.26",
174
+ "@next/polyfill-nomodule": "15.0.4-canary.26",
175
+ "@next/react-refresh-utils": "15.0.4-canary.26",
176
+ "@next/swc": "15.0.4-canary.26",
177
177
  "@opentelemetry/api": "1.6.0",
178
178
  "@playwright/test": "1.41.2",
179
179
  "@swc/core": "1.9.2-nightly-20241111.1",