microsoft / microsoft/winget-cli

Work toward u8string across the project to avoid future issues when handling extended characters

Open
#473 14 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Issue-Feature
Dominant language
C++
Stars
26.4k
Forks
1.8k
Avg merge
1d 11h
Merged PRs (30d)
15

Description

Brief description of your issue

This is a follow up issue filed with unicode fix PR #466
std::string is used across the project to represent strings. In some cases, it'll cause potential bugs when handling extended characters. For example, std::filesystem::path treats std:;string type as narrow case encoding.

Expected behavior

u8string is used across the project for representing strings. Or at least those deal with windows file systems are changed to use u8string.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the Unicode fix in PR #466 and tracing the project’s uses of std::string, especially where std::filesystem::path handles Windows file-system paths. Define the affected scope before changing anything; done means the relevant string representations use u8string without introducing encoding regressions.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
cli, operating-systems
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.