Skip to content

Commit 1f73e1d

Browse files
authored
Merge branch 'develop' into timfish/time-side-effects
2 parents f1e186c + c56d84d commit 1f73e1d

File tree

105 files changed

+1132
-327
lines changed

Some content is hidden

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

105 files changed

+1132
-327
lines changed

.eslintrc.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ module.exports = {
2121
'examples/**',
2222
'test/manual/**',
2323
'types/**',
24+
'scripts/*.js',
2425
],
2526
reportUnusedDisableDirectives: true,
2627
overrides: [
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
fail-on-severity: 'high'
2+
allow-ghsas:
3+
# dependency review does not allow specific file exclusions
4+
# we use an older version of NextJS in our tests and thus need to
5+
# exclude this
6+
# once our minimum supported version is over 14.1.1 this can be removed
7+
- GHSA-fr5h-rqp8-mj6g

.github/workflows/build.yml

Lines changed: 41 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -904,6 +904,7 @@ jobs:
904904
'nextjs-13',
905905
'nextjs-14',
906906
'nextjs-15',
907+
'nextjs-turbo',
907908
'nextjs-t3',
908909
'react-17',
909910
'react-19',
@@ -1018,12 +1019,12 @@ jobs:
10181019

10191020
- name: Build E2E app
10201021
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1021-
timeout-minutes: 5
1022+
timeout-minutes: 7
10221023
run: pnpm ${{ matrix.build-command || 'test:build' }}
10231024

10241025
- name: Run E2E test
10251026
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1026-
timeout-minutes: 5
1027+
timeout-minutes: 10
10271028
run: pnpm test:assert
10281029

10291030
- name: Upload Playwright Traces
@@ -1035,6 +1036,20 @@ jobs:
10351036
overwrite: true
10361037
retention-days: 7
10371038

1039+
- name: Pre-process E2E Test Dumps
1040+
run: |
1041+
node ./scripts/normalize-e2e-test-dump-transaction-events.js
1042+
1043+
- name: Upload E2E Test Event Dumps
1044+
uses: actions/upload-artifact@v4
1045+
if: always()
1046+
with:
1047+
name: E2E Test Dump (${{ matrix.label || matrix.test-application }})
1048+
path: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}/event-dumps
1049+
overwrite: true
1050+
retention-days: 7
1051+
if-no-files-found: ignore
1052+
10381053
- name: Upload test results to Codecov
10391054
if: cancelled() == false
10401055
continue-on-error: true
@@ -1074,10 +1089,6 @@ jobs:
10741089
'react-send-to-sentry',
10751090
'node-express-send-to-sentry',
10761091
'debug-id-sourcemaps',
1077-
'nextjs-app-dir',
1078-
'nextjs-13',
1079-
'nextjs-14',
1080-
'nextjs-15',
10811092
]
10821093
build-command:
10831094
- false
@@ -1116,6 +1127,12 @@ jobs:
11161127
- test-application: 'nextjs-15'
11171128
build-command: 'test:build-latest'
11181129
label: 'nextjs-15 (latest)'
1130+
- test-application: 'nextjs-turbo'
1131+
build-command: 'test:build-canary'
1132+
label: 'nextjs-turbo (canary)'
1133+
- test-application: 'nextjs-turbo'
1134+
build-command: 'test:build-latest'
1135+
label: 'nextjs-turbo (latest)'
11191136

11201137
steps:
11211138
- name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
@@ -1167,14 +1184,28 @@ jobs:
11671184

11681185
- name: Build E2E app
11691186
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1170-
timeout-minutes: 5
1187+
timeout-minutes: 7
11711188
run: pnpm ${{ matrix.build-command || 'test:build' }}
11721189

11731190
- name: Run E2E test
11741191
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1175-
timeout-minutes: 5
1192+
timeout-minutes: 10
11761193
run: pnpm ${{ matrix.assert-command || 'test:assert' }}
11771194

1195+
- name: Pre-process E2E Test Dumps
1196+
run: |
1197+
node ./scripts/normalize-e2e-test-dump-transaction-events.js
1198+
1199+
- name: Upload E2E Test Event Dumps
1200+
uses: actions/upload-artifact@v4
1201+
if: always()
1202+
with:
1203+
name: E2E Test Dump (${{ matrix.label || matrix.test-application }})
1204+
path: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}/event-dumps
1205+
overwrite: true
1206+
retention-days: 7
1207+
if-no-files-found: ignore
1208+
11781209
- name: Deploy Astro to Cloudflare
11791210
uses: cloudflare/pages-action@v1
11801211
if: matrix.test-application == 'cloudflare-astro'
@@ -1273,12 +1304,12 @@ jobs:
12731304

12741305
- name: Build E2E app
12751306
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1276-
timeout-minutes: 5
1307+
timeout-minutes: 7
12771308
run: yarn ${{ matrix.build-command || 'test:build' }}
12781309

12791310
- name: Run E2E test
12801311
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1281-
timeout-minutes: 5
1312+
timeout-minutes: 10
12821313
run: yarn test:assert
12831314

12841315
job_required_jobs_passed:

.github/workflows/canary.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,12 @@ jobs:
9696
- test-application: 'nextjs-15'
9797
build-command: 'test:build-latest'
9898
label: 'nextjs-15 (latest)'
99+
- test-application: 'nextjs-turbo'
100+
build-command: 'test:build-canary'
101+
label: 'nextjs-turbo (canary)'
102+
- test-application: 'nextjs-turbo'
103+
build-command: 'test:build-latest'
104+
label: 'nextjs-turbo (latest)'
99105
- test-application: 'react-create-hash-router'
100106
build-command: 'test:build-canary'
101107
label: 'react-create-hash-router (canary)'
@@ -140,7 +146,7 @@ jobs:
140146

141147
- name: Build E2E app
142148
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
143-
timeout-minutes: 5
149+
timeout-minutes: 7
144150
run: yarn ${{ matrix.build-command }}
145151

146152
- name: Run E2E test

CHANGELOG.md

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,102 @@
1010

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

13+
## 8.35.0
14+
15+
### Beta release of the official Nuxt Sentry SDK
16+
17+
This release marks the beta release of the `@sentry/nuxt` Sentry SDK. For details on how to use it, check out the
18+
[Sentry Nuxt SDK README](https://github.com/getsentry/sentry-javascript/tree/develop/packages/nuxt). Please reach out on
19+
[GitHub](https://github.com/getsentry/sentry-javascript/issues/new/choose) if you have any feedback or concerns.
20+
21+
- **feat(nuxt): Make dynamic import() wrapping default
22+
([#13958](https://github.com/getsentry/sentry-javascript/pull/13958))** (BREAKING)
23+
- **feat(nuxt): Add Rollup plugin to wrap server entry with `import()`
24+
([#13945](https://github.com/getsentry/sentry-javascript/pull/13945))**
25+
26+
**It is no longer required to add a Node `--import` flag. Please update your start command to avoid initializing Sentry
27+
twice (BREAKING CHANGE).** The SDK will now apply modifications during the build of your application to allow for
28+
patching of libraries during runtime. If run into issues with this change, you can disable this behavior in your
29+
`nuxt.config.ts` and use the `--import` flag instead:
30+
31+
```js
32+
sentry: {
33+
dynamicImportForServerEntry: false;
34+
}
35+
```
36+
37+
- **feat(nuxt): Respect user-provided source map generation settings
38+
([#14020](https://github.com/getsentry/sentry-javascript/pull/14020))**
39+
40+
We now require you to explicitly enable sourcemaps for the clientside so that Sentry can un-minify your errors. We made
41+
this change so source maps aren't accidentally leaked to the public. Enable source maps on the client as follows:
42+
43+
```js
44+
export default defineNuxtConfig({
45+
sourcemap: {
46+
client: true,
47+
},
48+
});
49+
```
50+
51+
- feat(nuxt): Log server instrumentation might not work in dev
52+
([#14021](https://github.com/getsentry/sentry-javascript/pull/14021))
53+
- feat(nuxt): Add Http `responseHook` with `waitUntil`
54+
([#13986](https://github.com/getsentry/sentry-javascript/pull/13986))
55+
56+
### Important Changes
57+
58+
- **feat(vue): Add Pinia plugin ([#13841](https://github.com/getsentry/sentry-javascript/pull/13841))**
59+
60+
Support for [Pinia](https://pinia.vuejs.org/) is added in this release for `@sentry/vue`. To capture Pinia state data,
61+
add `createSentryPiniaPlugin()` to your Pinia store:
62+
63+
```javascript
64+
import { createPinia } from 'pinia';
65+
import { createSentryPiniaPlugin } from '@sentry/vue';
66+
67+
const pinia = createPinia();
68+
69+
pinia.use(createSentryPiniaPlugin());
70+
```
71+
72+
- **feat(node): Implement Sentry-specific http instrumentation
73+
([#13763](https://github.com/getsentry/sentry-javascript/pull/13763))**
74+
75+
This change introduces a new `SentryHttpInstrumentation` to handle non-span related HTTP instrumentation, allowing it to
76+
run side-by-side with OTel's `HttpInstrumentation`. This improves support for custom OTel setups and avoids conflicts
77+
with Sentry's instrumentation. Additionally, the `spans: false` option is reintroduced for `httpIntegration` to disable
78+
span emission while still allowing custom `HttpInstrumentation` instances (`httpIntegration({ spans: false })`).
79+
1380
- **feat(core): Make stream instrumentation opt-in
1481
([#13951](https://github.com/getsentry/sentry-javascript/pull/13951))**
1582

1683
This change adds a new option `trackFetchStreamPerformance` to the browser tracing integration. Only when set to `true`,
1784
Sentry will instrument streams via fetch.
1885

86+
### Other Changes
87+
88+
- feat(node): Expose `suppressTracing` API ([#13875](https://github.com/getsentry/sentry-javascript/pull/13875))
89+
- feat(replay): Do not log "timeout while trying to read resp body" as exception
90+
([#13965](https://github.com/getsentry/sentry-javascript/pull/13965))
91+
- chore(node): Bump `@opentelemetry/instrumentation-express` to `0.43.0`
92+
([#13948](https://github.com/getsentry/sentry-javascript/pull/13948))
93+
- chore(node): Bump `@opentelemetry/instrumentation-fastify` to `0.40.0`
94+
([#13983](https://github.com/getsentry/sentry-javascript/pull/13983))
95+
- fix: Ensure type for `init` is correct in meta frameworks
96+
([#13938](https://github.com/getsentry/sentry-javascript/pull/13938))
97+
- fix(core): `.set` the `sentry-trace` header instead of `.append`ing in fetch instrumentation
98+
([#13907](https://github.com/getsentry/sentry-javascript/pull/13907))
99+
- fix(module): keep version for node ESM package ([#13922](https://github.com/getsentry/sentry-javascript/pull/13922))
100+
- fix(node): Ensure `ignoreOutgoingRequests` of `httpIntegration` applies to breadcrumbs
101+
([#13970](https://github.com/getsentry/sentry-javascript/pull/13970))
102+
- fix(replay): Fix onError sampling when loading an expired buffered session
103+
([#13962](https://github.com/getsentry/sentry-javascript/pull/13962))
104+
- fix(replay): Ignore older performance entries when starting manually
105+
([#13969](https://github.com/getsentry/sentry-javascript/pull/13969))
106+
- perf(node): Truncate breadcrumb messages created by console integration
107+
([#14006](https://github.com/getsentry/sentry-javascript/pull/14006))
108+
19109
Work in this release was contributed by @ZakrepaShe and @zhiyan114. Thank you for your contributions!
20110

21111
## 8.34.0

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

Lines changed: 2 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": "8.34.0",
3+
"version": "8.35.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.44.1",
4545
"@sentry-internal/rrweb": "2.11.0",
46-
"@sentry/browser": "8.34.0",
46+
"@sentry/browser": "8.35.0",
4747
"axios": "1.6.7",
4848
"babel-loader": "^8.2.2",
4949
"html-webpack-plugin": "^5.5.0",

dev-packages/bundle-analyzer-scenarios/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/bundle-analyzer-scenarios",
3-
"version": "8.34.0",
3+
"version": "8.35.0",
44
"description": "Scenarios to test bundle analysis with",
55
"repository": "git://github.com/getsentry/sentry-javascript.git",
66
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/dev-packages/bundle-analyzer-scenarios",

dev-packages/clear-cache-gh-action/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@sentry-internal/clear-cache-gh-action",
33
"description": "An internal Github Action to clear GitHub caches.",
4-
"version": "8.34.0",
4+
"version": "8.35.0",
55
"license": "MIT",
66
"engines": {
77
"node": ">=18"

dev-packages/e2e-tests/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/e2e-tests",
3-
"version": "8.34.0",
3+
"version": "8.35.0",
44
"license": "MIT",
55
"private": true,
66
"scripts": {

dev-packages/e2e-tests/test-applications/astro-4/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212
"test:assert": "TEST_ENV=production playwright test"
1313
},
1414
"dependencies": {
15-
"@astrojs/check": "^0.9.2",
16-
"@astrojs/node": "^8.3.2",
15+
"@astrojs/check": "0.9.2",
16+
"@astrojs/node": "8.3.2",
1717
"@playwright/test": "^1.46.0",
1818
"@sentry/astro": "* || latest",
1919
"@sentry-internal/test-utils": "link:../../../test-utils",
20-
"@spotlightjs/astro": "^2.1.6",
21-
"astro": "^4.13.3",
20+
"@spotlightjs/astro": "2.1.6",
21+
"astro": "4.13.3",
2222
"typescript": "^5.5.4"
2323
},
2424
"devDependencies": {

0 commit comments

Comments
 (0)