Skip to content

Commit 0ec16f5

Browse files
authored
Merge pull request #17271 from getsentry/prepare-release/10.0.0
meta(changelog): Update changelog for 10.0.0
2 parents 9cda9ce + 0d8d05f commit 0ec16f5

File tree

565 files changed

+15758
-13798
lines changed

Some content is hidden

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

565 files changed

+15758
-13798
lines changed

.craft.yml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -146,16 +146,13 @@ targets:
146146
# AWS Lambda Layer target
147147
- name: aws-lambda-layer
148148
includeNames: /^sentry-node-serverless-\d+.\d+.\d+(-(beta|alpha|rc)\.\d+)?\.zip$/
149-
layerName: SentryNodeServerlessSDKv9
149+
layerName: SentryNodeServerlessSDKv10
150150
compatibleRuntimes:
151151
- name: node
152152
versions:
153-
- nodejs10.x
154-
- nodejs12.x
155-
- nodejs14.x
156-
- nodejs16.x
157153
- nodejs18.x
158154
- nodejs20.x
155+
- nodejs22.x
159156
license: MIT
160157

161158
# CDN Bundle Target

.github/workflows/build.yml

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,6 @@ env:
4747
${{ github.workspace }}/packages/*/lib
4848
${{ github.workspace }}/packages/ember/*.d.ts
4949
${{ github.workspace }}/packages/gatsby/*.d.ts
50-
${{ github.workspace }}/packages/utils/cjs
51-
${{ github.workspace }}/packages/utils/esm
5250
5351
BUILD_CACHE_TARBALL_KEY: tarball-${{ github.event.inputs.commit || github.sha }}
5452

@@ -747,6 +745,29 @@ jobs:
747745
directory: dev-packages/node-integration-tests
748746
token: ${{ secrets.CODECOV_TOKEN }}
749747

748+
job_cloudflare_integration_tests:
749+
name: Cloudflare Integration Tests
750+
needs: [job_get_metadata, job_build]
751+
runs-on: ubuntu-24.04
752+
timeout-minutes: 15
753+
steps:
754+
- name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
755+
uses: actions/checkout@v4
756+
with:
757+
ref: ${{ env.HEAD_COMMIT }}
758+
- name: Set up Node
759+
uses: actions/setup-node@v4
760+
with:
761+
node-version-file: 'package.json'
762+
- name: Restore caches
763+
uses: ./.github/actions/restore-cache
764+
with:
765+
dependency_cache_key: ${{ needs.job_build.outputs.dependency_cache_key }}
766+
767+
- name: Run integration tests
768+
working-directory: dev-packages/cloudflare-integration-tests
769+
run: yarn test
770+
750771
job_remix_integration_tests:
751772
name: Remix (Node ${{ matrix.node }}) Tests
752773
needs: [job_get_metadata, job_build]
@@ -950,13 +971,13 @@ jobs:
950971
retention-days: 7
951972

952973
- name: Pre-process E2E Test Dumps
953-
if: always()
974+
if: failure()
954975
run: |
955976
node ./scripts/normalize-e2e-test-dump-transaction-events.js
956977
957978
- name: Upload E2E Test Event Dumps
958979
uses: actions/upload-artifact@v4
959-
if: always()
980+
if: failure()
960981
with:
961982
name: E2E Test Dump (${{ matrix.label || matrix.test-application }})
962983
path: ${{ runner.temp }}/test-application/event-dumps
@@ -1062,13 +1083,13 @@ jobs:
10621083
run: pnpm ${{ matrix.assert-command || 'test:assert' }}
10631084

10641085
- name: Pre-process E2E Test Dumps
1065-
if: always()
1086+
if: failure()
10661087
run: |
10671088
node ./scripts/normalize-e2e-test-dump-transaction-events.js
10681089
10691090
- name: Upload E2E Test Event Dumps
10701091
uses: actions/upload-artifact@v4
1071-
if: always()
1092+
if: failure()
10721093
with:
10731094
name: E2E Test Dump (${{ matrix.label || matrix.test-application }})
10741095
path: ${{ runner.temp }}/test-application/event-dumps
@@ -1095,6 +1116,7 @@ jobs:
10951116
job_deno_unit_tests,
10961117
job_node_unit_tests,
10971118
job_node_integration_tests,
1119+
job_cloudflare_integration_tests,
10981120
job_browser_playwright_tests,
10991121
job_browser_loader_tests,
11001122
job_remix_integration_tests,

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,3 +60,4 @@ packages/gatsby/gatsby-node.d.ts
6060

6161
# intellij
6262
*.iml
63+
/**/.wrangler/*

.size-limit.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,14 +217,23 @@ module.exports = [
217217
gzip: true,
218218
limit: '41 KB',
219219
},
220+
// Node-Core SDK (ESM)
221+
{
222+
name: '@sentry/node-core',
223+
path: 'packages/node-core/build/esm/index.js',
224+
import: createImport('init'),
225+
ignore: [...builtinModules, ...nodePrefixedBuiltinModules],
226+
gzip: true,
227+
limit: '116 KB',
228+
},
220229
// Node SDK (ESM)
221230
{
222231
name: '@sentry/node',
223232
path: 'packages/node/build/esm/index.js',
224233
import: createImport('init'),
225234
ignore: [...builtinModules, ...nodePrefixedBuiltinModules],
226235
gzip: true,
227-
limit: '170 KB',
236+
limit: '147 KB',
228237
},
229238
{
230239
name: '@sentry/node - without tracing',

CHANGELOG.md

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

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

7+
## 10.0.0
8+
9+
Version `10.0.0` marks a release of the Sentry JavaScript SDKs that contains breaking changes. The goal of this release is to primarily upgrade the underlying OpenTelemetry dependencies to v2 with minimal breaking changes.
10+
11+
### How To Upgrade
12+
13+
Please carefully read through the migration guide in the Sentry docs on how to upgrade from version 9 to version 10. Make sure to select your specific platform/framework in the top left corner: https://docs.sentry.io/platforms/javascript/migration/v9-to-v10/
14+
15+
A comprehensive migration guide outlining all changes can be found within the Sentry JavaScript SDK Repository: https://github.com/getsentry/sentry-javascript/blob/develop/MIGRATION.md
16+
17+
### Breaking Changes
18+
19+
- feat!: Bump to OpenTelemetry v2 ([#16872](https://github.com/getsentry/sentry-javascript/pull/16872))
20+
- feat(browser)!: Remove FID web vital collection ([#17076](https://github.com/getsentry/sentry-javascript/pull/17076))
21+
- feat(core)!: Remove `BaseClient` ([#17071](https://github.com/getsentry/sentry-javascript/pull/17071))
22+
- feat(core)!: Remove `enableLogs` and `beforeSendLog` experimental options ([#17063](https://github.com/getsentry/sentry-javascript/pull/17063))
23+
- feat(core)!: Remove `hasTracingEnabled` ([#17072](https://github.com/getsentry/sentry-javascript/pull/17072))
24+
- feat(core)!: Remove deprecated logger ([#17061](https://github.com/getsentry/sentry-javascript/pull/17061))
25+
- feat(replay)!: Promote `_experiments.autoFlushOnFeedback` option as default ([#17220](https://github.com/getsentry/sentry-javascript/pull/17220))
26+
- chore(deps)!: Bump bundler plugins to v4 ([#17089](https://github.com/getsentry/sentry-javascript/pull/17089))
27+
28+
### Other Changes
29+
30+
- feat(astro): Implement Request Route Parametrization for Astro 5 ([#17105](https://github.com/getsentry/sentry-javascript/pull/17105))
31+
- feat(astro): Parametrize routes on client-side ([#17133](https://github.com/getsentry/sentry-javascript/pull/17133))
32+
- feat(aws): Add `SentryNodeServerlessSDKv10` v10 AWS Lambda Layer ([#17069](https://github.com/getsentry/sentry-javascript/pull/17069))
33+
- feat(aws): Create unified lambda layer for ESM and CJS ([#17012](https://github.com/getsentry/sentry-javascript/pull/17012))
34+
- feat(aws): Detect SDK source for AWS Lambda layer ([#17128](https://github.com/getsentry/sentry-javascript/pull/17128))
35+
- feat(core): Add missing openai tool calls attributes ([#17226](https://github.com/getsentry/sentry-javascript/pull/17226))
36+
- feat(core): Add shared `flushIfServerless` function ([#17177](https://github.com/getsentry/sentry-javascript/pull/17177))
37+
- feat(core): Implement `strictTraceContinuation` ([#16313](https://github.com/getsentry/sentry-javascript/pull/16313))
38+
- feat(core): MCP server instrumentation without breaking Miniflare ([#16817](https://github.com/getsentry/sentry-javascript/pull/16817))
39+
- feat(deps): bump @prisma/instrumentation from 6.11.1 to 6.12.0 ([#17117](https://github.com/getsentry/sentry-javascript/pull/17117))
40+
- feat(meta): Unify detection of serverless environments and add Cloud Run ([#17168](https://github.com/getsentry/sentry-javascript/pull/17168))
41+
- feat(nestjs): Switch to OTel core instrumentation ([#17068](https://github.com/getsentry/sentry-javascript/pull/17068))
42+
- feat(node-native): Upgrade `@sentry-internal/node-native-stacktrace` to `0.2.2` ([#17207](https://github.com/getsentry/sentry-javascript/pull/17207))
43+
- feat(node): Add `shouldHandleError` option to `fastifyIntegration` ([#16845](https://github.com/getsentry/sentry-javascript/pull/16845))
44+
- feat(node): Add firebase integration ([#16719](https://github.com/getsentry/sentry-javascript/pull/16719))
45+
- feat(node): Instrument stream responses for openai ([#17110](https://github.com/getsentry/sentry-javascript/pull/17110))
46+
- feat(react-router): Add `createSentryHandleError` ([#17235](https://github.com/getsentry/sentry-javascript/pull/17235))
47+
- feat(react-router): Automatically flush on serverless for loaders/actions ([#17234](https://github.com/getsentry/sentry-javascript/pull/17234))
48+
- feat(react-router): Automatically flush on Vercel for request handlers ([#17232](https://github.com/getsentry/sentry-javascript/pull/17232))
49+
- fix(astro): Construct parametrized route during runtime ([#17190](https://github.com/getsentry/sentry-javascript/pull/17190))
50+
- fix(aws): Add layer build output to nx cache ([#17148](https://github.com/getsentry/sentry-javascript/pull/17148))
51+
- fix(aws): Fix path to packages directory ([#17112](https://github.com/getsentry/sentry-javascript/pull/17112))
52+
- fix(aws): Resolve all Sentry packages to local versions in layer build ([#17106](https://github.com/getsentry/sentry-javascript/pull/17106))
53+
- fix(aws): Use file link in dependency version ([#17111](https://github.com/getsentry/sentry-javascript/pull/17111))
54+
- fix(cloudflare): Allow non uuid workflow instance IDs ([#17121](https://github.com/getsentry/sentry-javascript/pull/17121))
55+
- fix(cloudflare): Avoid turning DurableObject sync methods into async ([#17184](https://github.com/getsentry/sentry-javascript/pull/17184))
56+
- fix(core): Fix OpenAI SDK private field access by binding non-instrumented fns ([#17163](https://github.com/getsentry/sentry-javascript/pull/17163))
57+
- fix(core): Fix operation name for openai responses API ([#17206](https://github.com/getsentry/sentry-javascript/pull/17206))
58+
- fix(core): Update ai.response.object to gen_ai.response.object ([#17153](https://github.com/getsentry/sentry-javascript/pull/17153))
59+
- fix(nextjs): Flush in route handlers ([#17223](https://github.com/getsentry/sentry-javascript/pull/17223))
60+
- fix(nextjs): Handle async params in url extraction ([#17162](https://github.com/getsentry/sentry-javascript/pull/17162))
61+
- fix(nextjs): Update stackframe calls for next v15.5 ([#17156](https://github.com/getsentry/sentry-javascript/pull/17156))
62+
- fix(node): Add mechanism to `fastifyIntegration` error handler ([#17208](https://github.com/getsentry/sentry-javascript/pull/17208))
63+
- fix(node): Ensure tool errors for `vercelAiIntegration` have correct trace connected ([#17132](https://github.com/getsentry/sentry-javascript/pull/17132))
64+
- fix(node): Fix exports for openai instrumentation ([#17238](https://github.com/getsentry/sentry-javascript/pull/17238))
65+
- fix(node): Handle stack traces with data URI filenames ([#17218](https://github.com/getsentry/sentry-javascript/pull/17218))
66+
- fix(react): Memoize wrapped component to prevent rerenders ([#17230](https://github.com/getsentry/sentry-javascript/pull/17230))
67+
- fix(remix): Ensure source maps upload fails silently if Sentry CLI fails ([#17082](https://github.com/getsentry/sentry-javascript/pull/17082))
68+
- fix(replay): Fix re-sampled sessions after a click ([#17008](https://github.com/getsentry/sentry-javascript/pull/17008))
69+
- fix(svelte): Do not insert preprocess code in script module in Svelte 5 ([#17114](https://github.com/getsentry/sentry-javascript/pull/17114))
70+
- fix(sveltekit): Align error status filtering and mechanism in `handleErrorWithSentry` ([#17157](https://github.com/getsentry/sentry-javascript/pull/17157))
71+
72+
Work in this release was contributed by @richardjelinek-fastest. Thank you for your contribution!
73+
774
## 9.40.0
875

976
### Important Changes

0 commit comments

Comments
 (0)