Skip to content

feat(astro): Add @sentry/astro/integration entry for the Astro integration - #25726

Open
isaacs wants to merge 1 commit into
isaacschlueter/js-3989-guard-server-runtime-entries-against-pulling-in-build-time-solidstartfrom
isaacschlueter/js-3989-guard-server-runtime-entries-against-pulling-in-build-time
Open

isaacs wants to merge 1 commit into
isaacschlueter/js-3989-guard-server-runtime-entries-against-pulling-in-build-time-solidstartfrom
isaacschlueter/js-3989-guard-server-runtime-entries-against-pulling-in-build-time

Conversation

@isaacs

@isaacs isaacs commented Oct 23, 2026

Copy link
Copy Markdown
Member

The root entry of @sentry/astro is both the server runtime SDK and, through its default export, the Astro integration for astro.config. The integration imports @sentry/bundler-plugins/vite, the orchestrion Vite plugin, fs and createRequire, so the server runtime entry reaches all of them. Any tool that traces or bundles the server entry then pulls that tooling in.

The new @sentry/astro/integration entry exports the integration as its default and as sentryAstro. The root default export stays, deprecated, until the next major version, so existing astro.config files keep working. The E2E apps use the new entry.

The new entry has a node condition that points at the ESM build, the same as ./middleware. The CJS build of @sentry/astro does not load under the package's "type": "module", and the existing entries avoid it the same way.

Fixes #25676


Stack created with GitHub Stacks CLI • Give Feedback 💬

…gration

The root entry of `@sentry/astro` is both the server runtime SDK and,
through its default export, the Astro integration for `astro.config`.
The integration imports `@sentry/bundler-plugins/vite`, the orchestrion
Vite plugin, `fs` and `createRequire`, so the server runtime entry
reaches all of them. Any tool that traces or bundles the server entry
then pulls that tooling in.

The new `@sentry/astro/integration` entry exports the integration as its
default and as `sentryAstro`. The root default export stays, deprecated,
until the next major version, so existing `astro.config` files keep
working. The E2E apps use the new entry.

The new entry has a `node` condition that points at the ESM build, the
same as `./middleware`. The CJS build of `@sentry/astro` does not load
under the package's `"type": "module"`, and the existing entries avoid
it the same way.

Refs #25676

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@isaacs
isaacs requested a review from a team as a code owner October 23, 2026 21:20
@isaacs
isaacs added this pull request to stack #25727 October 23, 2026 21:20
@isaacs
isaacs requested review from chargome and s1gr1d and removed request for a team October 23, 2026 21:20
@linear-code

linear-code Bot commented Oct 23, 2026

Copy link
Copy Markdown

JS-3989

@github-actions

Copy link
Copy Markdown
Contributor

size-limit report 📦

Compared: e0020a6 (PR test merge using isaacschlueter/js-3989-guard-server-runtime-entries-against-pulling-in-build-time-solidstart at e799694)

Against: 5b2de99 (isaacschlueter/js-3989-guard-server-runtime-entries-against-pulling-in-build-time-solidstart) · base run #63485

⚠️ Baseline mismatch: 2 isaacschlueter/js-3989-guard-server-runtime-entries-against-pulling-in-build-time-solidstart commit(s) in the PR build are missing from the baseline. Their size changes also affect this comparison. Compare commits. Re-run once isaacschlueter/js-3989-guard-server-runtime-entries-against-pulling-in-build-time-solidstart's baseline build for e799694 finishes.

Path Size % Change Change
@sentry/browser 29.98 kB - -
@sentry/browser - with treeshaking flags 28.13 kB - -
@sentry/browser - with treeshaking flags tracing without tracing 28.03 kB - -
@sentry/browser (incl. Tracing) 52.17 kB - -
@sentry/browser (incl. Tracing + Span Streaming) 52.18 kB - -
@sentry/browser (incl. Tracing, Profiling) 55.12 kB - -
@sentry/browser (incl. Tracing, Replay) 91.97 kB - -
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 80.86 kB - -
@sentry/browser (incl. Tracing, Replay with Canvas) 96.7 kB - -
@sentry/browser (incl. Tracing, Replay, Feedback) 109.64 kB - -
@sentry/browser (incl. Feedback) 47.51 kB - -
@sentry/browser (incl. sendFeedback) 35.05 kB - -
@sentry/browser (incl. FeedbackAsync) 40.15 kB - -
@sentry/browser (incl. Metrics) 31.01 kB - -
@sentry/browser (incl. Logs) 31.28 kB - -
@sentry/browser (incl. Metrics & Logs) 31.94 kB - -
@sentry/react 31.81 kB - -
@sentry/react (incl. Tracing) 54.5 kB - -
@sentry/vue 38.14 kB - -
@sentry/vue (incl. Tracing) 55.11 kB - -
@sentry/svelte 30.01 kB - -
@sentry/remix (Remix 3 client bundle) 57.19 kB - -
CDN Bundle 31.76 kB - -
CDN Bundle (incl. Tracing) 52.71 kB - -
CDN Bundle (incl. Logs, Metrics) 33.95 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) 54.66 kB - -
CDN Bundle (incl. Replay, Logs, Metrics) 74.93 kB - -
CDN Bundle (incl. Tracing, Replay) 90.41 kB - -
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 92.33 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback) 96.55 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 98.5 kB - -
CDN Bundle - uncompressed 93.51 kB - -
CDN Bundle (incl. Tracing) - uncompressed 156.36 kB - -
CDN Bundle (incl. Logs, Metrics) - uncompressed 100.06 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 162.33 kB - -
CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 230.28 kB - -
CDN Bundle (incl. Tracing, Replay) - uncompressed 276.71 kB - -
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 282.66 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 290.41 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 296.35 kB - -
@sentry/nextjs (client) 57.38 kB - -
@sentry/sveltekit (client) 52.55 kB - -
@sentry/core/server 43.62 kB - -
@sentry/core/browser 13.81 kB - -
@sentry/node 153.77 kB - -
@sentry/node/import (ESM hook with diagnostics-channel injection) 81.58 kB - -
@sentry/node - without tracing 95.31 kB - -
@sentry/node - without channel injection 134.42 kB -0.01% -2 B 🔽
@sentry/aws-serverless 103.48 kB +0.01% +1 B 🔺
@sentry/cloudflare (withSentry) - minified 195.52 kB - -
@sentry/cloudflare (withSentry) 486.37 kB - -
@sentry/nextjs/cloudflare (withSentry) - minified 216.19 kB - -

View base workflow run

@github-actions

Copy link
Copy Markdown
Contributor

Optional E2E tests

All optional checks were successful. 2 successful. See the run.

Successful checks
Check Status
✅ CI: Optional E2E Tests / E2E astro-7 Test (optional) Successful in 1m Details
✅ CI: Optional E2E Tests / E2E astro-7-static Test (optional) Successful in 1m Details

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Guard server runtime entries against pulling in build-time tooling

1 participant