Skip to content

includeWebFeedback: false leaves @sentry/browser's feedbackSync in bundles made on Windows, which then fail at launch #6913

Closed

Description

@doodirock

Environment

  • @sentry/react-native 8.29.0 (the same code is in 8.31.0)
  • Expo SDK 57, React Native 0.86.3, Metro via getSentryExpoConfig
  • Bundled on Windows 11 (eas update, which bundles locally)

Steps to reproduce

  1. Use getSentryExpoConfig(__dirname, { includeWebFeedback: false }) in metro.config.js.
  2. On Windows, run npx expo export --platform ios --source-maps (or eas update).
  3. List the bundle's source map sources.

Expected result

As on macOS and Linux: @sentry/feedback is stubbed, and so are @sentry/browser's feedbackSync.js and feedbackAsync.js, as the comment above SENTRY_BROWSER_FEEDBACK_WRAPPER_RE describes.

Actual result

@sentry/feedback is stubbed, but @sentry/browser/build/npm/esm/prod/feedbackSync.js and feedbackAsync.js are bundled. feedbackSync.js calls buildFeedbackIntegration() from the empty module as it loads, so the bundle fails at launch. On an expo-updates update, the phone records a failed launch and falls back to its embedded bundle.

The cause is isFromSentryBrowser in dist/js/tools/metroconfig.js:

function isFromSentryBrowser(originModulePath) {
    return originModulePath.includes('@sentry/browser');
}

On Windows, Metro's context.originModulePath uses backslashes (...\node_modules\@sentry\browser\build\...), so this is never true. Matching either separator fixes it, for example /[\/]@sentry[\/]browser[\/]/.test(originModulePath).

Our workaround is to wrap config.resolver.resolveRequest after getSentryExpoConfig and return { type: 'empty' } for /\/feedback(Sync|Async)/ requested from a path matching that pattern.

Activity

  1. linear-code commented on Oct 20, 2026

    @linear-code
  2. moved this to Waiting for: Product Owner in GitHub Issues with 👀 3on Oct 20, 2026
  3. self-assigned this
    on Oct 20, 2026
  4. alwx commented on Oct 20, 2026

    @alwx
    Contributor

    Thanks for reporting. We've seen your request and added it to our triage queue.

    We'll review it shortly and follow up if we need more information or once next steps are clearer.

  5. moved this from Waiting for: Product Owner to No status in GitHub Issues with 👀 3on Oct 20, 2026
  6. github-actions commented on Oct 22, 2026

    @github-actions
    Contributor

    A PR closing this issue has just been released 🚀

    This issue was referenced by PR #6915, which was included in the 8.32.0 release.

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

Metadata

Metadata

Assignees

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions