From 6fa0df1afc7fff15a552cc87328742165f6439a5 Mon Sep 17 00:00:00 2001 From: Luca Forstner Date: Wed, 4 Sep 2024 09:45:39 +0200 Subject: [PATCH] Pass down experimental option --- packages/next/src/pages/_document.tsx | 2 +- packages/next/src/server/app-render/app-render.tsx | 6 ++---- packages/next/src/server/render.tsx | 5 +++++ packages/next/src/shared/lib/html-context.shared-runtime.ts | 1 + 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/packages/next/src/pages/_document.tsx b/packages/next/src/pages/_document.tsx index ee8fdd25d524d..d3ba5f90d1853 100644 --- a/packages/next/src/pages/_document.tsx +++ b/packages/next/src/pages/_document.tsx @@ -762,7 +762,7 @@ export class Head extends React.Component { const tracingMetadata = getTracedMetadata( getTracer().getTracePropagationData(), - ['baggage', 'sentry-trace'] // TODO: Pass through `experimental.clientTraceMetadata` from Next.js config + this.context.experimentalClientTraceMetadata ) const traceMetaTags = (tracingMetadata || []).map( diff --git a/packages/next/src/server/app-render/app-render.tsx b/packages/next/src/server/app-render/app-render.tsx index 7db370c906be9..3104f97113c57 100644 --- a/packages/next/src/server/app-render/app-render.tsx +++ b/packages/next/src/server/app-render/app-render.tsx @@ -86,10 +86,7 @@ import { appendMutableCookies } from '../web/spec-extension/adapters/request-coo import { createServerInsertedHTML } from './server-inserted-html' import { getRequiredScripts } from './required-scripts' import { addPathPrefix } from '../../shared/lib/router/utils/add-path-prefix' -import { - getTracedMetadata, - makeGetServerInsertedHTML, -} from './make-get-server-inserted-html' +import { makeGetServerInsertedHTML } from './make-get-server-inserted-html' import { walkTreeWithFlightRouterState } from './walk-tree-with-flight-router-state' import { createComponentTree } from './create-component-tree' import { getAssetQueryString } from './get-asset-query-string' @@ -156,6 +153,7 @@ import { type PrerenderStore, } from './prerender-async-storage.external' import { CacheSignal } from './cache-signal' +import { getTracedMetadata } from '../lib/trace/utils' export type GetDynamicParamFromSegment = ( // [slug] / [[slug]] / [...slug] diff --git a/packages/next/src/server/render.tsx b/packages/next/src/server/render.tsx index d78bb6adffcf5..976e6469ad360 100644 --- a/packages/next/src/server/render.tsx +++ b/packages/next/src/server/render.tsx @@ -285,6 +285,9 @@ export type RenderOptsPartial = { isExperimentalCompile?: boolean isPrefetch?: boolean swrDelta?: SwrDelta + experimental: { + clientTraceMetadata?: string[] + } } export type RenderOpts = LoadComponentsReturnType & @@ -1493,6 +1496,8 @@ export async function renderToHTMLImpl( runtime: globalRuntime, largePageDataBytes: renderOpts.largePageDataBytes, nextFontManifest: renderOpts.nextFontManifest, + experimentalClientTraceMetadata: + renderOpts.experimental.clientTraceMetadata, } const document = ( diff --git a/packages/next/src/shared/lib/html-context.shared-runtime.ts b/packages/next/src/shared/lib/html-context.shared-runtime.ts index 4aabe2fb5a603..2fa019f6e836c 100644 --- a/packages/next/src/shared/lib/html-context.shared-runtime.ts +++ b/packages/next/src/shared/lib/html-context.shared-runtime.ts @@ -45,6 +45,7 @@ export type HtmlProps = { hasConcurrentFeatures?: boolean largePageDataBytes?: number nextFontManifest?: DeepReadonly + experimentalClientTraceMetadata?: string[] } export const HtmlContext = createContext(undefined)