Skip to content

Improve CPAN compiler and tooling compatibility - #946

Merged
fglock merged 2 commits into
masterfrom
fix/cpan-compiler-tooling-suite
Aug 13, 2026
Merged

Improve CPAN compiler and tooling compatibility#946
fglock merged 2 commits into
masterfrom
fix/cpan-compiler-tooling-suite

Conversation

@fglock

@fglock fglock commented Aug 13, 2026

Copy link
Copy Markdown
Owner

Summary

  • add reusable compiler/runtime support for modern feature bundles, fatal warning pragmas, runtime glob redefinition warnings, compile-time call parsers, and special-block hooks
  • use commonmark-java for the Markdown rendering surface instead of maintaining a custom parser; retain the small indexed trigram implementation because Commons Text does not provide the required index/Dice-scoring contract
  • add Java compatibility backends used by Chandra and fix XML::LibXML element child-node compatibility

Validation

  • make — pass
  • ./jcpan -t Constructor::Sugar — 7 files, 95 tests pass
  • ./jcpan -t Chandra::Markdown — 5 files, 83 tests pass
  • ./jcpan -t XML::Writer::Simple — 7 files, 33 tests pass
  • ./jcpan -t ISO::639 — 16 tests pass
  • ./jcpan -t Search::Trigram — 10 files, 94 tests pass
  • new unit tests were first validated with system Perl

Scope notes

  • Test::Perl::Dist is excluded because its distribution also fails under system Perl (duplicate planning through LWP::Online and platform-specific Win32 assumptions).
  • Games::Axmud is excluded because its native Gtk3/GObject dependency chain fails under system Perl on this host.
  • The Java Object::Proto and Markdown::Simple implementations cover the API exercised by Chandra. Their distributions contain additional advanced/native APIs that are not claimed as complete here.
  • make test-bundled-modules still reports the existing test-resource/current-directory failures (mostly missing t/*.inc helper resources); the primary full make build is green.

fglock and others added 2 commits August 13, 2026 10:48
Add reusable compiler/runtime support for modern feature bundles, fatal
warning pragmas, runtime glob redefinition warnings, compile-time call
parsers, and special-block hooks. Provide portable Java backends for the
Chandra Markdown dependency surface, using commonmark-java for rendering,
and fix XML::LibXML element compatibility.

Generated with [Codex](https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
Do not emit runtime redefine warnings while materializing parsed declarations,
replacing Java-backed module methods, or re-exporting constants with the same
underlying value. This restores the re/pat.t, op/gv.t, and uni/gv.t baselines.

Generated with [Codex](https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
@fglock
fglock merged commit 0fcde08 into master Aug 13, 2026
3 of 4 checks passed
@fglock
fglock deleted the fix/cpan-compiler-tooling-suite branch August 13, 2026 11:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant