Skip to content

Commit f2e0be1

Browse files
authored
Merge branch 'develop' into cg-ff-shim
2 parents 35d682c + a30fc6d commit f2e0be1

File tree

183 files changed

+6853
-525
lines changed

Some content is hidden

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

183 files changed

+6853
-525
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -709,7 +709,7 @@ jobs:
709709
strategy:
710710
fail-fast: false
711711
matrix:
712-
node: ['18.20.5', 20, 22, 24]
712+
node: [18, 20, 22, 24]
713713
typescript:
714714
- false
715715
include:

.size-limit.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,21 +38,21 @@ module.exports = [
3838
path: 'packages/browser/build/npm/esm/index.js',
3939
import: createImport('init', 'browserTracingIntegration'),
4040
gzip: true,
41-
limit: '39 KB',
41+
limit: '40 KB',
4242
},
4343
{
4444
name: '@sentry/browser (incl. Tracing, Replay)',
4545
path: 'packages/browser/build/npm/esm/index.js',
4646
import: createImport('init', 'browserTracingIntegration', 'replayIntegration'),
4747
gzip: true,
48-
limit: '77 KB',
48+
limit: '80 KB',
4949
},
5050
{
5151
name: '@sentry/browser (incl. Tracing, Replay) - with treeshaking flags',
5252
path: 'packages/browser/build/npm/esm/index.js',
5353
import: createImport('init', 'browserTracingIntegration', 'replayIntegration'),
5454
gzip: true,
55-
limit: '70.1 KB',
55+
limit: '75 KB',
5656
modifyWebpackConfig: function (config) {
5757
const webpack = require('webpack');
5858

@@ -120,7 +120,7 @@ module.exports = [
120120
import: createImport('init', 'ErrorBoundary', 'reactRouterV6BrowserTracingIntegration'),
121121
ignore: ['react/jsx-runtime'],
122122
gzip: true,
123-
limit: '41 KB',
123+
limit: '42 KB',
124124
},
125125
// Vue SDK (ESM)
126126
{
@@ -156,7 +156,7 @@ module.exports = [
156156
name: 'CDN Bundle (incl. Tracing)',
157157
path: createCDNPath('bundle.tracing.min.js'),
158158
gzip: true,
159-
limit: '39 KB',
159+
limit: '41 KB',
160160
},
161161
{
162162
name: 'CDN Bundle (incl. Tracing, Replay)',

CHANGELOG.md

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

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

7+
## 9.34.0
8+
9+
### Important Changes
10+
11+
- **feat(nuxt): Add Cloudflare Nitro plugin ([#15597](https://github.com/getsentry/sentry-javascript/pull/15597))**
12+
13+
A Nitro plugin for `@sentry/nuxt` which initializes Sentry when deployed to Cloudflare (`cloudflare-pages` preset).
14+
15+
1. Remove the previous server config file: `sentry.server.config.ts`
16+
2. Add a plugin in `server/plugins` (e.g. `server/plugins/sentry-cloudflare-setup.ts`)
17+
3. Add this code in your plugin file
18+
19+
```javascript
20+
// server/plugins/sentry-cloudflare-setup.ts (filename does not matter)
21+
import { sentryCloudflareNitroPlugin } from '@sentry/nuxt/module/plugins';
22+
23+
export default defineNitroPlugin(
24+
sentryCloudflareNitroPlugin({
25+
dsn: 'https://dsn',
26+
tracesSampleRate: 1.0,
27+
}),
28+
);
29+
```
30+
31+
or with access to `nitroApp`:
32+
33+
```javascript
34+
// server/plugins/sentry-cloudflare-setup.ts (filename does not matter)
35+
import { sentryCloudflareNitroPlugin } from '@sentry/nuxt/module/plugins';
36+
37+
export default defineNitroPlugin(sentryCloudflareNitroPlugin((nitroApp: NitroApp) => {
38+
// You can access nitroApp here if needed
39+
return ({
40+
dsn: 'https://dsn',
41+
tracesSampleRate: 1.0,
42+
})
43+
}))
44+
```
45+
46+
### Other Changes
47+
48+
- feat(browser): Record standalone LCP spans ([#16591](https://github.com/getsentry/sentry-javascript/pull/16591))
49+
- fix(nuxt): Only add OTel alias in dev mode ([#16756](https://github.com/getsentry/sentry-javascript/pull/16756))
50+
51+
## 9.33.0
52+
53+
### Important Changes
54+
55+
- **feat: Add opt-in `vercelAiIntegration` to cloudflare & vercel-edge ([#16732](https://github.com/getsentry/sentry-javascript/pull/16732))**
56+
57+
The `vercelAiIntegration` is now available as opt-in for the Cloudflare and the Next.js SDK for Vercel Edge.
58+
To use it, add the integration in `Sentry.init`
59+
60+
```js
61+
Sentry.init({
62+
tracesSampleRate: 1.0,
63+
integrations: [Sentry.vercelAIIntegration()],
64+
});
65+
```
66+
67+
And enable telemetry for Vercel AI calls
68+
69+
```js
70+
const result = await generateText({
71+
model: openai('gpt-4o'),
72+
experimental_telemetry: {
73+
isEnabled: true,
74+
},
75+
});
76+
```
77+
78+
- **feat(node): Add postgresjs instrumentation ([#16665](https://github.com/getsentry/sentry-javascript/pull/16665))**
79+
80+
The Node.js SDK now includes instrumentation for [Postgres.js](https://www.npmjs.com/package/postgres).
81+
82+
- **feat(node): Use diagnostics channel for Fastify v5 error handling ([#16715](https://github.com/getsentry/sentry-javascript/pull/16715))**
83+
84+
If you're on Fastify v5, you no longer need to call `setupFastifyErrorHandler`. It is done automatically by the node SDK. Older versions still rely on calling `setupFastifyErrorHandler`.
85+
86+
### Other Changes
87+
88+
- feat(cloudflare): Allow interop with OpenTelemetry emitted spans ([#16714](https://github.com/getsentry/sentry-javascript/pull/16714))
89+
- feat(cloudflare): Flush after `waitUntil` ([#16681](https://github.com/getsentry/sentry-javascript/pull/16681))
90+
- fix(nextjs): Remove `ai` from default server external packages ([#16736](https://github.com/getsentry/sentry-javascript/pull/16736))
91+
92+
Work in this release was contributed by @0xbad0c0d3. Thank you for your contribution!
93+
794
## 9.32.0
895
996
### Important Changes

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": "9.32.0",
3+
"version": "9.34.0",
44
"main": "index.js",
55
"license": "MIT",
66
"engines": {
@@ -42,7 +42,7 @@
4242
"@babel/preset-typescript": "^7.16.7",
4343
"@playwright/test": "~1.50.0",
4444
"@sentry-internal/rrweb": "2.34.0",
45-
"@sentry/browser": "9.32.0",
45+
"@sentry/browser": "9.34.0",
4646
"@supabase/supabase-js": "2.49.3",
4747
"axios": "1.8.2",
4848
"babel-loader": "^8.2.2",
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import * as Sentry from '@sentry/browser';
2+
3+
window.Sentry = Sentry;
4+
5+
Sentry.init({
6+
dsn: 'https://public@dsn.ingest.sentry.io/1337',
7+
integrations: [
8+
Sentry.browserTracingIntegration({
9+
idleTimeout: 9000,
10+
_experiments: {
11+
enableStandaloneLcpSpans: true,
12+
},
13+
}),
14+
],
15+
tracesSampleRate: 1,
16+
debug: true,
17+
});
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8" />
5+
</head>
6+
<body>
7+
<div id="content"></div>
8+
<img src="https://sentry-test-site.example/my/image.png" />
9+
</body>
10+
</html>

0 commit comments

Comments
 (0)