Skip to content

Commit 2b2888d

Browse files
committed
Merge remote-tracking branch 'origin/develop' into feat/migrate-ai-attributes-to-conventions
# Conflicts: # packages/core/src/shared-exports.ts
2 parents 7c6ee15 + f8dc497 commit 2b2888d

996 files changed

Lines changed: 7849 additions & 27385 deletions

File tree

Some content is hidden

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

.agents/skills/track-framework-updates/scripts/check_sources.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@
4747
"@sentry/core",
4848
"@sentry/types",
4949
"@sentry/browser",
50-
"@sentry/node-core",
5150
"@sentry/node-native",
5251
"@sentry/opentelemetry",
5352
"@sentry/profiling-node",

.craft.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,6 @@ targets:
1313
- name: npm
1414
id: '@sentry/types'
1515
includeNames: /^sentry-types-\d.*\.tgz$/
16-
- name: npm
17-
id: '@sentry/node-core'
18-
includeNames: /^sentry-node-core-\d.*\.tgz$/
1916
- name: npm
2017
id: '@sentry/server-utils'
2118
includeNames: /^sentry-server-utils-\d.*\.tgz$/
@@ -226,8 +223,6 @@ targets:
226223
onlyIfPresent: /^sentry-nuxt-\d.*\.tgz$/
227224
'npm:@sentry/node':
228225
onlyIfPresent: /^sentry-node-\d.*\.tgz$/
229-
'npm:@sentry/node-core':
230-
onlyIfPresent: /^sentry-node-core-\d.*\.tgz$/
231226
'npm:@sentry/react':
232227
onlyIfPresent: /^sentry-react-\d.*\.tgz$/
233228
'npm:@sentry/react-router':

.cursor/BUGBOT.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ Unless explicitly noted (e.g. in the `Testing Conventions` section), only flag t
6868
- Race conditions when waiting on multiple requests. Ensure that waiting checks are unique enough and don't depend on a hard order when there's a chance that telemetry can be sent in arbitrary order.
6969
- Timeouts or sleeps in tests. Instead suggest concrete events or other signals to wait on.
7070
- Flag usage of `getFirstEnvelope*`, `getMultipleEnvelope*` or related test helpers in E2E tests. These are NOT reliable anymore. Instead suggest helpers like `waitForTransaction`, `waitForError`, `waitForSpans`, etc.
71-
- Flag any new or modified `docker-compose.yml` under `dev-packages/node-integration-tests/suites/` or `dev-packages/node-core-integration-tests/suites/` where a service does not define a `healthcheck:`. The runner uses `docker compose up --wait` and relies on healthchecks to know when services are actually ready; without one the test will race the service's startup.
71+
- Flag any new or modified `docker-compose.yml` under `dev-packages/node-integration-tests/suites/` where a service does not define a `healthcheck:`. The runner uses `docker compose up --wait` and relies on healthchecks to know when services are actually ready; without one the test will race the service's startup.
7272

7373
## Platform-safe code
7474

.github/CODEOWNERS

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
# Node/server runtimes and related packages
1111
# TEMP: whole JS SDK team reviews orchestrion work; revert to team-javascript-sdks-server after
1212
/packages/node/ @getsentry/team-javascript-sdks
13-
/packages/node-core/ @getsentry/team-javascript-sdks
1413
/packages/server-utils/ @getsentry/team-javascript-sdks
1514
/packages/node-native/ @getsentry/team-javascript-sdks-server
1615
/packages/profiling-node/ @getsentry/team-javascript-sdks-server
@@ -22,7 +21,6 @@
2221
/packages/google-cloud-serverless/ @getsentry/team-javascript-sdks-server
2322
/packages/vercel-edge/ @getsentry/team-javascript-sdks-server
2423
/dev-packages/node-integration-tests/ @getsentry/team-javascript-sdks-server
25-
/dev-packages/node-core-integration-tests/ @getsentry/team-javascript-sdks-server
2624
/dev-packages/cloudflare-integration-tests/ @getsentry/team-javascript-sdks-server
2725
/dev-packages/bun-integration-tests/ @getsentry/team-javascript-sdks-server
2826
/dev-packages/deno-integration-tests/ @getsentry/team-javascript-sdks-server

.github/workflows/build.yml

Lines changed: 1 addition & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
branches:
55
- develop
66
- master
7+
- v10
78
- v9
89
- v8
910
- release/**
@@ -157,9 +158,6 @@ jobs:
157158
changed_node_integration:
158159
${{ needs.job_get_metadata.outputs.changed_ci == 'true' || contains(steps.checkForAffected.outputs.affected,
159160
'@sentry-internal/node-integration-tests') }}
160-
changed_node_core_integration:
161-
${{ needs.job_get_metadata.outputs.changed_ci == 'true' || contains(steps.checkForAffected.outputs.affected,
162-
'@sentry-internal/node-core-integration-tests') }}
163161
changed_node:
164162
${{ needs.job_get_metadata.outputs.changed_ci == 'true' || contains(steps.checkForAffected.outputs.affected,
165163
'@sentry/node') }}
@@ -849,47 +847,6 @@ jobs:
849847
env:
850848
INJECT_ORCHESTRION: ${{ matrix.use_orchestrion }}
851849

852-
job_node_core_integration_tests:
853-
name:
854-
Node (${{ matrix.node }})${{ (matrix.typescript && format(' (TS {0})', matrix.typescript)) || '' }} Node-Core
855-
Integration Tests
856-
needs: [job_get_metadata, job_build]
857-
if: needs.job_build.outputs.changed_node_core_integration == 'true' || github.event_name != 'pull_request'
858-
runs-on: ubuntu-24.04
859-
timeout-minutes: 15
860-
strategy:
861-
fail-fast: false
862-
matrix:
863-
node: [20.19, 22, 24, 26]
864-
typescript:
865-
- false
866-
include:
867-
# Only check typescript for latest version (to streamline CI)
868-
- node: 24
869-
typescript: '5.0'
870-
steps:
871-
- name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }})
872-
uses: actions/checkout@v7
873-
with:
874-
ref: ${{ env.HEAD_COMMIT }}
875-
- name: Set up Node
876-
uses: actions/setup-node@v6
877-
with:
878-
node-version: ${{ matrix.node }}
879-
- name: Restore caches
880-
uses: ./.github/actions/restore-cache
881-
with:
882-
dependency_cache_key: ${{ needs.job_build.outputs.dependency_cache_key }}
883-
884-
- name: Overwrite typescript version
885-
if: matrix.typescript == '5.0'
886-
run: node ./scripts/use-ts-5_0.js
887-
working-directory: dev-packages/node-core-integration-tests
888-
889-
- name: Run integration tests
890-
working-directory: dev-packages/node-core-integration-tests
891-
run: yarn test
892-
893850
job_cloudflare_integration_tests:
894851
name: Cloudflare Integration Tests
895852
needs: [job_get_metadata, job_build]
@@ -1299,7 +1256,6 @@ jobs:
12991256
job_deno_unit_tests,
13001257
job_node_unit_tests,
13011258
job_node_integration_tests,
1302-
job_node_core_integration_tests,
13031259
job_cloudflare_integration_tests,
13041260
job_bundler_plugin_integration_tests,
13051261
job_bun_integration_tests,

.github/workflows/enforce-license-compliance.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,15 @@ on:
55
branches:
66
- develop
77
- master
8+
- v10
89
- v9
910
- v8
1011
- release/**
1112
pull_request:
1213
branches:
1314
- develop
1415
- master
16+
- v10
1517
- v9
1618
- v8
1719

.size-limit.js

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -374,16 +374,6 @@ module.exports = [
374374
limit: '71 KB',
375375
disablePlugins: ['@size-limit/esbuild'],
376376
},
377-
// Node-Core SDK (ESM)
378-
{
379-
name: '@sentry/node-core',
380-
path: 'packages/node-core/build/esm/index.js',
381-
import: createImport('init'),
382-
ignore: [...builtinModules, ...nodePrefixedBuiltinModules],
383-
gzip: true,
384-
limit: '69 KB',
385-
disablePlugins: ['@size-limit/esbuild'],
386-
},
387377
// Node SDK (ESM)
388378
{
389379
name: '@sentry/node',
@@ -411,15 +401,6 @@ module.exports = [
411401
limit: '76 KB',
412402
disablePlugins: ['@size-limit/esbuild'],
413403
},
414-
{
415-
name: '@sentry/node/light',
416-
path: 'packages/node-core/build/esm/light/index.js',
417-
import: createImport('init'),
418-
ignore: [...builtinModules, ...nodePrefixedBuiltinModules],
419-
gzip: true,
420-
limit: '57 KB',
421-
disablePlugins: ['@size-limit/esbuild'],
422-
},
423404
{
424405
name: '@sentry/node - without tracing',
425406
path: 'packages/node/build/esm/index.js',

AGENTS.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,12 +86,11 @@ Uses **Git Flow** (see `docs/gitflow.md`).
8686
- `packages/core/` — Base SDK: interfaces, types, core functionality
8787
- `packages/types/` — Shared types (**deprecated, never modify – instead find types in packages/core**)
8888
- `packages/browser-utils/` — Browser utilities and instrumentation
89-
- `packages/node-core/` — Node core logic (excludes OTel instrumentation)
9089

9190
### Platform SDKs
9291

9392
- `packages/browser/` — Browser SDK + CDN bundles
94-
- `packages/node/` — Node.js SDK (OTel instrumentation on top of node-core)
93+
- `packages/node/` — Node.js SDK (client, transports, non-OTel integrations, and OTel instrumentation)
9594
- `packages/bun/`, `packages/deno/`, `packages/cloudflare/`
9695

9796
### Framework Integrations

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

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

7-
Work in this release was contributed by @psh4607, @trinitiwowka, and @nehaprasad-dev. Thank you for your contributions!
7+
Work in this release was contributed by @psh4607, @trinitiwowka, @nehaprasad-dev, and @JealousGx. Thank you for your contributions!
88

99
## 10.67.0
1010

MIGRATION.md

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,24 @@ Affected SDKs: `@sentry/node` and all dependents.
9797

9898
The new channel-based instrumentations (using `orchestrion` instead of `import-in-the-middle`) are now the default. They were available opt-in in v10. This unlocks instrumenting at run and build time, which enables instrumentation at deployment targets like Vercel and Netlify, as well as using instrumentations on non-Node runtimes like Cloudflare, Bun and Deno. For most users this requires no changes.
9999

100+
### Initializing via `--require` is no longer supported
101+
102+
Affected SDKs: `@sentry/node` and all dependents.
103+
104+
Node re-runs `--require` preloads on the internal module loader thread it spawns for `Module.register()` — which the SDK triggers itself when it installs its instrumentation hooks. A `--require`d instrument file therefore ran `Sentry.init()` a second time, on a thread that never executes any of your code. The SDK now skips initialization on that thread and warns when it detects that it was loaded through `--require`.
105+
106+
Use [`--import`](https://nodejs.org/api/cli.html#--importmodule) instead. It is not re-run on the loader thread, and it works for CommonJS apps too — the instrument file's extension (`.cjs`, or `.js` in a package without `"type": "module"`) is what decides that it loads as CommonJS:
107+
108+
```bash
109+
# Before
110+
node --require ./instrument.js app.js
111+
112+
# After
113+
node --import ./instrument.js app.js
114+
```
115+
116+
The same applies to the no-code entry points, e.g. `node --import=@sentry/node/init app.js` and `node --import @sentry/node/preload app.js`.
117+
100118
### Span streaming is now the default
101119

102120
Affected SDKs: All SDKs.
@@ -315,6 +333,10 @@ Sentry.init({
315333
});
316334
```
317335

336+
### `@sentry/browser`
337+
338+
- The experimental `_experiments.enableStandaloneClsSpans` and `_experiments.enableStandaloneLcpSpans` options were removed from both `browserTracingIntegration` and `webVitalsIntegration`. CLS and LCP are no longer configurable: they are recorded as measurements on the pageload span, unless span streaming is enabled (`traceLifecycle: 'stream'`), in which case they are sent as dedicated spans.
339+
318340
### `@sentry/node` / Server-side SDKs
319341

320342
- `SentryContextManager` is no longer exported. It is no longer needed now that Sentry does not set up OpenTelemetry by default.
@@ -398,7 +420,10 @@ Sentry.init({
398420

399421
### `@sentry/react-router`
400422

401-
- The React Router server request wrappers were removed.
423+
- The deprecated server wrappers `wrapServerLoader` and `wrapServerAction` were removed. Loaders and
424+
actions are instrumented automatically via the instrumentation API - export
425+
`instrumentations = [Sentry.createSentryServerInstrumentation()]` from your `entry.server.tsx`
426+
instead of wrapping them individually.
402427

403428
### `@sentry/profiling-node`
404429

0 commit comments

Comments
 (0)