getsentry / getsentry/sentry-javascript

`project` option type should be `string | string[]` across all framework SDKs

Open
#21,069 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
8.7k
Forks
1.8k
Avg merge
1d 17h
Merged PRs (30d)
515

Description

`@sentry/bundler-plugin-core` accepts `string | string[]` for the `project` option, but our SDK types narrow it to `string`, causing a TypeScript error when users pass an array.

[https://github.com/getsentry/sentry-javascript/pull/21067]() fixes this for Next.js. The same mismatch exists in:

**Top-level options:**

* `packages/core/src/build-time-plugins/buildTimeOptionsBase.ts:40` (root cause — inherited by nuxt, sveltekit, astro)
* `packages/solidstart/src/vite/types.ts:111` (standalone definition)

**Deprecated** `sourceMapsUploadOptions.project`**:**

* `packages/astro/src/integration/types.ts:66`
* `packages/nuxt/src/common/types.ts:118`
* `packages/sveltekit/src/vite/types.ts:42`

These deprecated options are still live code paths — each SDK falls back to them via `topLevel.project ?? sourceMapsUploadOptions.project ?? env`, so users who haven't migrated hit the same TS error.

All locations forward `project` verbatim to the bundler plugin, so the fix is type-only: widen to `string | string[]` in each location.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.