add missing funcs - #4
Merged
Merged
Conversation
The emulator suite enabled Trace and stopped there: EnablesTrace registered a tracer and never started a span, so the tracing path was configured and never driven. That is the class of gap a trace-id defect slips through. Four checks close it, taking the suite from 13 to 17: - a span started, tagged, errored, logged and finished, with its ids asserted by shape rather than for non-emptiness: 32 lowercase hex characters and not all zeros for the trace, decimal for the span - header injection cross-checked two ways - against traceparent across all 128 bits, which is derived independently of GetTraceId, and against the low 64 bits the Datadog header carries in decimal - plus the delegate form, which must write the same count as the dictionary form - the single-value attribute overloads on RUM, feature flags and a logger, with DatadogAttributes.ToJava asserted directly - the session id through GetCurrentSessionIdAsync, asserted non-null; a null means the Kotlin callback never fired, which is what the Task wrapper exists to surface The harness gained async support for the last of those. The sample was still largely the MAUI project template. It now matches the iOS sample: sections for RUM, Trace and Logs with an on-screen activity log, so it is useful without a Datadog account to send to. It also carried a bug worth not shipping in a sample - OnDisappearing disposed the view scope and then immediately started a new view, leaving one open for the rest of the session, collecting every action and error that followed. 17/17 on an arm64 emulator; 94/94 package tests. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The e2e ran against net10.0-android36.0 only. It is now a matrix over the two extremes: net8, the oldest asset set and the one nothing else exercises, and net10, whose assets come out of the merge step in BuildNugets.sh and so are the only ones that could be grafted in wrong. net9 sits between them and comes out of the same pack pass as net8. Standing net8 up found three problems, none of which anything else would have caught: - the SDK band has to be chosen by Android API level, not .NET version. The .NET 9 band has API 34 reference packs but no API 34 runtime packs, so a net8 app compiles and then fails to package with NETSDK1112 - NU1107 on Xamarin.AndroidX.SavedState: Navigation.Common wants >= 1.4.0 while SavedState.Ktx pins [1.3.2, 1.3.3). The .NET 9 and 10 SDKs resolve the higher version and warn; the .NET 8 SDK refuses. Pinned to 1.4.0 on the net8 head *only* - pinning it everywhere is a downgrade on net10, where Fragment wants >= 1.5.0.1, and fails the other way with NU1605. Every net8 consumer of these packages needs this pin - XA1018: the .NET 9 and 10 Android SDKs generate an AndroidManifest.xml; the .NET 8 one defaults $(AndroidManifest) to the project root and fails because nothing is there SessionReplayCompose is excluded from the net8 leg, because it genuinely has no net8 asset - its last net8 build pins an AndroidX SavedState old enough to collide with the rest of the graph. DATADOG_HAS_COMPOSE keeps the module check from looking for a class that build does not ship, so it still fails for the right reasons rather than being quietly weakened. 17/17 on both legs, verified on an arm64 emulator. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
No description provided.