Skip to content

Commit beded07

Browse files
committed
feat(v8): Remove requestData deprecations
1 parent 551aa86 commit beded07

File tree

12 files changed

+502
-740
lines changed

12 files changed

+502
-740
lines changed

packages/core/src/integrations/requestdata.ts

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -95,13 +95,7 @@ const _requestDataIntegration = ((options: RequestDataIntegrationOptions = {}) =
9595
return event;
9696
}
9797

98-
// The Express request handler takes a similar `include` option to that which can be passed to this integration.
99-
// If passed there, we store it in `sdkProcessingMetadata`. TODO(v8): Force express and GCP people to use this
100-
// integration, so that all of this passing and conversion isn't necessary
101-
const addRequestDataOptions =
102-
sdkProcessingMetadata.requestDataOptionsFromExpressHandler ||
103-
sdkProcessingMetadata.requestDataOptionsFromGCPWrapper ||
104-
convertReqDataIntegrationOptsToAddReqDataOpts(_options);
98+
const addRequestDataOptions = convertReqDataIntegrationOptsToAddReqDataOpts(_options);
10599

106100
const processedEvent = _addRequestData(event, req, addRequestDataOptions);
107101

packages/node/src/handlers.ts

Lines changed: 3 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ import type { Span } from '@sentry/types';
1818
import type { AddRequestDataToEventOptions } from '@sentry/utils';
1919
import {
2020
addRequestDataToTransaction,
21-
dropUndefinedKeys,
2221
extractPathForTransaction,
2322
extractRequestData,
2423
isString,
@@ -29,8 +28,6 @@ import {
2928

3029
import type { NodeClient } from './client';
3130
import { DEBUG_BUILD } from './debug-build';
32-
// TODO (v8 / XXX) Remove this import
33-
import type { ParseRequestOptions } from './requestDataDeprecated';
3431
import { isAutoSessionTrackingEnabled } from './sdk';
3532

3633
/**
@@ -115,37 +112,9 @@ export function tracingHandler(): (
115112
};
116113
}
117114

118-
export type RequestHandlerOptions =
119-
// TODO (v8 / XXX) Remove ParseRequestOptions type and eslint override
120-
// eslint-disable-next-line deprecation/deprecation
121-
(ParseRequestOptions | AddRequestDataToEventOptions) & {
122-
flushTimeout?: number;
123-
};
124-
125-
/**
126-
* Backwards compatibility shim which can be removed in v8. Forces the given options to follow the
127-
* `AddRequestDataToEventOptions` interface.
128-
*
129-
* TODO (v8): Get rid of this, and stop passing `requestDataOptionsFromExpressHandler` to `setSDKProcessingMetadata`.
130-
*/
131-
function convertReqHandlerOptsToAddReqDataOpts(
132-
reqHandlerOptions: RequestHandlerOptions = {},
133-
): AddRequestDataToEventOptions | undefined {
134-
let addRequestDataOptions: AddRequestDataToEventOptions | undefined;
135-
136-
if ('include' in reqHandlerOptions) {
137-
addRequestDataOptions = { include: reqHandlerOptions.include };
138-
} else {
139-
// eslint-disable-next-line deprecation/deprecation
140-
const { ip, request, transaction, user } = reqHandlerOptions as ParseRequestOptions;
141-
142-
if (ip || request || transaction || user) {
143-
addRequestDataOptions = { include: dropUndefinedKeys({ ip, request, transaction, user }) };
144-
}
145-
}
146-
147-
return addRequestDataOptions;
148-
}
115+
export type RequestHandlerOptions = AddRequestDataToEventOptions & {
116+
flushTimeout?: number;
117+
};
149118

150119
/**
151120
* Express compatible request handler.
@@ -154,9 +123,6 @@ function convertReqHandlerOptsToAddReqDataOpts(
154123
export function requestHandler(
155124
options?: RequestHandlerOptions,
156125
): (req: http.IncomingMessage, res: http.ServerResponse, next: (error?: any) => void) => void {
157-
// TODO (v8): Get rid of this
158-
const requestDataOptions = convertReqHandlerOptsToAddReqDataOpts(options);
159-
160126
const client = getClient<NodeClient>();
161127
// Initialise an instance of SessionFlusher on the client when `autoSessionTracking` is enabled and the
162128
// `requestHandler` middleware is used indicating that we are running in SessionAggregates mode
@@ -193,8 +159,6 @@ export function requestHandler(
193159
const scope = getCurrentScope();
194160
scope.setSDKProcessingMetadata({
195161
request: req,
196-
// TODO (v8): Stop passing this
197-
requestDataOptionsFromExpressHandler: requestDataOptions,
198162
});
199163

200164
const client = getClient<NodeClient>();
@@ -372,7 +336,6 @@ export function trpcMiddleware(options: SentryTrpcMiddlewareOptions = {}) {
372336
}
373337

374338
if (isThenable(maybePromiseResult)) {
375-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
376339
Promise.resolve(maybePromiseResult).then(
377340
nextResult => {
378341
captureIfError(nextResult as any);
@@ -389,9 +352,3 @@ export function trpcMiddleware(options: SentryTrpcMiddlewareOptions = {}) {
389352
return maybePromiseResult;
390353
};
391354
}
392-
393-
// TODO (v8 / #5257): Remove this
394-
// eslint-disable-next-line deprecation/deprecation
395-
export type { ParseRequestOptions, ExpressRequest } from './requestDataDeprecated';
396-
// eslint-disable-next-line deprecation/deprecation
397-
export { parseRequest, extractRequestData } from './requestDataDeprecated';

packages/node/src/requestDataDeprecated.ts

Lines changed: 0 additions & 54 deletions
This file was deleted.

packages/node/src/sdk.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
/* eslint-disable max-lines */
21
import {
32
endSession,
43
functionToStringIntegration,

packages/node/test/handlers.test.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,6 @@ describe('requestHandler', () => {
179179
const scope = getCurrentScope();
180180
expect((scope as any)._sdkProcessingMetadata).toEqual({
181181
request: req,
182-
requestDataOptionsFromExpressHandler: requestHandlerOptions,
183182
});
184183
});
185184
});

packages/node/test/integrations/requestdata.test.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,11 +82,10 @@ describe('`RequestData` integration', () => {
8282

8383
it('uses options from GCP wrapper', async () => {
8484
type GCPHandler = (req: PolymorphicRequest, res: http.ServerResponse) => void;
85-
const mockGCPWrapper = (origHandler: GCPHandler, options: Record<string, unknown>): GCPHandler => {
85+
const mockGCPWrapper = (origHandler: GCPHandler, _options: Record<string, unknown>): GCPHandler => {
8686
const wrappedHandler: GCPHandler = (req, res) => {
8787
getCurrentScope().setSDKProcessingMetadata({
8888
request: req,
89-
requestDataOptionsFromGCPWrapper: options,
9089
});
9190
origHandler(req, res);
9291
};

0 commit comments

Comments
 (0)