-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Description
Is there an existing issue for this?
- I have checked for existing issues https://github.com/getsentry/sentry-javascript/issues
- I have reviewed the documentation https://docs.sentry.io/
- I am using the latest SDK release https://github.com/getsentry/sentry-javascript/releases
How do you use Sentry?
Sentry Saas (sentry.io)
Which SDK are you using?
@sentry/browser
SDK Version
10.29.0
Framework Version
No response
Link to Sentry event
See linear ticket
Reproduction Example/SDK Setup
After reviewing all changes as part of the release, the only one that we thought could affect INP across the app was an update of our Sentry dependencies from v10.25.0 to v10.29.0 for our next release we wanted to “proof” this hypothesis, so we reverted Sentry back to v10.25.0
Steps to Reproduce
For an TV app, check INP measurements between 10.25.0 -> 10.29.0
Expected Result
No impact
Actual Result
a degradation of our INP metric (~10% slower) in the tv app
Additional Context
One thought I had was that 10.26.0 introduced an upgrade of the web vitals lib from 5.0.2 to 5.1.0
Key changes causing potential performance impact:
- Event listeners moved from document to window (via new globalListeners.ts)
- Listeners now execute later in event chain
- Broader scope affects interaction timing
- Additional pagehide event listener for Safari <14.4 compatibility
- 3 event listeners instead of 2 (visibilitychange, pagehide, prerenderingchange)
- More events to process during interactions
- Early registration of visibility watcher
- Listeners registered immediately in getVisibilityWatcher()
- Previously registered on-demand
- Synchronous callback execution system
// New code in getVisibilityWatcher.ts const onHiddenFunctions: Set<() => void> = new Set(); for (const onHiddenFunction of onHiddenFunctions) { onHiddenFunction(); // Blocks main thread }
Priority
React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it.
Metadata
Metadata
Assignees
Projects
Status