@netlify/plugin-nextjs 5.0.0-rc.5 → 5.0.0-rc.6

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.
@@ -26,8 +26,10 @@ __export(request_context_exports, {
26
26
  });
27
27
  module.exports = __toCommonJS(request_context_exports);
28
28
  var import_node_async_hooks = require("node:async_hooks");
29
- function createRequestContext() {
30
- return {};
29
+ function createRequestContext(debug = false) {
30
+ return {
31
+ debug
32
+ };
31
33
  }
32
34
  var REQUEST_CONTEXT_GLOBAL_KEY = Symbol.for("nf-request-context-async-local-storage");
33
35
  var requestContextAsyncLocalStorage;
@@ -4,11 +4,6 @@
4
4
  return createRequire(import.meta.url);
5
5
  })();
6
6
 
7
- import {
8
- SpanStatusCode,
9
- init_esm,
10
- trace
11
- } from "../../esm-chunks/chunk-GQ6KIYPX.js";
12
7
  import {
13
8
  nextResponseProxy
14
9
  } from "../../esm-chunks/chunk-RL4K4CVH.js";
@@ -25,7 +20,7 @@ import {
25
20
  setCacheStatusHeader,
26
21
  setCacheTagsHeaders,
27
22
  setVaryHeaders
28
- } from "../../esm-chunks/chunk-637Y3P2U.js";
23
+ } from "../../esm-chunks/chunk-M2ZKGJAI.js";
29
24
  import "../../esm-chunks/chunk-TYCYFZ22.js";
30
25
  import {
31
26
  __commonJS,
@@ -3262,8 +3257,8 @@ function toComputeResponse(res) {
3262
3257
  }
3263
3258
 
3264
3259
  // src/run/handlers/server.ts
3265
- init_esm();
3266
- import { createRequestContext, runWithRequestContext } from "./request-context.cjs";
3260
+ import { createRequestContext, getRequestContext } from "./request-context.cjs";
3261
+ import { getTracer } from "./tracer.cjs";
3267
3262
  var nextHandler;
3268
3263
  var nextConfig;
3269
3264
  var tagsManifest;
@@ -3281,16 +3276,19 @@ var disableFaultyTransferEncodingHandling = (res) => {
3281
3276
  };
3282
3277
  };
3283
3278
  var server_default = async (request) => {
3284
- const tracer = trace.getTracer("Next.js Runtime");
3279
+ const tracer = getTracer();
3285
3280
  if (!nextHandler) {
3286
- await tracer.startActiveSpan("initialize next server", async (span) => {
3281
+ await tracer.withActiveSpan("initialize next server", async (span) => {
3287
3282
  const { getRunConfig, setRunConfig } = await import("../config.js");
3288
3283
  nextConfig = await getRunConfig();
3289
3284
  setRunConfig(nextConfig);
3290
3285
  tagsManifest = await getTagsManifest();
3291
3286
  span.setAttributes(
3292
3287
  Object.entries(tagsManifest).reduce(
3293
- (acc, [key, value]) => ({ ...acc, [`tagsManifest.${key}`]: value }),
3288
+ (acc, [key, value]) => {
3289
+ acc[`tagsManifest.${key}`] = value;
3290
+ return acc;
3291
+ },
3294
3292
  {}
3295
3293
  )
3296
3294
  );
@@ -3302,30 +3300,20 @@ var server_default = async (request) => {
3302
3300
  dir: process.cwd(),
3303
3301
  isDev: false
3304
3302
  });
3305
- span.end();
3306
3303
  });
3307
3304
  }
3308
- return await tracer.startActiveSpan("generate response", async (span) => {
3305
+ return await tracer.withActiveSpan("generate response", async (span) => {
3309
3306
  const { req, res } = toReqRes(request);
3310
- const requestContext = createRequestContext();
3311
3307
  disableFaultyTransferEncodingHandling(res);
3308
+ const requestContext = getRequestContext() ?? createRequestContext();
3312
3309
  const resProxy = nextResponseProxy(res, requestContext);
3313
- const nextHandlerPromise = runWithRequestContext(
3314
- requestContext,
3315
- () => nextHandler(req, resProxy).catch((error) => {
3316
- import_internal.systemLogger.withError(error).error("next handler error");
3317
- console.error(error);
3318
- resProxy.statusCode = 500;
3319
- span.recordException(error);
3320
- span.setAttribute("http.status_code", 500);
3321
- span.setStatus({
3322
- code: SpanStatusCode.ERROR,
3323
- message: error instanceof Error ? error.message : String(error)
3324
- });
3325
- span.end();
3326
- resProxy.end("Internal Server Error");
3327
- })
3328
- );
3310
+ const nextHandlerPromise = nextHandler(req, resProxy).catch((error) => {
3311
+ import_internal.systemLogger.withError(error).error("next handler error");
3312
+ console.error(error);
3313
+ resProxy.statusCode = 500;
3314
+ span.setAttribute("http.status_code", 500);
3315
+ resProxy.end("Internal Server Error");
3316
+ });
3329
3317
  const response = await toComputeResponse(resProxy);
3330
3318
  if (requestContext.responseCacheKey) {
3331
3319
  span.setAttribute("responseCacheKey", requestContext.responseCacheKey);
@@ -3337,14 +3325,11 @@ var server_default = async (request) => {
3337
3325
  setCacheStatusHeader(response.headers);
3338
3326
  if (response.status > 300 && response.status < 400 || response.status >= 500) {
3339
3327
  const body = await response.text();
3340
- span.end();
3341
3328
  return new Response(body || null, response);
3342
3329
  }
3343
3330
  const keepOpenUntilNextFullyRendered = new TransformStream({
3344
3331
  flush() {
3345
- return nextHandlerPromise.then(() => {
3346
- span.end();
3347
- });
3332
+ return nextHandlerPromise;
3348
3333
  }
3349
3334
  });
3350
3335
  return new Response(response.body?.pipeThrough(keepOpenUntilNextFullyRendered), response);