Skip to content

Commit 3012f77

Browse files
authored
Merge pull request #8480 from getsentry/prepare-release/7.58.0
meta(changelog): Update changelog for 7.58.0
2 parents 3f7bacf + 7e9fb01 commit 3012f77

File tree

159 files changed

+4214
-2380
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

159 files changed

+4214
-2380
lines changed

.github/workflows/build.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ jobs:
179179
key: ${{ steps.compute_lockfile_hash.outputs.hash }}
180180

181181
- name: Install dependencies
182-
if: steps.cache_dependencies.outputs.cache_hit != 'true'
182+
if: steps.cache_dependencies.outputs.cache-hit != 'true'
183183
run: yarn install --ignore-engines --frozen-lockfile
184184
outputs:
185185
dependency_cache_key: ${{ steps.compute_lockfile_hash.outputs.hash }}
@@ -661,7 +661,7 @@ jobs:
661661
needs: [job_get_metadata, job_build]
662662
if: needs.job_get_metadata.outputs.changed_node == 'true' || github.event_name != 'pull_request'
663663
runs-on: ubuntu-20.04
664-
timeout-minutes: 10
664+
timeout-minutes: 15
665665
strategy:
666666
fail-fast: false
667667
matrix:
@@ -738,11 +738,11 @@ jobs:
738738
github.actor != 'dependabot[bot]'
739739
needs: [job_get_metadata, job_build]
740740
runs-on: ubuntu-20.04
741-
timeout-minutes: 20
741+
timeout-minutes: 30
742742
strategy:
743743
fail-fast: false
744744
matrix:
745-
shard: [1, 2, 3]
745+
shard: [1, 2, 3, 4]
746746

747747
steps:
748748
- name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
@@ -773,7 +773,7 @@ jobs:
773773
E2E_TEST_SENTRY_ORG_SLUG: 'sentry-javascript-sdks'
774774
E2E_TEST_SENTRY_TEST_PROJECT: 'sentry-javascript-e2e-tests'
775775
E2E_TEST_SHARD: ${{ matrix.shard }}
776-
E2E_TEST_SHARD_AMOUNT: 3
776+
E2E_TEST_SHARD_AMOUNT: 4
777777
run: |
778778
cd packages/e2e-tests
779779
yarn test:e2e

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ build/
1010
dist/
1111
coverage/
1212
scratch/
13-
*.d.ts
1413
*.js.map
1514
*.pyc
1615
*.tsbuildinfo

CHANGELOG.md

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

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

7+
## 7.58.0
8+
9+
### Important Changes
10+
11+
- **Performance Monitoring not required for Distributed Tracing**
12+
13+
This release adds support for [distributed tracing](https://docs.sentry.io/platforms/javascript/usage/distributed-tracing/) without requiring performance monitoring to be active on the JavaScript SDKs (browser and node). This means even if there is no sampled transaction/span, the SDK will still propagate traces to downstream services. Distributed Tracing can be configured with the `tracePropagationTargets` option, which controls what requests to attach the `sentry-trace` and `baggage` HTTP headers to (which is what propagates tracing information).
14+
15+
```js
16+
Sentry.init({
17+
tracePropagationTargets: ["third-party-site.com", /^https:\/\/yourserver\.io\/api/],
18+
});
19+
```
20+
21+
- feat(tracing): Add tracing without performance to browser and client Sveltekit (#8458)
22+
- feat(node): Add tracing without performance to Node http integration (#8450)
23+
- feat(node): Add tracing without performance to Node Undici (#8449)
24+
- feat(node): Populate propagation context using env variables (#8422)
25+
26+
- **feat(core): Support `AggregateErrors` in `LinkedErrors` integration (#8463)**
27+
28+
This release adds support for [`AggregateErrors`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/AggregateError). AggregateErrors are considered as Exception Groups by Sentry, and will be visualized and grouped differently. See the [Exception Groups Changelog Post](https://changelog.getsentry.com/announcements/exception-groups-now-supported-for-python-and-net) for more details.
29+
30+
Exception Group support requires Self-Hosted Sentry [version 23.5.1](https://github.com/getsentry/self-hosted/releases/tag/23.5.1) or newer.
31+
32+
- **feat(replay): Add a new option `networkDetailDenyUrls` (#8439)**
33+
34+
This release adds a new option `networkDetailDenyUrls` to the `Replay` integration. This option allows you to specify a list of URLs that should not be captured by the `Replay` integration, which can be used alongside the existing `networkDetailAllowUrls` for finely grained control of which URLs should have network details captured.
35+
36+
```js
37+
Sentry.init({
38+
integrations: [
39+
new Sentry.Integrations.Replay({
40+
networkDetailDenyUrls: [/^http:\/\/example.com\/test$/],
41+
}),
42+
],
43+
});
44+
```
45+
46+
### Other Changes
47+
48+
- feat(core): Add helpers to get module metadata from injected code (#8438)
49+
- feat(core): Add sampling decision to trace envelope header (#8483)
50+
- feat(node): Add trace context to checkin (#8503)
51+
- feat(node): Export `getModule` for Electron SDK (#8488)
52+
- feat(types): Allow `user.id` to be a number (#8330)
53+
- fix(browser): Set anonymous `crossorigin` attribute on report dialog (#8424)
54+
- fix(nextjs): Ignore `tunnelRoute` when doing static exports (#8471)
55+
- fix(nextjs): Use `basePath` option for `tunnelRoute` (#8454)
56+
- fix(node): Apply source context to linked errors even when it is uncached (#8453)
57+
- fix(node): report errorMiddleware errors as unhandled (#8048)
58+
- fix(react): Add support for `basename` option of `createBrowserRouter` (#8457)
59+
- fix(remix): Add explicit `@sentry/node` exports. (#8509)
60+
- fix(remix): Don't inject trace/baggage to `redirect` and `catch` responses (#8467)
61+
- fix(replay): Adjust slow/multi click handling (#8380)
62+
63+
Work in this release contributed by @mrdulin, @donaldxdonald & @ziyad-elabid-nw. Thank you for your contributions!
64+
765
## 7.57.0
866

967
### Important Changes

LICENSE

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,21 @@
1-
Copyright (c) 2018 Sentry (https://sentry.io) and individual contributors. All rights reserved.
1+
MIT License
22

3-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
4-
documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
5-
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
6-
persons to whom the Software is furnished to do so, subject to the following conditions:
3+
Copyright (c) 2022 Functional Software, Inc. dba Sentry
74

8-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
9-
Software.
5+
Permission is hereby granted, free of charge, to any person obtaining a copy of
6+
this software and associated documentation files (the "Software"), to deal in
7+
the Software without restriction, including without limitation the rights to
8+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
9+
of the Software, and to permit persons to whom the Software is furnished to do
10+
so, subject to the following conditions:
1011

11-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
12-
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
13-
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
14-
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

lerna.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
{
22
"$schema": "node_modules/lerna/schemas/lerna-schema.json",
33
"version": "7.57.0",
4-
"npmClient": "yarn",
5-
"useWorkspaces": true
4+
"npmClient": "yarn"
65
}

nx.json

Lines changed: 11 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -3,65 +3,35 @@
33
"default": {
44
"runner": "nx/tasks-runners/default",
55
"options": {
6-
"cacheableOperations": [
7-
"build:bundle",
8-
"build:transpile",
9-
"build:types",
10-
"lint:eslint",
11-
"test:unit"
12-
],
6+
"cacheableOperations": ["build:bundle", "build:transpile", "build:types", "lint:eslint", "test:unit"],
137
"cacheDirectory": ".nxcache"
148
}
159
}
1610
},
1711
"namedInputs": {
1812
"default": ["{projectRoot}/**/*", "sharedGlobals"],
19-
"sharedGlobals": [
20-
"{workspaceRoot}/*.js",
21-
"{workspaceRoot}/*.json"
22-
],
23-
"production": [
24-
"default",
25-
"!{projectRoot}/test/**/*",
26-
"!{projectRoot}/**/*.md"
27-
]
13+
"sharedGlobals": ["{workspaceRoot}/*.js", "{workspaceRoot}/*.json"],
14+
"production": ["default", "!{projectRoot}/test/**/*", "!{projectRoot}/**/*.md"]
2815
},
2916
"targetDefaults": {
3017
"build:bundle": {
3118
"inputs": ["production", "^production"],
32-
"dependsOn": [
33-
"build:transpile"
34-
],
35-
"outputs": [
36-
"{projectRoot}/build/bundles"
37-
]
19+
"dependsOn": ["build:transpile"],
20+
"outputs": ["{projectRoot}/build/bundles"]
3821
},
3922
"build:tarball": {
4023
"inputs": ["production", "^production"],
41-
"dependsOn": [
42-
"build:transpile",
43-
"build:types"
44-
],
24+
"dependsOn": ["build:transpile", "build:types"],
4525
"outputs": []
4626
},
4727
"build:transpile": {
4828
"inputs": ["production", "^production"],
49-
"dependsOn": [
50-
"^build:transpile:uncached",
51-
"^build:transpile",
52-
"build:transpile:uncached"
53-
],
54-
"outputs": [
55-
"{projectRoot}/build/npm",
56-
"{projectRoot}/build/esm",
57-
"{projectRoot}/build/cjs"
58-
]
29+
"dependsOn": ["^build:transpile:uncached", "^build:transpile", "build:transpile:uncached"],
30+
"outputs": ["{projectRoot}/build/npm", "{projectRoot}/build/esm", "{projectRoot}/build/cjs"]
5931
},
6032
"build:types": {
6133
"inputs": ["production", "^production"],
62-
"dependsOn": [
63-
"^build:types"
64-
],
34+
"dependsOn": ["^build:types"],
6535
"outputs": [
6636
"{projectRoot}/build/types",
6737
"{projectRoot}/build/types-ts3.8",
@@ -78,5 +48,6 @@
7848
"inputs": ["default"],
7949
"outputs": ["{projectRoot}/coverage"]
8050
}
81-
}
51+
},
52+
"$schema": "./node_modules/nx/schemas/nx-schema.json"
8253
}

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@
2525
"lint:eslint": "lerna run lint:eslint",
2626
"validate:es5": "lerna run validate:es5",
2727
"postpublish": "lerna run --stream --concurrency 1 postpublish",
28-
"test": "lerna run --ignore @sentry-internal/* test",
29-
"test:unit": "lerna run --ignore @sentry-internal/* test:unit",
30-
"test-ci-browser": "lerna run test --ignore \"@sentry/{node,opentelemetry-node,serverless,nextjs,remix,gatsby,sveltekit}\" --ignore @sentry-internal/*",
28+
"test": "lerna run --ignore \"@sentry-internal/{browser-integration-tests,e2e-tests,integration-shims,node-integration-tests,overhead-metrics}\" test",
29+
"test:unit": "lerna run --ignore \"@sentry-internal/{browser-integration-tests,e2e-tests,integration-shims,node-integration-tests,overhead-metrics}\" test:unit",
30+
"test-ci-browser": "lerna run test --ignore \"@sentry/{node,opentelemetry-node,serverless,nextjs,remix,gatsby,sveltekit}\" --ignore \"@sentry-internal/{browser-integration-tests,e2e-tests,integration-shims,node-integration-tests,overhead-metrics}\"",
3131
"test-ci-node": "ts-node ./scripts/node-unit-tests.ts",
3232
"test:update-snapshots": "lerna run test:update-snapshots",
3333
"yalc:publish": "lerna run yalc:publish"
@@ -98,7 +98,7 @@
9898
"jsdom": "^19.0.0",
9999
"karma-browserstack-launcher": "^1.5.1",
100100
"karma-firefox-launcher": "^1.1.0",
101-
"lerna": "6.5.0-alpha.2",
101+
"lerna": "7.1.1",
102102
"madge": "4.0.2",
103103
"mocha": "^6.1.4",
104104
"nodemon": "^2.0.16",

packages/angular-ivy/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ import { TraceModule } from '@sentry/angular-ivy';
175175
export class AppModule {}
176176
```
177177

178-
Then inside your components template (keep in mind that directive name attribute is required):
178+
Then, inside your component's template (keep in mind that the directive's name attribute is required):
179179

180180
```html
181181
<app-header trace="header"></app-header>

packages/angular/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
If you're using Angular 12 or newer, we recommend using `@sentry/angular-ivy` for native support with Angular's rendering engine Ivy.
2323

24-
This SDK stilll officially supports Angular 10-15. If you are using an older version of Angular and experience problems with the Angular SDK, we recommend downgrading the SDK to version 6.x.
24+
This SDK still officially supports Angular 10-15. If you are using an older version of Angular and experience problems with the Angular SDK, we recommend downgrading the SDK to version 6.x.
2525

2626
## General
2727

@@ -175,7 +175,7 @@ import { TraceModule } from '@sentry/angular';
175175
export class AppModule {}
176176
```
177177

178-
Then inside your components template (keep in mind that directive name attribute is required):
178+
Then, inside your component's template (keep in mind that the directive's name attribute is required):
179179

180180
```html
181181
<app-header trace="header"></app-header>

packages/angular/src/errorhandler.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@ function isErrorOrErrorLikeObject(value: unknown): value is Error {
6969
const candidate = value as ErrorCandidate;
7070

7171
return (
72-
isString(candidate.name) &&
7372
isString(candidate.name) &&
7473
isString(candidate.message) &&
7574
(undefined === candidate.stack || isString(candidate.stack))

packages/angular/tsconfig.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@
55

66
"compilerOptions": {
77
// package-specific options
8-
"experimentalDecorators": true
8+
"experimentalDecorators": true,
9+
// Avoid loading all @types/... packages as they may not be TS 4.0 compatible
10+
// We have no types packages here we directly depend on,
11+
// if we ever add some we need to allowlist them here
12+
"types": []
913
}
1014
}

packages/browser-integration-tests/suites/replay/captureReplay/test.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@ sentryTest('should capture replays (@sentry/browser export)', async ({ getLocalT
5656
version: SDK_VERSION,
5757
name: 'sentry.javascript.browser',
5858
},
59-
sdkProcessingMetadata: {},
6059
request: {
6160
url: expect.stringContaining('/dist/index.html'),
6261
headers: {
@@ -94,7 +93,6 @@ sentryTest('should capture replays (@sentry/browser export)', async ({ getLocalT
9493
version: SDK_VERSION,
9594
name: 'sentry.javascript.browser',
9695
},
97-
sdkProcessingMetadata: {},
9896
request: {
9997
url: expect.stringContaining('/dist/index.html'),
10098
headers: {

packages/browser-integration-tests/suites/replay/captureReplayFromReplayPackage/test.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@ sentryTest('should capture replays (@sentry/replay export)', async ({ getLocalTe
5656
version: SDK_VERSION,
5757
name: 'sentry.javascript.browser',
5858
},
59-
sdkProcessingMetadata: {},
6059
request: {
6160
url: expect.stringContaining('/dist/index.html'),
6261
headers: {
@@ -94,7 +93,6 @@ sentryTest('should capture replays (@sentry/replay export)', async ({ getLocalTe
9493
version: SDK_VERSION,
9594
name: 'sentry.javascript.browser',
9695
},
97-
sdkProcessingMetadata: {},
9896
request: {
9997
url: expect.stringContaining('/dist/index.html'),
10098
headers: {

packages/browser-integration-tests/suites/replay/dsc/test.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ sentryTest(
4949
trace_id: expect.any(String),
5050
public_key: 'public',
5151
replay_id: replay.session?.id,
52+
sampled: 'true',
5253
});
5354
},
5455
);
@@ -93,6 +94,7 @@ sentryTest(
9394
sample_rate: '1',
9495
trace_id: expect.any(String),
9596
public_key: 'public',
97+
sampled: 'true',
9698
});
9799
},
98100
);
@@ -152,6 +154,7 @@ sentryTest(
152154
trace_id: expect.any(String),
153155
public_key: 'public',
154156
replay_id: replay.session?.id,
157+
sampled: 'true',
155158
});
156159
},
157160
);
@@ -199,6 +202,7 @@ sentryTest(
199202
sample_rate: '1',
200203
trace_id: expect.any(String),
201204
public_key: 'public',
205+
sampled: 'true',
202206
});
203207
},
204208
);

0 commit comments

Comments
 (0)