From b9943b868c38e32bae40077b92fba379986290d8 Mon Sep 17 00:00:00 2001 From: Janeene Beeforth Date: Thu, 1 Jun 2023 20:20:42 +1000 Subject: [PATCH 1/4] Pass loadContext through wrapped document request function Fixes issue #8265. --- packages/remix/src/utils/instrumentServer.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/remix/src/utils/instrumentServer.ts b/packages/remix/src/utils/instrumentServer.ts index 96acde1db2aa..dccef4c1ddd5 100644 --- a/packages/remix/src/utils/instrumentServer.ts +++ b/packages/remix/src/utils/instrumentServer.ts @@ -113,6 +113,7 @@ function makeWrappedDocumentRequestFunction( responseStatusCode: number, responseHeaders: Headers, context: Record, + loadContext: Record, ): Promise { let res: Response; @@ -120,7 +121,7 @@ function makeWrappedDocumentRequestFunction( const currentScope = getCurrentHub().getScope(); if (!currentScope) { - return origDocumentRequestFunction.call(this, request, responseStatusCode, responseHeaders, context); + return origDocumentRequestFunction.call(this, request, responseStatusCode, responseHeaders, context, loadContext); } try { @@ -133,7 +134,7 @@ function makeWrappedDocumentRequestFunction( }, }); - res = await origDocumentRequestFunction.call(this, request, responseStatusCode, responseHeaders, context); + res = await origDocumentRequestFunction.call(this, request, responseStatusCode, responseHeaders, context, loadContext); span?.finish(); } catch (err) { From 8a29c6eb1f60b24e63463b98720b0646fbc07a58 Mon Sep 17 00:00:00 2001 From: Janeene Beeforth Date: Thu, 1 Jun 2023 20:32:38 +1000 Subject: [PATCH 2/4] Fix HandleDocumentRequestFunction type --- packages/remix/src/utils/types.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/remix/src/utils/types.ts b/packages/remix/src/utils/types.ts index e57b8ad15e34..60ca2f4345f8 100644 --- a/packages/remix/src/utils/types.ts +++ b/packages/remix/src/utils/types.ts @@ -127,7 +127,7 @@ export interface ServerBuild { } export interface HandleDocumentRequestFunction { - (request: RemixRequest, responseStatusCode: number, responseHeaders: Headers, context: EntryContext): + (request: RemixRequest, responseStatusCode: number, responseHeaders: Headers, context: EntryContext, loadContext?: AppLoadContext): | Promise | Response; } From 110a2ef246c3e0615d91311ca09a32b7ad88e6f0 Mon Sep 17 00:00:00 2001 From: Janeene Beeforth Date: Thu, 1 Jun 2023 21:50:13 +1000 Subject: [PATCH 3/4] Fix formatting --- packages/remix/src/utils/instrumentServer.ts | 9 ++++++++- packages/remix/src/utils/types.ts | 10 +++++++--- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/remix/src/utils/instrumentServer.ts b/packages/remix/src/utils/instrumentServer.ts index dccef4c1ddd5..5f49f65585bf 100644 --- a/packages/remix/src/utils/instrumentServer.ts +++ b/packages/remix/src/utils/instrumentServer.ts @@ -134,7 +134,14 @@ function makeWrappedDocumentRequestFunction( }, }); - res = await origDocumentRequestFunction.call(this, request, responseStatusCode, responseHeaders, context, loadContext); + res = await origDocumentRequestFunction.call( + this, + request, + responseStatusCode, + responseHeaders, + context, + loadContext, + ); span?.finish(); } catch (err) { diff --git a/packages/remix/src/utils/types.ts b/packages/remix/src/utils/types.ts index 60ca2f4345f8..642f6eef76cb 100644 --- a/packages/remix/src/utils/types.ts +++ b/packages/remix/src/utils/types.ts @@ -127,9 +127,13 @@ export interface ServerBuild { } export interface HandleDocumentRequestFunction { - (request: RemixRequest, responseStatusCode: number, responseHeaders: Headers, context: EntryContext, loadContext?: AppLoadContext): - | Promise - | Response; + ( + request: RemixRequest, + responseStatusCode: number, + responseHeaders: Headers, + context: EntryContext, + loadContext?: AppLoadContext, + ): Promise | Response; } export interface HandleDataRequestFunction { From 5bd0eaeeaa05e3f2c2af9e349c4bdeaf51e9b5d3 Mon Sep 17 00:00:00 2001 From: Janeene Beeforth Date: Thu, 1 Jun 2023 21:51:16 +1000 Subject: [PATCH 4/4] Fix optional parameter --- packages/remix/src/utils/instrumentServer.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/remix/src/utils/instrumentServer.ts b/packages/remix/src/utils/instrumentServer.ts index 5f49f65585bf..7fbff4bb6bd8 100644 --- a/packages/remix/src/utils/instrumentServer.ts +++ b/packages/remix/src/utils/instrumentServer.ts @@ -113,7 +113,7 @@ function makeWrappedDocumentRequestFunction( responseStatusCode: number, responseHeaders: Headers, context: Record, - loadContext: Record, + loadContext?: Record, ): Promise { let res: Response;