feat: Use beforeNavigate in routing instrumentation to match behavior on JS #1313
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
📢 Type of change
📜 Description
NOTE: This needs #1311 to be merged first!
Uses the
beforeNavigate
option that is passed toReactNativeTracing
to have the same behavior as on JS.(This removes the deprecated feature of returning undefined in the type, although handles it just in case users are used to the old behavior.)
We will now also export a convenience type
ReactNavigationTransactionContext extends TransactionContext
for users who use the React Navigation instrumentations:This also does not implement any context-change-wiping that was discussed with @lobsterkatie in getsentry/sentry-javascript#3192 as I believe there needs to be more discussion internally about which properties should not be changed by the user.
💡 Motivation and Context
Addresses #1312
💚 How did you test it?
Updated tests for React Navigation V4 and V5. Tested on simulators running both instrumentations.
📝 Checklist
shouldSendTransaction
on 2.2.0-beta.0. But it was undocumented in anticipation for this change so there should not be any or at worst very few.