-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Revert "Add methods from #27912 (Flow System.Text.Rune through more APIs)" #120138
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
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.
Pull Request Overview
This PR reverts the functionality introduced in #117168 that added Rune-based APIs to various .NET types. The revert removes support for working with System.Text.Rune objects in StringBuilder, String, TextInfo, TextWriter, and related test infrastructure.
- Removes Rune-based methods from core .NET types (StringBuilder, String, TextInfo, TextWriter)
- Eliminates StringBuilderRuneEnumerator class and related enumeration functionality
- Reverts all associated test cases and test infrastructure for Rune support
Reviewed Changes
Copilot reviewed 18 out of 18 changed files in this pull request and generated 3 comments.
Show a summary per file
File | Description |
---|---|
StringBuilderTests.cs | Removes test cases for Rune operations (Append, Insert, Replace, GetRuneAt, EnumerateRunes) |
RuneTests.cs | Removes Rune equality comparison tests with StringComparison parameter |
StringTests.cs | Removes Rune-based String method tests (Contains, EndsWith, StartsWith, IndexOf, LastIndexOf, Replace, Trim) |
String.SplitTests.cs | Removes Rune-based Split method tests and related test infrastructure |
TextWriterTests.cs | Removes Rune Write/WriteLine method tests |
TestDataProvider.cs | Removes RuneData test data infrastructure |
TextInfoTests.cs | Removes Rune ToLower/ToUpper method tests |
System.Runtime.cs | Removes Rune-based method signatures from public API surface |
StringBuilderRuneEnumerator.cs | Completely removes the enumerator class for Rune enumeration in StringBuilder |
StringBuilder.cs | Removes Rune support methods (Append, Insert, Replace, GetRuneAt, TryGetRuneAt, EnumerateRunes) |
Rune.cs | Removes AsSpan helper method and Equals overload with StringComparison |
String.Searching.cs | Removes Rune-based search methods (Contains, IndexOf, LastIndexOf) |
String.Manipulation.cs | Removes Rune-based manipulation methods (Replace, Split, Trim operations) |
String.Comparison.cs | Removes Rune-based comparison methods (StartsWith, EndsWith) |
TextWriter.cs | Removes Rune Write/WriteLine methods (sync and async) |
TextInfo.cs | Removes Rune ToLower/ToUpper methods and internal helper methods |
Char.cs | Removes internal Equals overload with StringComparison parameter |
System.Private.CoreLib.Shared.projitems | Removes StringBuilderRuneEnumerator.cs from compilation |
src/libraries/System.Runtime/tests/System.Runtime.Tests/System/StringTests.cs
Show resolved
Hide resolved
src/libraries/System.Runtime/tests/System.Runtime.Tests/System/String.SplitTests.cs
Show resolved
Hide resolved
Tagging subscribers to this area: @dotnet/area-system-runtime |
… more APIs) (dotnet#1…" (dotnet#120138) This reverts commit be80737.
…#27912 (Flow System.Text.Rune through more APIs)) (#120145) * Fix tests from #117168 * Add `SyncTextWriter` overloads as well * Add missing overloads to BroadcastingTextWriter * Reapply "Add methods from #27912 (Flow System.Text.Rune through more APIs) (#1…" (#120138) This reverts commit be80737. * Override the TextWrite Rune overloads in IndentedTextWriter --------- Co-authored-by: Tarek Mahmoud Sayed <[email protected]>
Reverts #117168
Fixes #120137