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

Open Beginner friendly
#21,069 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
76/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Quiet
Tech stack
typescript
Domain
frontend

Research direction

Review the Next.js fix in pull request 21067, then inspect the listed type definitions in packages/core/src/build-time-plugins/buildTimeOptionsBase.ts, packages/solidstart/src/vite/types.ts, and the Astro, Nuxt, and SvelteKit integration files. Update each project option type consistently and verify that all listed SDK locations accept the same values as the bundler plugin.

Written by the indexing model from the issue text.

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.

Dominant language
TypeScript
Stars
8.7k
Forks
1.9k
Avg merge
1d 17h
Merged PRs (30d)
521

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from getsentry/sentry-javascript

All issues in getsentry/sentry-javascript

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.