Skip to content

Commit 0d93aff

Browse files
authored
Merge branch 'master' into onur/playwright-browser-tests
2 parents e2ef53b + 6f6ced2 commit 0d93aff

File tree

26 files changed

+130
-100
lines changed

26 files changed

+130
-100
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,14 @@
44

55
- "You miss 100 percent of the chances you don't take. — Wayne Gretzky" — Michael Scott
66

7+
## 6.16.1
8+
9+
- feat(nextjs): Support Next.js v12 (#4093)
10+
- fix(nextjs): Disable server instrumentation on Vercel (#4255)
11+
- feat(tracing): Add metadata around idleTimeout (#4251)
12+
13+
Work in this release contributed by @KATT. Thank you for your contribution!
14+
715
## 6.16.0
816

917
- feat(angular): Add Angular 13 to peer dep (#4183)

lerna.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"lerna": "3.4.0",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"packages": "packages/*",
55
"npmClient": "yarn",
66
"useWorkspaces": true

packages/angular/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/angular",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Official Sentry SDK for Angular",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/angular",
@@ -21,9 +21,9 @@
2121
"@angular/router": "10.x || 11.x || 12.x || 13.x"
2222
},
2323
"dependencies": {
24-
"@sentry/browser": "6.16.0",
25-
"@sentry/types": "6.16.0",
26-
"@sentry/utils": "6.16.0",
24+
"@sentry/browser": "6.16.1",
25+
"@sentry/types": "6.16.1",
26+
"@sentry/utils": "6.16.1",
2727
"rxjs": "^6.6.0",
2828
"tslib": "^1.9.3"
2929
},

packages/browser/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/browser",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Official Sentry SDK for browsers",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/browser",
@@ -16,9 +16,9 @@
1616
"access": "public"
1717
},
1818
"dependencies": {
19-
"@sentry/core": "6.16.0",
20-
"@sentry/types": "6.16.0",
21-
"@sentry/utils": "6.16.0",
19+
"@sentry/core": "6.16.1",
20+
"@sentry/types": "6.16.1",
21+
"@sentry/utils": "6.16.1",
2222
"tslib": "^1.9.3"
2323
},
2424
"devDependencies": {

packages/core/package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/core",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Base implementation for all Sentry JavaScript SDKs",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/core",
@@ -16,10 +16,10 @@
1616
"access": "public"
1717
},
1818
"dependencies": {
19-
"@sentry/hub": "6.16.0",
20-
"@sentry/minimal": "6.16.0",
21-
"@sentry/types": "6.16.0",
22-
"@sentry/utils": "6.16.0",
19+
"@sentry/hub": "6.16.1",
20+
"@sentry/minimal": "6.16.1",
21+
"@sentry/types": "6.16.1",
22+
"@sentry/utils": "6.16.1",
2323
"tslib": "^1.9.3"
2424
},
2525
"devDependencies": {

packages/core/src/version.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
export const SDK_VERSION = '6.16.0';
1+
export const SDK_VERSION = '6.16.1';

packages/ember/package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/ember",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Official Sentry SDK for Ember.js",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/ember",
@@ -31,10 +31,10 @@
3131
},
3232
"dependencies": {
3333
"@embroider/macros": "~0.47.2",
34-
"@sentry/browser": "6.16.0",
35-
"@sentry/tracing": "6.16.0",
36-
"@sentry/types": "6.16.0",
37-
"@sentry/utils": "6.16.0",
34+
"@sentry/browser": "6.16.1",
35+
"@sentry/tracing": "6.16.1",
36+
"@sentry/types": "6.16.1",
37+
"@sentry/utils": "6.16.1",
3838
"ember-auto-import": "^1.12.0",
3939
"ember-cli-babel": "~7.26.6",
4040
"ember-cli-htmlbars": "^5.7.1",

packages/eslint-config-sdk/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry-internal/eslint-config-sdk",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Official Sentry SDK eslint config",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/eslint-config-sdk",
@@ -19,8 +19,8 @@
1919
"access": "public"
2020
},
2121
"dependencies": {
22-
"@sentry-internal/eslint-plugin-sdk": "6.16.0",
23-
"@sentry-internal/typescript": "6.16.0",
22+
"@sentry-internal/eslint-plugin-sdk": "6.16.1",
23+
"@sentry-internal/typescript": "6.16.1",
2424
"@typescript-eslint/eslint-plugin": "^3.9.0",
2525
"@typescript-eslint/parser": "^3.9.0",
2626
"eslint-config-prettier": "^6.11.0",

packages/eslint-plugin-sdk/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry-internal/eslint-plugin-sdk",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Official Sentry SDK eslint plugin",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/eslint-plugin-sdk",

packages/gatsby/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/gatsby",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Official Sentry SDK for Gatsby.js",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/gatsby",
@@ -26,15 +26,15 @@
2626
"access": "public"
2727
},
2828
"dependencies": {
29-
"@sentry/react": "6.16.0",
30-
"@sentry/tracing": "6.16.0",
29+
"@sentry/react": "6.16.1",
30+
"@sentry/tracing": "6.16.1",
3131
"@sentry/webpack-plugin": "1.18.3"
3232
},
3333
"peerDependencies": {
3434
"gatsby": "^2.0.0 || ^3.0.0 || ^4.0.0"
3535
},
3636
"devDependencies": {
37-
"@sentry/types": "6.16.0",
37+
"@sentry/types": "6.16.1",
3838
"@testing-library/react": "^10.4.9",
3939
"react": "^17.0.0",
4040
"typescript": "3.7.5"

packages/hub/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/hub",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Sentry hub which handles global state managment.",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/hub",
@@ -16,8 +16,8 @@
1616
"access": "public"
1717
},
1818
"dependencies": {
19-
"@sentry/types": "6.16.0",
20-
"@sentry/utils": "6.16.0",
19+
"@sentry/types": "6.16.1",
20+
"@sentry/utils": "6.16.1",
2121
"tslib": "^1.9.3"
2222
},
2323
"devDependencies": {

packages/integrations/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/integrations",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Pluggable integrations that can be used to enhance JS SDKs",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/integrations",
@@ -16,8 +16,8 @@
1616
"module": "esm/index.js",
1717
"types": "dist/index.d.ts",
1818
"dependencies": {
19-
"@sentry/types": "6.16.0",
20-
"@sentry/utils": "6.16.0",
19+
"@sentry/types": "6.16.1",
20+
"@sentry/utils": "6.16.1",
2121
"localforage": "^1.8.1",
2222
"tslib": "^1.9.3"
2323
},

packages/minimal/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/minimal",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Sentry minimal library that can be used in other packages",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/minimal",
@@ -16,8 +16,8 @@
1616
"access": "public"
1717
},
1818
"dependencies": {
19-
"@sentry/hub": "6.16.0",
20-
"@sentry/types": "6.16.0",
19+
"@sentry/hub": "6.16.1",
20+
"@sentry/types": "6.16.1",
2121
"tslib": "^1.9.3"
2222
},
2323
"devDependencies": {

packages/nextjs/package.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/nextjs",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Official Sentry SDK for Next.js",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/nextjs",
@@ -17,23 +17,23 @@
1717
"access": "public"
1818
},
1919
"dependencies": {
20-
"@sentry/core": "6.16.0",
21-
"@sentry/hub": "6.16.0",
22-
"@sentry/integrations": "6.16.0",
23-
"@sentry/node": "6.16.0",
24-
"@sentry/react": "6.16.0",
25-
"@sentry/tracing": "6.16.0",
26-
"@sentry/utils": "6.16.0",
20+
"@sentry/core": "6.16.1",
21+
"@sentry/hub": "6.16.1",
22+
"@sentry/integrations": "6.16.1",
23+
"@sentry/node": "6.16.1",
24+
"@sentry/react": "6.16.1",
25+
"@sentry/tracing": "6.16.1",
26+
"@sentry/utils": "6.16.1",
2727
"@sentry/webpack-plugin": "1.18.3",
2828
"tslib": "^1.9.3"
2929
},
3030
"devDependencies": {
31-
"@sentry/types": "6.16.0",
31+
"@sentry/types": "6.16.1",
3232
"@types/webpack": "^4.41.31",
3333
"next": "10.1.3"
3434
},
3535
"peerDependencies": {
36-
"next": "^10.0.8 || ^11.0",
36+
"next": "^10.0.8 || ^11.0 || ^12.0",
3737
"react": "15.x || 16.x || 17.x",
3838
"webpack": ">= 4.0.0"
3939
},

packages/nextjs/src/index.server.ts

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import { escapeStringForRegex, logger } from '@sentry/utils';
66
import * as domainModule from 'domain';
77
import * as path from 'path';
88

9-
import { instrumentServer } from './utils/instrumentServer';
109
import { MetadataBuilder } from './utils/metadataBuilder';
1110
import { NextjsOptions } from './utils/nextjsOptions';
1211
import { addIntegration } from './utils/userIntegrations';
@@ -20,6 +19,17 @@ export { ErrorBoundary, withErrorBoundary } from '@sentry/react';
2019
type GlobalWithDistDir = typeof global & { __rewriteFramesDistDir__: string };
2120
const domain = domainModule as typeof domainModule & { active: (domainModule.Domain & Carrier) | null };
2221

22+
// During build, the main process is invoked by
23+
// `node next build`
24+
// and child processes are invoked as
25+
// `node <path>/node_modules/jest-worker/build/workers/processChild.js`,
26+
// whereas at runtime the process is invoked as
27+
// `node next start`
28+
// or
29+
// `node /var/runtime/index.js`.
30+
const isBuild = new RegExp('build').test(process.argv.toString());
31+
const isVercel = !!process.env.VERCEL;
32+
2333
/** Inits the Sentry NextJS SDK on node. */
2434
export function init(options: NextjsOptions): void {
2535
if (options.debug) {
@@ -54,7 +64,7 @@ export function init(options: NextjsOptions): void {
5464

5565
configureScope(scope => {
5666
scope.setTag('runtime', 'node');
57-
if (process.env.VERCEL) {
67+
if (isVercel) {
5868
scope.setTag('vercel', true);
5969
}
6070

@@ -119,5 +129,24 @@ function filterTransactions(event: Event): Event | null {
119129
export { withSentryConfig } from './config';
120130
export { withSentry } from './utils/withSentry';
121131

122-
// wrap various server methods to enable error monitoring and tracing
123-
instrumentServer();
132+
// Wrap various server methods to enable error monitoring and tracing. (Note: This only happens for non-Vercel
133+
// deployments, because the current method of doing the wrapping a) crashes Next 12 apps deployed to Vercel and
134+
// b) doesn't work on those apps anyway. We also don't do it during build, because there's no server running in that
135+
// phase.)
136+
if (!isVercel && !isBuild) {
137+
// Dynamically require the file because even importing from it causes Next 12 to crash on Vercel.
138+
// In environments where the JS file doesn't exist, such as testing, import the TS file.
139+
try {
140+
// eslint-disable-next-line @typescript-eslint/no-var-requires
141+
const { instrumentServer } = require('./utils/instrumentServer.js');
142+
instrumentServer();
143+
} catch {
144+
try {
145+
// eslint-disable-next-line @typescript-eslint/no-var-requires
146+
const { instrumentServer } = require('./utils/instrumentServer.ts');
147+
instrumentServer();
148+
} catch {
149+
// Server not instrumented. Not adding logs to avoid noise.
150+
}
151+
}
152+
}

packages/nextjs/test/index.server.test.ts

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ describe('Server init()', () => {
2424
afterEach(() => {
2525
jest.clearAllMocks();
2626
global.__SENTRY__.hub = undefined;
27+
delete process.env.VERCEL;
2728
});
2829

2930
it('inits the Node SDK', () => {
@@ -66,18 +67,9 @@ describe('Server init()', () => {
6667
expect(currentScope._tags).toEqual({ runtime: 'node' });
6768
});
6869

69-
it('applies `vercel` tag when running on vercel', () => {
70-
const currentScope = getCurrentHub().getScope();
71-
72-
process.env.VERCEL = '1';
73-
74-
init({});
75-
76-
// @ts-ignore need access to protected _tags attribute
77-
expect(currentScope._tags.vercel).toEqual(true);
78-
79-
delete process.env.VERCEL;
80-
});
70+
// TODO: test `vercel` tag when running on Vercel
71+
// Can't just add the test and set env variables, since the value in `index.server.ts`
72+
// is resolved when importing.
8173

8274
it('does not apply `vercel` tag when not running on vercel', () => {
8375
const currentScope = getCurrentHub().getScope();

packages/nextjs/test/integration/tsconfig.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@
1616
"resolveJsonModule": true,
1717
"skipLibCheck": true,
1818
"strict": true,
19-
"target": "esnext"
19+
"target": "esnext",
20+
"incremental": true
2021
},
2122
"exclude": ["node_modules"],
2223
"include": ["**/*.ts", "**/*.tsx"]

packages/node/package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry/node",
3-
"version": "6.16.0",
3+
"version": "6.16.1",
44
"description": "Official Sentry SDK for Node.js",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/node",
@@ -16,11 +16,11 @@
1616
"access": "public"
1717
},
1818
"dependencies": {
19-
"@sentry/core": "6.16.0",
20-
"@sentry/hub": "6.16.0",
21-
"@sentry/tracing": "6.16.0",
22-
"@sentry/types": "6.16.0",
23-
"@sentry/utils": "6.16.0",
19+
"@sentry/core": "6.16.1",
20+
"@sentry/hub": "6.16.1",
21+
"@sentry/tracing": "6.16.1",
22+
"@sentry/types": "6.16.1",
23+
"@sentry/utils": "6.16.1",
2424
"cookie": "^0.4.1",
2525
"https-proxy-agent": "^5.0.0",
2626
"lru_map": "^0.3.3",

0 commit comments

Comments
 (0)