-
-
Notifications
You must be signed in to change notification settings - Fork 221
chore(deps): update Native SDK to v0.10.0 #4436
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
e38c1b4
to
73e0541
Compare
@@ -11,6 +11,9 @@ | |||
- Bump CLI from v2.50.2 to v2.51.0 ([#4419](https://github.com/getsentry/sentry-dotnet/pull/4419)) | |||
- [changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#2510) | |||
- [diff](https://github.com/getsentry/sentry-cli/compare/2.50.2...2.51.0) | |||
- Bump Native SDK from v0.9.1 to v0.10.0 ([#4436](https://github.com/getsentry/sentry-dotnet/pull/4436)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
question: Are the Breaking Changes in the Native SDK observable from the .NET SDK?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reading through the change logs, it looks like the "breaking" changes are using sample_rand
, adding a DSC to transactions/errors and Tracing without Performance. These are all supported by the .NET SDK already and implemented per the spec... so the two SDKs should play nicely together if one is an upstream and the other is a downstream (they've implemented the same protocol around propagating trace context via request headers).
From what I can tell, those changes aren't relevant in scenarios where the .NET SDK wraps the Native SDK (e.g. capturing native crash reports when .NET applications are compiled AOT or marshalling calls to functionality implemented in native dlls).
@supervacuus / @JoshuaMoelans can you confirm I've understood the above correctly?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's quickly go through the breaking changes and translate the effects for .NET SDK users:
- The first is only "breaking" in the sense that if you relied on all
transactions
to be part of the sametrace
before, this is no longer the case by default. However, since the .NET SDK manages the trace life-cycle of the Native SDK viasentry_set_trace()
anyway, there is no apparent change for .NET SDK users, because in that configuration transactions do not act as trace boundaries. - The second is the standard behavior for
sample_rand
, which wasn't implemented yet, but now is in effect due to the dynamic sampling context implementation. .NET SDK users will see the impact of this change, meaning trace-basedsample_rand
decisions will apply to either all transactions in that trace or none, but that is by design so that the trace's contents aren't artificially cut. - The third means that the Native SDK is no longer buildable from the OSS repo alone (except if you provide your own
CMake
toolchain configuration). I am not up-to-date with the .NET SDK usage on Xbox, but I guess not yet, right @bruno-garcia?
So, the only "breaking" change that affects .NET SDK users (except for the Xbox change, let's wait for @bruno-garcia to chime in) is the second one. I leave it up to you whether this is even a breaking change for your users, since this was meant as more of an improvement for downstream SDK users. However, in our context, for a small percentage of users, it would be a breaking change.
73e0541
to
c160b2b
Compare
c160b2b
to
be63d63
Compare
Bumps modules/sentry-native from 0.9.1 to 0.10.0.
Auto-generated by a dependency updater.
Changelog
0.10.0
Breaking changes:
sentry_regenerate_trace()
orsentry_set_trace()
), which turns off the automatic management of trace boundaries. (#1270)sentry_regenerate_trace()
) or run the Native SDK inside a downstream SDK like the Unity SDK, where these SDKs will manage the trace boundaries, for a giventraces_sample_rate
, either all transactions in a trace get sampled or none do with probability equal to that sample rate. (#1254)Features:
sentry_clear_attachments()
to allow clearing all previously added attachments in the global scope. (#1290)sentry_regenerate_trace()
to allow users to set manual trace boundaries. (#1293)Dynamic Sampling Context (DSC)
to events. (#1254)sentry_value_new_feedback
andsentry_capture_feedback
to allow capturing User Feedback. (#1304)sentry_value_new_user_feedback
andsentry_capture_user_feedback
in favor of the new API.sentry_envelope_read_from_file
,sentry_envelope_get_header
, andsentry_capture_envelope
. (#1320)(u)int64
sentry_value_t
type. (#1326)Meta:
SENTRY_DEPRECATED(msg)
. (#1308)Internal:
event_id
defined similarly to other backends. This makes it possible to associate feedback at the time of crash. (#1319)