Revert "Skipping EDI in the runtime-async case as well"#129123
Revert "Skipping EDI in the runtime-async case as well"#129123steveisok wants to merge 1 commit into
Conversation
This reverts commit 08db7a3.
|
Tagging subscribers to this area: @steveisok, @dotnet/area-system-diagnostics |
There was a problem hiding this comment.
Pull request overview
This PR reverts a prior change in StackTrace.ToString related to detecting async frames and suppressing the EDI (“--- End of stack trace from previous location ---”) boundary marker, restoring the older async-detection behavior.
Changes:
- Reverts async detection in
StackTrace.ToStringto no longer useMethodImplAttributes.Async, relying again on compiler-generated state machine type checks. - Removes runtime-async EDI-focused test methods and expected-pattern test data.
- Drops the assertion that runtime-async exception text must not contain the EDI boundary marker.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| src/libraries/System.Private.CoreLib/src/System/Diagnostics/StackTrace.cs | Reverts async frame detection affecting whether EDI boundaries are emitted during stack trace formatting. |
| src/libraries/System.Diagnostics.StackTrace/tests/StackTraceTests.cs | Removes EDI-specific runtime-async tests and relaxes validation by dropping the EDI marker assertion. |
|
Note This review was generated by Copilot. 🤖 Copilot Code Review — PR #129123Holistic AssessmentMotivation: Justified. PR #128735 broke NativeAOT CI (comment from Approach: A revert is the correct response. The original fix was incomplete (it only handled CoreCLR, not NativeAOT) and was blocking all NativeAOT CI legs. A proper fix should handle both code paths, and there was also unresolved discussion about whether the right approach is filtering EDI markers during stack trace formatting vs. not inserting them in the first place for infrastructure use. Summary: ✅ LGTM. This is a clean, mechanically-correct revert of #128735. Every addition from the original PR is precisely undone: the Detailed Findings✅ Revert Completeness — Diff is exact inverseCompared the revert diff against the original PR #128735 diff. Every hunk is precisely reversed:
No extraneous changes are included. ✅ NativeAOT Root Cause — ConfirmedThe NativeAOT 💡 Follow-up — Issue #128723 will need a new fixThis revert re-opens the underlying problem reported in #128723 (EDI markers appearing in runtime-async stack traces). A future fix should address both the CoreCLR path (
|
Reverts #128735