Skip to content

Package Manager Console corrupts supplementary Unicode characters on backspace #15025

Description

@bribrothers

Description

Visual Studio Package Manager Console handles backspace as a single UTF-16 code unit. For supplementary-plane characters represented by surrogate pairs, backspace can delete only the low surrogate and leave a corrupt unpaired high surrogate in both the console buffer and returned input. This surfaced during VS 2026 GB18030-2022 certification testing with CJK Extension B and supplementary private-use characters.

Proposed fix

  • Update WpfConsole.WriteBackspace to remove a complete trailing surrogate pair.
  • Update NuGetHostUserInterface.ReadLine to remove the same complete pair from its input buffer.
  • Add an Apex regression test that echoes a mixed supplementary-plane sample through Package Manager Console.

Tracking

The Agency prototype passed its remote build and test validation.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions