Pod::PerlPoint v0.06 leaves ${__pod2pp__empty__} unexpanded on both backends
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 55/100
Research direction
Start with the failing Pod-PerlPoint test file t/all.t and reproduce both assertions on the JVM and interpreter backends. Then reduce the behavior to a PerlOnJava regression test for braced scalar interpolation involving ${pod2pp__empty}, comparing both backend implementations. Done means both backends match system Perl for t/all.t while preserving literal ${...} text where required.
Written by the indexing model from the issue text.
Description
Summary
Pod-PerlPoint v0.06 fails its upstream t/all.t regression test on both PerlOnJava execution backends.
This was observed in CPAN random tester run 20260916-111623-23683 for the Pod::PerlPoint target record. The failure is reproducible and appears to be a PerlOnJava interpolation/escaping incompatibility.
Reproduction
Run the unmodified CPAN distribution test file:
t/all.t
Results:
- System Perl 5.42.2: passes,
1/1test program and2/2assertions. - PerlOnJava JVM backend: fails,
2/2assertions. - PerlOnJava interpreter backend: fails,
2/2assertions.
The PerlOnJava result is stable across both backends and is not a timeout, missing service, display requirement, or native/XS dependency issue.
Mismatch
The test compares generated PerlPoint text. In the first expected document, PerlOnJava retains literal ${__pod2pp__empty__} markers where the expected output contains the marker's empty expansion. In the second expected document, PerlOnJava likewise retains ${__pod2pp__empty__} in list/paragraph positions where system Perl produces ..
The failing assertions are the two checks in t/all.t that compare the generated output against the traditional and parser-4.0 expected PerlPoint documents.
The module implementation intentionally emits ${__pod2pp__empty__} as a PerlPoint variable reference and generates a definition of $__pod2pp__empty__. Under standard Perl, the generated text is interpreted as intended. Under PerlOnJava, the variable-reference syntax is not being expanded equivalently, leaving the literal marker in the output.
Expected behavior
Both PerlOnJava backends should produce the same two strings as system Perl for the upstream test, including the empty-variable handling and the . paragraph markers.
Regression context
The CPAN tester record is marked REGRESS against baseline commit e35e5f15d (baseline date 2026-09-07).
Suggested investigation
- Reduce the behavior to a small PerlOnJava regression test covering interpolation of a generated string containing
${__pod2pp__empty__}and the subsequent assignment/use of$__pod2pp__empty__. - Compare JVM and interpreter handling of braced scalar interpolation, especially when the variable is embedded in text generated by a module.
- Verify that the fix preserves literal
${...}text where Perl semantics require it to remain literal. - Re-run
Pod-PerlPointv0.06t/all.ton both backends and confirm both assertions pass.
References
- CPAN random tester run:
20260916-111623-23683 - Distribution:
Pod-PerlPointv0.06 - Failing test:
t/all.t
- 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 high-impact
Difficulty 3/5 1-2 days Newbie friendliness 67/100
fglock/PerlOnJava#1456 · 1 comment ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 72/100
fglock/PerlOnJava#1455 ·
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