next 15.0.4-canary.4 → 15.0.4-canary.5

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.

@@ -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.4") == 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.5") == 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;
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.4"
51
+ version: "15.0.4-canary.5"
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.4"
187
+ version: "15.0.4-canary.5"
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.4"}`))}${process.env.TURBOPACK ? ' (Turbopack)' : ''}`);
7
+ Log.bootstrap(`${bold(purple(`${Log.prefixes.ready} Next.js ${"15.0.4-canary.5"}`))}${process.env.TURBOPACK ? ' (Turbopack)' : ''}`);
8
8
  if (appUrl) {
9
9
  Log.bootstrap(`- Local: ${appUrl}`);
10
10
  }
@@ -40,7 +40,7 @@ export async function getRequestHandlers({ dir, port, isDev, onCleanup, server,
40
40
  export async function startServer(serverOptions) {
41
41
  const { dir, isDev, hostname, minimalMode, allowRetry, keepAliveTimeout, selfSignedCertificate } = serverOptions;
42
42
  let { port } = serverOptions;
43
- process.title = `next-server (v${"15.0.4-canary.4"})`;
43
+ process.title = `next-server (v${"15.0.4-canary.5"})`;
44
44
  let handlersReady = ()=>{};
45
45
  let handlersError = ()=>{};
46
46
  let handlersPromise = new Promise((resolve, reject)=>{
@@ -1986,7 +1986,7 @@ class Server {
1986
1986
  (0, _requestmeta.addRequestMeta)(req, 'notFoundRevalidate', cacheEntry.revalidate);
1987
1987
  // If cache control is already set on the response we don't
1988
1988
  // override it to allow users to customize it via next.config
1989
- if (cacheEntry.revalidate && !res.getHeader('Cache-Control')) {
1989
+ if (typeof cacheEntry.revalidate !== 'undefined' && !res.getHeader('Cache-Control')) {
1990
1990
  res.setHeader('Cache-Control', (0, _revalidate.formatRevalidate)({
1991
1991
  revalidate: cacheEntry.revalidate,
1992
1992
  expireTime: this.nextConfig.expireTime
@@ -2008,7 +2008,7 @@ class Server {
2008
2008
  } else if (cachedData.kind === _responsecache.CachedRouteKind.REDIRECT) {
2009
2009
  // If cache control is already set on the response we don't
2010
2010
  // override it to allow users to customize it via next.config
2011
- if (cacheEntry.revalidate && !res.getHeader('Cache-Control')) {
2011
+ if (typeof cacheEntry.revalidate !== 'undefined' && !res.getHeader('Cache-Control')) {
2012
2012
  res.setHeader('Cache-Control', (0, _revalidate.formatRevalidate)({
2013
2013
  revalidate: cacheEntry.revalidate,
2014
2014
  expireTime: this.nextConfig.expireTime
@@ -2026,14 +2026,20 @@ class Server {
2026
2026
  return null;
2027
2027
  }
2028
2028
  } else if (cachedData.kind === _responsecache.CachedRouteKind.APP_ROUTE) {
2029
- const headers = {
2030
- ...cachedData.headers
2031
- };
2029
+ const headers = (0, _utils3.fromNodeOutgoingHttpHeaders)(cachedData.headers);
2032
2030
  if (!(this.minimalMode && isSSG)) {
2033
- delete headers[_constants2.NEXT_CACHE_TAGS_HEADER];
2031
+ headers.delete(_constants2.NEXT_CACHE_TAGS_HEADER);
2032
+ }
2033
+ // If cache control is already set on the response we don't
2034
+ // override it to allow users to customize it via next.config
2035
+ if (typeof cacheEntry.revalidate !== 'undefined' && !res.getHeader('Cache-Control') && !headers.get('Cache-Control')) {
2036
+ headers.set('Cache-Control', (0, _revalidate.formatRevalidate)({
2037
+ revalidate: cacheEntry.revalidate,
2038
+ expireTime: this.nextConfig.expireTime
2039
+ }));
2034
2040
  }
2035
2041
  await (0, _sendresponse.sendResponse)(req, res, new Response(cachedData.body, {
2036
- headers: (0, _utils3.fromNodeOutgoingHttpHeaders)(headers),
2042
+ headers,
2037
2043
  status: cachedData.status || 200
2038
2044
  }));
2039
2045
  return null;