Bare package version v20171214 is parsed as an invalid Unicode code point
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 67/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Domain
- compilers, testing-qa
Research direction
Start at StringParser.parseVstring and trace how use ISO::639 v20171214 is handled during compilation in both execution backends. Add the project-owned regression for a large one-component package version; it is done when the module loads and its test passes on both the JVM and interpreter backends without the Unicode code point error.
Written by the indexing model from the issue text.
Description
Summary
Google::Translate::Languages fails to compile on PerlOnJava because a bare package version literal is parsed as a Unicode v-string.
Reproduction
Distribution: Google-Translate-Languages-20190811
The distribution contains:
use ISO::639 v20171214;
Its test program then fails before running any tests with:
Not a valid Unicode code point: 0x133C9CE
Compilation failed in require
0x133C9CE is decimal 20171214, the version value incorrectly passed to the v-string code path.
Results
- System Perl: PASS, 1 test program and 1 test.
- PerlOnJava JVM backend: FAIL before test execution.
- PerlOnJava interpreter backend: FAIL before test execution.
- The failure reproduces with the archived CPAN dependency overlay.
Archived CPAN tester run: 20260918-141920-96054.
Suspected cause
The parser routes use ISO::639 v20171214 through StringParser.parseVstring. A one-component package version must be treated as a version literal, not converted to a Unicode code point. The failure occurs in both execution backends during parsing/compilation.
Expected behavior
The module should load and its test should pass as it does under standard Perl.
Regression coverage
Add a project-owned parser/compiler regression test covering a bare package version with a large one-component value, such as use Some::Module v20171214, and verify JVM and interpreter parity.
- Dominant language
- Perl
- Stars
- 64
- Forks
- 6
- Avg merge
- 5h 25m
- Merged PRs (30d)
- 157
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from fglock/PerlOnJava
-
area:cpan-port area:unicode bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
fglock/PerlOnJava#1341 ·
-
area:cpan-port bug
Difficulty 4/5 3-5 days Newbie friendliness 44/100
fglock/PerlOnJava#1459 ·
-
area:cpan-port bug
Difficulty 3/5 1-2 days Newbie friendliness 72/100
fglock/PerlOnJava#1457 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 72/100
fglock/PerlOnJava#1455 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 68/100
fglock/PerlOnJava#1454 ·
All issues in fglock/PerlOnJava
Similar issues
-
1.severity: security
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
api7/lua-resty-saml#63 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 68/100
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100