microsoft / microsoft/vscode-java-dependency

Unmappable characters in filename break project detection

Open
#712 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug upstream
Dominant language
TypeScript
Stars
199
Forks
105
Avg merge
1d 22h
Merged PRs (30d)
27

Description

I'm using a Github Codespace with the default image. It has a UTF-8 locale:

$ locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

In the project there is a file that is using a UTF-8 character in the filename. Until I remove it, the plugin is unable to detect the project. The log file contains the message

java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /home/codespace/my-project/target/test-classes/data-files/Grundfl��chen.dat

To me this looks like the filename is UTF-8 (the character is an ä) but the scanner does not treat it as UTF-8 but rather ASCII.

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 with project detection and scanner path handling, reproducing the issue in a Codespace using a UTF-8 filename such as one containing ä. Trace how the filename is decoded until the InvalidPathException occurs; done means the project is detected successfully without removing the file.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, typescript
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.