Port Data::Alias for CPAN compatibility
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
调研方向
Read the PerlOnJava parser and runtime entry points that implement Perl syntax and operations, then compare them with Data::Alias 1.30's Alias.xs and documented API. Start by reproducing the pop our @ISA failure and use system Perl as the behavior reference. Done means the documented alias, copy, and deref semantics pass the upstream Data::Alias and Data::Reuse 0.13 suites on supported backends, with unsupported cases and tested versions recorded.
由索引模型根据 Issue 内容生成。
描述
Summary
Port Data::Alias so CPAN distributions that rely on its aliasing API can run on PerlOnJava. Data::Reuse is one confirmed consumer. Data::Alias 1.30 contains XS code (Alias.xs) and its Perl module bootstraps that extension; the current CPAN MakeMaker path installs only the .pm file and cannot compile the XS component.
Reproduction and evidence
- Distribution: Data-Alias 1.30, module
Data::Alias. - In CPAN run
20261104-151051-20617, the PerlOnJava test run fails to loadData::Aliasacross 31 of 33 test programs withType of arg 1 to pop must be array (not constant item)at thepop our @ISAstatement inData/Alias.pmline 18. This is the first observed blocker; the package also needs an implementation for its XS-provided aliasing behavior. - On system Perl 5.42.2 (macOS), the same distribution compiled its XS extension and passed all available tests: 637 tests across 33 files. Two optional test files were skipped because
Devel::CallParserandTest::Pod::Coveragewere unavailable. Data::Reuse0.13 requiresData::Alias1.16+. In CPAN run20261106-154847-45334, its four test files all fail during dependency loading at the samepop our @ISAdiagnostic. The system-Perl oracle builtData::Aliasand passed all 127Data::Reusetests.- Targeted MetaCPAN reverse-dependency lookup: 14 unique released distributions have a runtime dependency on
Data::Alias; 2 are recent. Examples:Data::Reuse,Alias-Any,PerlX-Window, andXML-Dataset.
Scope
Implement the Data::Alias surface needed by real consumers, including alias, copy, and deref, with Perl-compatible parsing and runtime semantics. The upstream distribution documents context-transparent operations and aliasing of variables, elements, arguments, and aggregates. Do not treat successful parsing alone as completion: exercise the upstream suite and Data::Reuse against the implementation.
Acceptance criteria
use Data::Aliasloads without native XS and provides the supported API through PerlOnJava implementation code.- Focused tests cover
pop our @ISAparsing and the documented API semantics, validated against system Perl. - Relevant upstream
Data::Aliastests and theData::Reuse0.13 suite pass on PerlOnJava; test on both JVM and interpreter backends where supported. - Document any unsupported API cases and keep the tested distribution versions and results in the compatibility evidence.
Evidence references
- Data::Alias source
- Data::Reuse 0.13
- CPAN run IDs:
20261104-151051-20617(Data::Alias) and20261106-154847-45334(Data::Reuse).
- 主要语言
- Perl
- 星标
- 65
- 派生
- 8
- 平均合并
- 5 小时 57 分钟
- 30 天内合并 PR
- 177
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
fglock/PerlOnJava 的其他 Issue
-
area:runtime documentation enhancement
难度 2/5 1-3 小时 新手友好度 72/100
fglock/PerlOnJava#1579 ·
维护者通常 1 天内回复
-
Honor scalar context for sort returned from a subroutine可能已有人在做 @fglock 今天认领。 未关闭area:runtime bug
难度 3/5 1-2 天 新手友好度 25/100
fglock/PerlOnJava#1991 · 1 条评论 ·
维护者通常 1 天内回复
-
area:parser area:unicode bug
难度 4/5 3-5 天 新手友好度 48/100
fglock/PerlOnJava#1989 ·
维护者通常 1 天内回复
-
area:backend bug
难度 4/5 3-5 天 新手友好度 55/100
fglock/PerlOnJava#1981 · 1 条评论 ·
维护者通常 1 天内回复
-
area:runtime bug
难度 4/5 3-5 天 新手友好度 57/100
fglock/PerlOnJava#1980 · 1 条评论 ·
维护者通常 1 天内回复
查看 fglock/PerlOnJava 的全部 Issue
相似的 Issue
-
check_keywords.pl dies before reporting an unknown keyword category可能已有人在做 @zhaohai666 于 1 天前认领。 未关闭
难度 1/5 1 小时以内 新手友好度 87/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
-
难度 2/5 1-3 小时 新手友好度 72/100
libwww-perl/HTTP-Message#236 ·
-
1.severity: security
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
wave-followup
难度 2/5 1-3 小时 新手友好度 74/100