Skip to content

Commit 551146b

Browse files
authored
Merge branch 'develop' into dependabot/github_actions/actions/setup-node-6
2 parents 84941ec + be29c56 commit 551146b

File tree

442 files changed

+9429
-2040
lines changed

Some content is hidden

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

442 files changed

+9429
-2040
lines changed

.github/ISSUE_TEMPLATE/bug.yml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -136,13 +136,14 @@ body:
136136
id: additional
137137
attributes:
138138
label: Additional Context
139-
description:
140-
Add any other context here. Please keep the pre-filled text, which helps us manage issue prioritization.
141-
value: |-
142-
<sub>Tip: React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding `+1` or `me too`, to help us triage it.</sub>
139+
description: Add any other context here.
143140
validations:
144141
required: false
145-
- type: markdown
142+
- type: dropdown
146143
attributes:
147-
value: |-
148-
## Thanks 🙏
144+
label: 'Priority'
145+
description: Please keep the pre-filled option, which helps us manage issue prioritization.
146+
default: 0
147+
options:
148+
- <sub>React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding `+1`
149+
or `me too`, to help us triage it.</sub>

.github/ISSUE_TEMPLATE/feature.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,14 @@ body:
2727
id: additional
2828
attributes:
2929
label: Additional Context
30-
description:
31-
Add any other context here. Please keep the pre-filled text, which helps us manage feature prioritization.
32-
value: |-
33-
<sub>Tip: React with 👍 to help prioritize this improvement. Please use comments to provide useful context, avoiding `+1` or `me too`, to help us triage it.</sub>
30+
description: Add any other context here.
3431
validations:
3532
required: false
36-
- type: markdown
33+
- type: dropdown
3734
attributes:
38-
value: |-
39-
## Thanks 🙏
40-
Check our [triage docs](https://open.sentry.io/triage/) for what to expect next.
35+
label: 'Priority'
36+
description: Please keep the pre-filled option, which helps us manage issue prioritization.
37+
default: 0
38+
options:
39+
- <sub>React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding `+1`
40+
or `me too`, to help us triage it.</sub>

.size-limit.js

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@ module.exports = [
55
// Browser SDK (ESM)
66
{
77
name: '@sentry/browser',
8-
path: 'packages/browser/build/npm/esm/index.js',
8+
path: 'packages/browser/build/npm/esm/prod/index.js',
99
import: createImport('init'),
1010
gzip: true,
1111
limit: '25 KB',
1212
},
1313
{
1414
name: '@sentry/browser - with treeshaking flags',
15-
path: 'packages/browser/build/npm/esm/index.js',
15+
path: 'packages/browser/build/npm/esm/prod/index.js',
1616
import: createImport('init'),
1717
gzip: true,
1818
limit: '24.1 KB',
@@ -35,28 +35,28 @@ module.exports = [
3535
},
3636
{
3737
name: '@sentry/browser (incl. Tracing)',
38-
path: 'packages/browser/build/npm/esm/index.js',
38+
path: 'packages/browser/build/npm/esm/prod/index.js',
3939
import: createImport('init', 'browserTracingIntegration'),
4040
gzip: true,
41-
limit: '41.3 KB',
41+
limit: '41.38 KB',
4242
},
4343
{
4444
name: '@sentry/browser (incl. Tracing, Profiling)',
45-
path: 'packages/browser/build/npm/esm/index.js',
45+
path: 'packages/browser/build/npm/esm/prod/index.js',
4646
import: createImport('init', 'browserTracingIntegration', 'browserProfilingIntegration'),
4747
gzip: true,
4848
limit: '48 KB',
4949
},
5050
{
5151
name: '@sentry/browser (incl. Tracing, Replay)',
52-
path: 'packages/browser/build/npm/esm/index.js',
52+
path: 'packages/browser/build/npm/esm/prod/index.js',
5353
import: createImport('init', 'browserTracingIntegration', 'replayIntegration'),
5454
gzip: true,
5555
limit: '80 KB',
5656
},
5757
{
5858
name: '@sentry/browser (incl. Tracing, Replay) - with treeshaking flags',
59-
path: 'packages/browser/build/npm/esm/index.js',
59+
path: 'packages/browser/build/npm/esm/prod/index.js',
6060
import: createImport('init', 'browserTracingIntegration', 'replayIntegration'),
6161
gzip: true,
6262
limit: '75 KB',
@@ -79,35 +79,35 @@ module.exports = [
7979
},
8080
{
8181
name: '@sentry/browser (incl. Tracing, Replay with Canvas)',
82-
path: 'packages/browser/build/npm/esm/index.js',
82+
path: 'packages/browser/build/npm/esm/prod/index.js',
8383
import: createImport('init', 'browserTracingIntegration', 'replayIntegration', 'replayCanvasIntegration'),
8484
gzip: true,
8585
limit: '85 KB',
8686
},
8787
{
8888
name: '@sentry/browser (incl. Tracing, Replay, Feedback)',
89-
path: 'packages/browser/build/npm/esm/index.js',
89+
path: 'packages/browser/build/npm/esm/prod/index.js',
9090
import: createImport('init', 'browserTracingIntegration', 'replayIntegration', 'feedbackIntegration'),
9191
gzip: true,
9292
limit: '97 KB',
9393
},
9494
{
9595
name: '@sentry/browser (incl. Feedback)',
96-
path: 'packages/browser/build/npm/esm/index.js',
96+
path: 'packages/browser/build/npm/esm/prod/index.js',
9797
import: createImport('init', 'feedbackIntegration'),
9898
gzip: true,
9999
limit: '42 KB',
100100
},
101101
{
102102
name: '@sentry/browser (incl. sendFeedback)',
103-
path: 'packages/browser/build/npm/esm/index.js',
103+
path: 'packages/browser/build/npm/esm/prod/index.js',
104104
import: createImport('init', 'sendFeedback'),
105105
gzip: true,
106106
limit: '30 KB',
107107
},
108108
{
109109
name: '@sentry/browser (incl. FeedbackAsync)',
110-
path: 'packages/browser/build/npm/esm/index.js',
110+
path: 'packages/browser/build/npm/esm/prod/index.js',
111111
import: createImport('init', 'feedbackAsyncIntegration'),
112112
gzip: true,
113113
limit: '35 KB',
@@ -127,7 +127,7 @@ module.exports = [
127127
import: createImport('init', 'ErrorBoundary', 'reactRouterV6BrowserTracingIntegration'),
128128
ignore: ['react/jsx-runtime'],
129129
gzip: true,
130-
limit: '43.3 KB',
130+
limit: '43.33 KB',
131131
},
132132
// Vue SDK (ESM)
133133
{
@@ -142,7 +142,7 @@ module.exports = [
142142
path: 'packages/vue/build/esm/index.js',
143143
import: createImport('init', 'browserTracingIntegration'),
144144
gzip: true,
145-
limit: '43.1 KB',
145+
limit: '43.2 KB',
146146
},
147147
// Svelte SDK (ESM)
148148
{
@@ -190,14 +190,14 @@ module.exports = [
190190
path: createCDNPath('bundle.tracing.min.js'),
191191
gzip: false,
192192
brotli: false,
193-
limit: '124.1 KB',
193+
limit: '125 KB',
194194
},
195195
{
196196
name: 'CDN Bundle (incl. Tracing, Replay) - uncompressed',
197197
path: createCDNPath('bundle.tracing.replay.min.js'),
198198
gzip: false,
199199
brotli: false,
200-
limit: '240 KB',
200+
limit: '245 KB',
201201
},
202202
{
203203
name: 'CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed',
@@ -240,7 +240,7 @@ module.exports = [
240240
import: createImport('init'),
241241
ignore: [...builtinModules, ...nodePrefixedBuiltinModules],
242242
gzip: true,
243-
limit: '158 KB',
243+
limit: '160 KB',
244244
},
245245
{
246246
name: '@sentry/node - without tracing',

CHANGELOG.md

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

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

7+
- fix(node): Fix Spotlight configuration precedence to match specification (#18195)
8+
9+
## 10.25.0
10+
11+
- feat(browser): Include Spotlight in development bundles ([#18078](https://github.com/getsentry/sentry-javascript/pull/18078))
12+
- feat(cloudflare): Add metrics exports ([#18147](https://github.com/getsentry/sentry-javascript/pull/18147))
13+
- feat(core): Truncate request string inputs in OpenAI integration ([#18136](https://github.com/getsentry/sentry-javascript/pull/18136))
14+
- feat(metrics): Add missing metric node exports ([#18149](https://github.com/getsentry/sentry-javascript/pull/18149))
15+
- feat(node): Add `maxCacheKeyLength` to Redis integration (remove truncation) ([#18045](https://github.com/getsentry/sentry-javascript/pull/18045))
16+
- feat(vercel-edge): Add metrics export ([#18148](https://github.com/getsentry/sentry-javascript/pull/18148))
17+
- fix(core): Only consider exception mechanism when updating session status from event with exceptions ([#18137](https://github.com/getsentry/sentry-javascript/pull/18137))
18+
- ref(browser): Remove truncation when not needed ([#18051](https://github.com/getsentry/sentry-javascript/pull/18051))
19+
20+
<details>
21+
<summary> <strong>Internal Changes</strong> </summary>
22+
23+
- chore(build): Fix incorrect versions after merge ([#18154](https://github.com/getsentry/sentry-javascript/pull/18154))
24+
</details>
25+
26+
## 10.24.0
27+
28+
### Important Changes
29+
30+
- **feat(metrics): Add top level option `enableMetrics` and `beforeSendMetric` ([#18088](https://github.com/getsentry/sentry-javascript/pull/18088))**
31+
32+
This PR moves `enableMetrics` and `beforeSendMetric` out of the `_experiments` options.
33+
The metrics feature will now be **enabled by default** (none of our integrations will auto-emit metrics as of now), but you can disable sending metrics via `enableMetrics: false`.
34+
Metric options within `_experiments` got deprecated but will still work as of now, they will be removed with the next major version of our SDKs.
35+
36+
### Other Changes
37+
38+
- feat(aws): Add `SENTRY_LAYER_EXTENSION` to configure using the lambda layer extension via env variables ([#18101](https://github.com/getsentry/sentry-javascript/pull/18101))
39+
- feat(core): Include all exception object keys instead of truncating ([#18044](https://github.com/getsentry/sentry-javascript/pull/18044))
40+
- feat(metrics)!: Update types ([#17907](https://github.com/getsentry/sentry-javascript/pull/17907))
41+
- feat(replay): ignore `background-image` when `blockAllMedia` is enabled ([#18019](https://github.com/getsentry/sentry-javascript/pull/18019))
42+
- fix(nextjs): Delete css map files ([#18131](https://github.com/getsentry/sentry-javascript/pull/18131))
43+
- fix(nextjs): Stop accessing sync props in template ([#18113](https://github.com/getsentry/sentry-javascript/pull/18113))
44+
45+
<details>
46+
<summary> <strong>Internal Changes</strong> </summary>
47+
48+
- chore: X handle update ([#18117](https://github.com/getsentry/sentry-javascript/pull/18117))
49+
- chore(eslint): Add eslint-plugin-regexp rule (dev-packages) ([#18063](https://github.com/getsentry/sentry-javascript/pull/18063))
50+
- test(next): fix flakey tests ([#18100](https://github.com/getsentry/sentry-javascript/pull/18100))
51+
- test(node-core): Proof that withMonitor doesn't create a new trace ([#18057](https://github.com/getsentry/sentry-javascript/pull/18057))
52+
</details>
53+
54+
## 10.23.0
55+
56+
- feat(core): Send `user-agent` header with envelope requests in server SDKs ([#17929](https://github.com/getsentry/sentry-javascript/pull/17929))
57+
- feat(browser): Limit transport buffer size ([#18046](https://github.com/getsentry/sentry-javascript/pull/18046))
58+
- feat(core): Remove default value of `maxValueLength: 250` ([#18043](https://github.com/getsentry/sentry-javascript/pull/18043))
59+
- feat(react-router): Align options with shared build time options type ([#18014](https://github.com/getsentry/sentry-javascript/pull/18014))
60+
- fix(browser-utils): cache element names for INP ([#18052](https://github.com/getsentry/sentry-javascript/pull/18052))
61+
- fix(browser): Capture unhandled rejection errors for web worker integration ([#18054](https://github.com/getsentry/sentry-javascript/pull/18054))
62+
- fix(cloudflare): Ensure types for cloudflare handlers ([#18064](https://github.com/getsentry/sentry-javascript/pull/18064))
63+
- fix(nextjs): Update proxy template wrapping ([#18086](https://github.com/getsentry/sentry-javascript/pull/18086))
64+
- fix(nuxt): Added top-level fallback exports ([#18083](https://github.com/getsentry/sentry-javascript/pull/18083))
65+
- fix(nuxt): check for H3 error cause before re-capturing ([#18035](https://github.com/getsentry/sentry-javascript/pull/18035))
66+
- fix(replay): Linked errors not resetting session id ([#17854](https://github.com/getsentry/sentry-javascript/pull/17854))
67+
- fix(tracemetrics): Bump metrics buffer to 1k ([#18039](https://github.com/getsentry/sentry-javascript/pull/18039))
68+
- fix(vue): Make `options` parameter optional on `attachErrorHandler` ([#18072](https://github.com/getsentry/sentry-javascript/pull/18072))
69+
- ref(core): Set span status `internal_error` instead of `unknown_error` ([#17909](https://github.com/getsentry/sentry-javascript/pull/17909))
70+
71+
<details>
72+
<summary> <strong>Internal Changes</strong> </summary>
73+
74+
- fix(tests): un-override nitro dep version for nuxt-3 test ([#18056](https://github.com/getsentry/sentry-javascript/pull/18056))
75+
- fix(e2e): Add p-map override to fix React Router 7 test builds ([#18068](https://github.com/getsentry/sentry-javascript/pull/18068))
76+
- feat: Add a note to save changes before starting ([#17987](https://github.com/getsentry/sentry-javascript/pull/17987))
77+
- test(browser): Add test for INP target name after navigation or DOM changes ([#18033](https://github.com/getsentry/sentry-javascript/pull/18033))
78+
- chore: Add external contributor to CHANGELOG.md ([#18032](https://github.com/getsentry/sentry-javascript/pull/18032))
79+
- chore(aws-serverless): Fix typo in timeout warning function name ([#18031](https://github.com/getsentry/sentry-javascript/pull/18031))
80+
- chore(browser): upgrade fake-indexeddb to v6 ([#17975](https://github.com/getsentry/sentry-javascript/pull/17975))
81+
- chore(tests): pass test flags through to the test command ([#18062](https://github.com/getsentry/sentry-javascript/pull/18062))
82+
83+
</details>
84+
785
Work in this release was contributed by @hanseo0507. Thank you for your contribution!
886

987
## 10.22.0

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ convenient interface and improved consistency between various JavaScript environ
2828
- [![Forum](https://img.shields.io/badge/forum-sentry-green.svg)](https://forum.sentry.io/c/sdks)
2929
- [![Discord](https://img.shields.io/discord/621778831602221064)](https://discord.gg/Ww9hbqr)
3030
- [![Stack Overflow](https://img.shields.io/badge/stack%20overflow-sentry-green.svg)](http://stackoverflow.com/questions/tagged/sentry)
31-
- [![Twitter Follow](https://img.shields.io/twitter/follow/getsentry?label=getsentry&style=social)](https://twitter.com/intent/follow?screen_name=getsentry)
31+
- [![X Follow](https://img.shields.io/twitter/follow/sentry?label=sentry&style=social)](https://x.com/intent/follow?screen_name=sentry)
3232

3333
## Contents
3434

dev-packages/browser-integration-tests/.eslintrc.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ module.exports = {
33
browser: true,
44
node: true,
55
},
6-
extends: ['../../.eslintrc.js'],
6+
// todo: remove regexp plugin from here once we add it to base.js eslint config for the whole project
7+
extends: ['../../.eslintrc.js', 'plugin:regexp/recommended'],
8+
plugins: ['regexp'],
79
ignorePatterns: [
810
'suites/**/subject.js',
911
'suites/**/dist/*',

dev-packages/browser-integration-tests/package.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@sentry-internal/browser-integration-tests",
3-
"version": "10.22.0",
3+
"version": "10.25.0",
44
"main": "index.js",
55
"license": "MIT",
66
"engines": {
@@ -43,7 +43,7 @@
4343
"@babel/preset-typescript": "^7.16.7",
4444
"@playwright/test": "~1.53.2",
4545
"@sentry-internal/rrweb": "2.34.0",
46-
"@sentry/browser": "10.22.0",
46+
"@sentry/browser": "10.25.0",
4747
"@supabase/supabase-js": "2.49.3",
4848
"axios": "^1.12.2",
4949
"babel-loader": "^8.2.2",
@@ -54,6 +54,7 @@
5454
"devDependencies": {
5555
"@types/glob": "8.0.0",
5656
"@types/node": "^18.19.1",
57+
"eslint-plugin-regexp": "^1.15.0",
5758
"glob": "8.0.3"
5859
},
5960
"volta": {
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,34 @@
1+
// This worker manually replicates what Sentry.registerWebWorker() does
2+
// (In real code with a bundler, you'd import and call Sentry.registerWebWorker({ self }))
3+
14
self._sentryDebugIds = {
25
'Error at http://sentry-test.io/worker.js': 'worker-debug-id-789',
36
};
47

8+
// Send debug IDs
59
self.postMessage({
610
_sentryMessage: true,
711
_sentryDebugIds: self._sentryDebugIds,
812
});
913

14+
// Set up unhandledrejection handler (same as registerWebWorker)
15+
self.addEventListener('unhandledrejection', event => {
16+
self.postMessage({
17+
_sentryMessage: true,
18+
_sentryWorkerError: {
19+
reason: event.reason,
20+
filename: self.location.href,
21+
},
22+
});
23+
});
24+
1025
self.addEventListener('message', event => {
1126
if (event.data.type === 'throw-error') {
1227
throw new Error('Worker error for testing');
1328
}
29+
30+
if (event.data.type === 'throw-rejection') {
31+
// Create an unhandled rejection
32+
Promise.reject(new Error('Worker unhandled rejection'));
33+
}
1434
});

dev-packages/browser-integration-tests/suites/integrations/webWorker/init.js

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,17 @@ const worker = new Worker('/worker.js');
99

1010
Sentry.addIntegration(Sentry.webWorkerIntegration({ worker }));
1111

12-
const btn = document.getElementById('errWorker');
12+
const btnError = document.getElementById('errWorker');
13+
const btnRejection = document.getElementById('rejectionWorker');
1314

14-
btn.addEventListener('click', () => {
15+
btnError.addEventListener('click', () => {
1516
worker.postMessage({
1617
type: 'throw-error',
1718
});
1819
});
20+
21+
btnRejection.addEventListener('click', () => {
22+
worker.postMessage({
23+
type: 'throw-rejection',
24+
});
25+
});

dev-packages/browser-integration-tests/suites/integrations/webWorker/template.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,6 @@
55
</head>
66
<body>
77
<button id="errWorker">Throw error in worker</button>
8+
<button id="rejectionWorker">Throw unhandled rejection in worker</button>
89
</body>
910
</html>

0 commit comments

Comments
 (0)