Skip to content

Fix CPAN compiler and tooling blockers - #963

Closed
fglock wants to merge 5 commits into
masterfrom
fix/cpan-chart-plack-qrcode-tk-anova-flickr
Closed

Fix CPAN compiler and tooling blockers#963
fglock wants to merge 5 commits into
masterfrom
fix/cpan-chart-plack-qrcode-tk-anova-flickr

Conversation

@fglock

@fglock fglock commented Aug 15, 2026

Copy link
Copy Markdown
Owner

Summary

  • close child stdin pipes for non-interactive system/capture subprocesses, preventing nested jperl CPAN configuration hangs
  • parse escaped quoted hash keys inside interpolated strings
  • fix MakeMaker AutoSplit handling for __END__; and read-only executable staging
  • preserve scalar/list context and dual-valued statuses in streaming Compress::Zlib::inflate
  • add Java XS bridges for Text::QRCode (ZXing with libqrencode-compatible byte mode/masking) and the Math::Cephes distribution functions needed by statistics modules
  • replace the deprecated Sereal Zstd.decompressedSize calls with Zstd.getFrameContentSize, rejecting invalid or unknown frame sizes before buffer allocation
  • preserve PVLV filehandle semantics by resolving -t through the carried IO slot and retaining glob names in unopened-close warnings

CPAN verification

  • Plack::App::dbi2http: PASS (3 files, 2 tests; author tests skipped)
  • Vector::QRCode::IntoPDF: PASS (1 file, 1 test)
  • upstream Text::QRCode exact matrices: PASS (both test files)
  • Statistics::ANOVA::Page: PASS (5 files, 10 tests; author/POD prerequisites skipped)
  • Image::Size: PASS (2 files, 24 tests)
  • Chart::Graph: reaches all 56 tests; remaining failures are absent external gnuplot, xmgrace, Xvfb, xrt2d, and xrt3d. The configured suite fails identically with system Perl.
  • Tk::CheckbuttonGroup: remaining Tk native event backend is unavailable; system Perl also fails because Tk is unavailable.
  • Net::Flickr::Geo: Image::Size and Config::Simple tooling failures are fixed; remaining loads require native GD/Imager, while the system-Perl suite also fails its prerequisites.

Core regression verification

  • re/pat_advanced.t: 1376/1687
  • re/pat_advanced_thr.t: 1376/1687
  • op/gv.t: 255/304 (restored from 253)
  • test_pl/examples.t: 12/17
  • uni/gv.t: 178/206 (restored from 176)
  • japh/abigail.t: 109/130; identical on current master and the historical comparison commit, so the reported 110/130 result is not a PR regression

Tests

  • combined make — PASS (all unit shards)
  • focused PVLV oracle — PASS with system Perl and both PerlOnJava backends
  • compileJava emits no Sereal/Zstd deprecation warnings
  • new or changed Perl unit tests were validated with system Perl before PerlOnJava runs
  • git diff --check — PASS
  • GitHub Actions — PASS on Ubuntu and Windows at final head 25b7b5a3e

Generated with Codex

fglock and others added 2 commits August 15, 2026 19:49
Close subprocess stdin pipes, support escaped hash keys in interpolation,
and harden MakeMaker script and AutoSplit staging. Add Java-backed
Text::QRCode and Math::Cephes compatibility plus correct Compress::Zlib
streaming context behavior.

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

Co-Authored-By: Codex <codex@openai.com>
Normalize native Windows separators before writing the Perl executable into
POSIX-shell Makefile recipes. This prevents Bash from consuming backslashes
as escapes when MakeMaker stages AutoLoader modules.

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

Co-Authored-By: Codex <codex@openai.com>
@fglock
fglock force-pushed the fix/cpan-chart-plack-qrcode-tk-anova-flickr branch from 4fb63dd to fb7d038 Compare August 15, 2026 17:56
fglock and others added 3 commits August 15, 2026 20:17
Replace deprecated decompressedSize calls in the imported Sereal decoders with
getFrameContentSize. Reject unknown or invalid frame sizes before allocating
decoder buffers, and remove the compile-time deprecation warnings.

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

Co-Authored-By: Codex <codex@openai.com>
Resolve file tests through the IO slot carried by a glob instead of its
stringified name, and retain PVLV glob names in unopened-close warnings.

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

Co-Authored-By: Codex <codex@openai.com>
Generated with [Codex](https://openai.com/codex/)

Co-Authored-By: Codex <codex@openai.com>
fglock added a commit that referenced this pull request Aug 15, 2026
Combine the CPAN compiler, subprocess, MakeMaker, native-module, Zstd, and
filehandle fixes from PR #963 with the jcpan module tooling fixes in PR #964
so they can be tested and approved together.

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

Co-Authored-By: Codex <158243242+openai-codex@users.noreply.github.com>
fglock added a commit that referenced this pull request Aug 15, 2026
Record the passing Ubuntu and Windows results for the combined PR #963 and
PR #964 review branch.

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

Co-Authored-By: Codex <158243242+openai-codex@users.noreply.github.com>
@fglock

fglock commented Aug 15, 2026

Copy link
Copy Markdown
Owner Author

Superseded by #964, which now contains every commit from this PR plus the additional jcpan compiler/tooling fixes. The unified branch passes the full local make suite and Ubuntu/Windows CI; testing and approval should continue on #964.

@fglock fglock closed this Aug 15, 2026
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