Skip to content

Commit 9e25f02

Browse files
author
Luca Forstner
committed
Merge remote-tracking branch 'origin/develop' into lforst-nextjs-otel
2 parents 01bc887 + 5b22b26 commit 9e25f02

File tree

71 files changed

+641
-287
lines changed

Some content is hidden

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

71 files changed

+641
-287
lines changed

.github/workflows/build.yml

Lines changed: 26 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1018,12 +1018,12 @@ jobs:
10181018

10191019
- name: Build E2E app
10201020
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1021-
timeout-minutes: 5
1021+
timeout-minutes: 7
10221022
run: pnpm ${{ matrix.build-command || 'test:build' }}
10231023

10241024
- name: Run E2E test
10251025
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1026-
timeout-minutes: 5
1026+
timeout-minutes: 10
10271027
run: pnpm test:assert
10281028

10291029
- name: Upload Playwright Traces
@@ -1035,14 +1035,19 @@ jobs:
10351035
overwrite: true
10361036
retention-days: 7
10371037

1038+
- name: Pre-process E2E Test Dumps
1039+
run: |
1040+
node ./scripts/normalize-e2e-test-dump-transaction-events.js
1041+
10381042
- name: Upload E2E Test Event Dumps
10391043
uses: actions/upload-artifact@v4
10401044
if: always()
10411045
with:
1042-
name: playwright-event-dumps-job_e2e_playwright_tests-${{ matrix.test-application }}
1046+
name: E2E Test Dump (${{ matrix.label || matrix.test-application }})
10431047
path: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}/event-dumps
10441048
overwrite: true
10451049
retention-days: 7
1050+
if-no-files-found: ignore
10461051

10471052
- name: Upload test results to Codecov
10481053
if: cancelled() == false
@@ -1083,10 +1088,6 @@ jobs:
10831088
'react-send-to-sentry',
10841089
'node-express-send-to-sentry',
10851090
'debug-id-sourcemaps',
1086-
'nextjs-app-dir',
1087-
'nextjs-13',
1088-
'nextjs-14',
1089-
'nextjs-15',
10901091
]
10911092
build-command:
10921093
- false
@@ -1176,14 +1177,28 @@ jobs:
11761177

11771178
- name: Build E2E app
11781179
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1179-
timeout-minutes: 5
1180+
timeout-minutes: 7
11801181
run: pnpm ${{ matrix.build-command || 'test:build' }}
11811182

11821183
- name: Run E2E test
11831184
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1184-
timeout-minutes: 5
1185+
timeout-minutes: 10
11851186
run: pnpm ${{ matrix.assert-command || 'test:assert' }}
11861187

1188+
- name: Pre-process E2E Test Dumps
1189+
run: |
1190+
node ./scripts/normalize-e2e-test-dump-transaction-events.js
1191+
1192+
- name: Upload E2E Test Event Dumps
1193+
uses: actions/upload-artifact@v4
1194+
if: always()
1195+
with:
1196+
name: E2E Test Dump (${{ matrix.label || matrix.test-application }})
1197+
path: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}/event-dumps
1198+
overwrite: true
1199+
retention-days: 7
1200+
if-no-files-found: ignore
1201+
11871202
- name: Deploy Astro to Cloudflare
11881203
uses: cloudflare/pages-action@v1
11891204
if: matrix.test-application == 'cloudflare-astro'
@@ -1282,12 +1297,12 @@ jobs:
12821297

12831298
- name: Build E2E app
12841299
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1285-
timeout-minutes: 5
1300+
timeout-minutes: 7
12861301
run: yarn ${{ matrix.build-command || 'test:build' }}
12871302

12881303
- name: Run E2E test
12891304
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
1290-
timeout-minutes: 5
1305+
timeout-minutes: 10
12911306
run: yarn test:assert
12921307

12931308
job_required_jobs_passed:

.github/workflows/canary.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ jobs:
140140

141141
- name: Build E2E app
142142
working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }}
143-
timeout-minutes: 5
143+
timeout-minutes: 7
144144
run: yarn ${{ matrix.build-command }}
145145

146146
- 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/nextjs-13/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,5 +38,6 @@ next-env.d.ts
3838
!*.d.ts
3939

4040
test-results
41+
event-dumps
4142

4243
.vscode
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
1+
import * as fs from 'fs';
2+
import * as path from 'path';
13
import { startEventProxyServer } from '@sentry-internal/test-utils';
24

5+
const packageJson = JSON.parse(fs.readFileSync(path.join(process.cwd(), 'package.json')));
6+
37
startEventProxyServer({
48
port: 3031,
59
proxyServerName: 'nextjs-13',
10+
envelopeDumpPath: path.join(
11+
process.cwd(),
12+
`event-dumps/next-13-v${packageJson.dependencies.next}-${process.env.TEST_ENV}.dump`,
13+
),
614
});

dev-packages/e2e-tests/test-applications/nextjs-14/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,3 +43,4 @@ next-env.d.ts
4343
.vscode
4444

4545
test-results
46+
event-dumps

0 commit comments

Comments
 (0)