-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Closed as not planned
Labels
Package: coreIssues related to the Sentry Core SDKIssues related to the Sentry Core SDKPackage: replayIssues related to the Sentry Replay SDKIssues related to the Sentry Replay SDKType: Improvement
Description
Problem Statement
While debugging a failing replay integration test in #7011, we just realized that the global installedIntegrations causes problems for the replay integration CDN bundle.
This is problematic, because the replay integration CDN bundle will get its own copy of installedIntegrations, which will always be empty as it is not populated by the SDK:
// Both bundles maintain separate copies of `installedIntegrations` and only the SDK's field will be used
SDk bundle
sentry.init()
sentry.addinitegration()
installedIntegrations = [ 'Replay', 'Dedupe', ....]
replay bundle
installedIntegrations = []
prepareEvent() // prepareEvent accesses installedIntegrations but takes the replay bundle's version, which will always be empty
Solution Brainstorm
We should get rid of this global as this is very problematic, albeit in this particular case, only for the replay integration.
It should be good enough to use the _integrations field in BaseClient to avoid a breaking change for now and once we move to v8, we can add public getter/a cleaner way to access this field.
Metadata
Metadata
Assignees
Labels
Package: coreIssues related to the Sentry Core SDKIssues related to the Sentry Core SDKPackage: replayIssues related to the Sentry Replay SDKIssues related to the Sentry Replay SDKType: Improvement