From 1ef073e25286a4f4e35a17a237268b321105fa63 Mon Sep 17 00:00:00 2001 From: Flavio Soibelmann Glock Date: Mon, 27 Apr 2026 16:03:07 +0200 Subject: [PATCH 1/2] chore(cpan-tester): add -k kill-after to timeout so wedged jperl is hard-killed cpan_random_tester.pl wrapped each `jcpan -t` invocation with a plain `timeout ${secs}s ...`, which only sends SIGTERM. A wedged JVM that ignores SIGTERM (or a child process that has been suspended via SIGTSTP) survives the timeout and lingers indefinitely, eating RAM and blocking reruns. Mirror the fix already in perl_test_runner.pl: - Add `-k 10s` so the wrapper follows up SIGTERM with SIGKILL after a 10-second grace period. - Treat exit codes 124 (SIGTERM-then-exit), 137 (SIGKILL) and 143 (SIGTERM) as timeouts instead of just 124. - Skip external-`timeout` detection on Windows (`$^O eq 'MSWin32'`), because Windows' `timeout.exe` is a sleep-with-countdown, not GNU coreutils. Falls through to the existing fork+alarm fallback. Cross-platform behavior: - Linux: uses `timeout -k 10s ${secs}s` (GNU coreutils). - macOS: uses `timeout -k 10s` if coreutils is installed via Homebrew, otherwise `gtimeout -k 10s`. If neither, falls back to fork+setpgrp+kill(-pid). - Windows: skips external timeout, uses the alarm-based fallback. Generated with [Devin](https://cli.devin.ai/docs) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com> --- dev/tools/cpan_random_tester.pl | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/dev/tools/cpan_random_tester.pl b/dev/tools/cpan_random_tester.pl index 77be35857..fb93eb12f 100644 --- a/dev/tools/cpan_random_tester.pl +++ b/dev/tools/cpan_random_tester.pl @@ -494,19 +494,24 @@ sub parse_all_module_results { # # Strategy (borrowed from perl_test_runner.pl): # 1. Prefer external `timeout` / `gtimeout` — they send SIGTERM to the -# process group and handle cleanup natively. +# process group and follow up with SIGKILL (-k) if the child (e.g. +# a wedged JVM) ignores SIGTERM. Skipped on Windows because +# `timeout.exe` there is a sleep-with-countdown, NOT GNU coreutils. # 2. Fallback: fork + setpgrp + kill(-$pid) for platforms without -# coreutils. +# coreutils (and for Windows, where it degrades to a plain alarm). +my $KILL_AFTER = 10; # seconds between SIGTERM and SIGKILL sub run_with_timeout { my ($cmd, $secs) = @_; # --- Strategy 1: external timeout command --- my $timeout_cmd = _find_timeout_cmd(); if ($timeout_cmd) { - my $full = "$timeout_cmd ${secs}s $cmd 2>&1"; + my $full = "$timeout_cmd -k ${KILL_AFTER}s ${secs}s $cmd 2>&1"; my $output = `$full`; my $exit_code = $? >> 8; - my $timed_out = ($exit_code == 124); # timeout exits 124 + # 124 = SIGTERM sent and child exited, 137 = 128+SIGKILL (hard-killed + # by -k), 143 = 128+SIGTERM (child exited due to SIGTERM). + my $timed_out = ($exit_code == 124 || $exit_code == 137 || $exit_code == 143); return ($output // '', $timed_out); } @@ -572,6 +577,11 @@ sub run_with_timeout { sub _find_timeout_cmd { return $_timeout_cmd if $_checked; $_checked = 1; + # Windows ships a `timeout.exe` that is a sleep-with-countdown + # (NOT GNU coreutils) — skip detection there. The fallback path + # (alarm + kill) handles Windows; setpgrp/kill(-$pid) are no-ops + # but the alarm still bounds runtime. + return undef if $^O eq 'MSWin32'; for my $candidate (qw(timeout gtimeout)) { if (system("which $candidate >/dev/null 2>&1") == 0) { $_timeout_cmd = $candidate; From c4889bc0fe6a800453fe84512427ee414799af4d Mon Sep 17 00:00:00 2001 From: Flavio Soibelmann Glock Date: Mon, 27 Apr 2026 16:03:07 +0200 Subject: [PATCH 2/2] docs(cpan-reports): refresh from background random tester Modules tested: 4147 (+8). Pass: 1062 (+1). Fail: 3085 (+7). Generated with [Devin](https://cli.devin.ai/docs) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com> --- dev/cpan-reports/cpan-compatibility-fail.dat | 35 +++++++----- dev/cpan-reports/cpan-compatibility-pass.dat | 3 +- dev/cpan-reports/cpan-compatibility.md | 54 +++++++++++-------- .../org/perlonjava/core/Configuration.java | 4 +- 4 files changed, 60 insertions(+), 36 deletions(-) diff --git a/dev/cpan-reports/cpan-compatibility-fail.dat b/dev/cpan-reports/cpan-compatibility-fail.dat index 13c3912be..d418b0b45 100644 --- a/dev/cpan-reports/cpan-compatibility-fail.dat +++ b/dev/cpan-reports/cpan-compatibility-fail.dat @@ -343,7 +343,7 @@ CGI::AppBuilder::MapForms FAIL Configure failed 2026-04-21 CGI::AppBuilder::Message FAIL Configure failed 2026-04-26 CGI::AppBuilder::TaskLoads FAIL No parseable output 2026-04-27 CGI::AppBuilder::Tasks FAIL Configure failed 2026-04-21 -CGI::Application::Dispatch FAIL 28 10 18/28 subtests failed 2026-04-21 +CGI::Application::Dispatch FAIL 28 10 18/28 subtests failed 2026-04-27 CGI::Application::Dispatch::Server FAIL Unknown test outcome 2026-04-21 CGI::Application::HelpMan FAIL 4 4 Missing: Pod/Html.pm 2026-04-21 CGI::Application::Plugin::AJAXUpload FAIL 4 0 35/4 subtests failed 2026-04-25 @@ -372,6 +372,7 @@ CGI::Application::Standard::Config FAIL No parseable output 2026-04-22 CGI::Application::Structured FAIL 2 1 1/2 subtests failed 2026-04-21 CGI::ArgChecker FAIL No parseable output 2026-04-22 CGI::Auth FAIL 4 2 2/4 subtests failed 2026-04-12 +CGI::Authent FAIL Unknown test outcome 2026-04-27 CGI::Builder FAIL 5 0 22/5 subtests failed 2026-04-12 CGI::Builder::LogDispatch FAIL Unknown test outcome 2026-04-21 CGI::Bus FAIL No parseable output 2026-04-22 @@ -380,8 +381,8 @@ CGI::Carp::Throw FAIL 39 37 2/39 subtests failed 2026-04-26 CGI::ClientError FAIL No parseable output 2026-04-22 CGI::Compile FAIL 41 0 58/41 subtests failed 2026-04-26 CGI::Compress::Gzip FAIL No parseable output 2026-04-22 -CGI::ContactForm FAIL Syntax error 2026-04-21 -CGI::Cookie::Splitter FAIL 328 326 2/328 subtests failed 2026-04-25 +CGI::ContactForm FAIL Syntax error 2026-04-27 +CGI::Cookie::Splitter FAIL 328 326 2/328 subtests failed 2026-04-27 CGI::Cookie::XS FAIL 2 0 7/2 subtests failed 2026-04-21 CGI::Easy FAIL 2 0 4/2 subtests failed 2026-04-12 CGI::Emulate::PSGI FAIL 39 39 2026-04-26 @@ -392,23 +393,26 @@ CGI::FormBuilder FAIL 467 313 154/467 subtests failed 2026-04-12 CGI::FormBuilder::Template::HTC FAIL 2 0 7/2 subtests failed 2026-04-26 CGI::Graph FAIL Missing: GD.pm 2026-04-26 CGI::Header::Apache2 FAIL No parseable output 2026-04-22 +CGI::Header::Standalone FAIL No parseable output 2026-04-27 CGI::Lite::Request::Apache FAIL No parseable output 2026-04-21 CGI::MultiValuedHash FAIL 1 0 44/1 subtests failed 2026-04-21 +CGI::MxScreen FAIL 2026-04-27 CGI::OptimalQuery FAIL 19 5 14/19 subtests failed 2026-04-21 CGI::Out FAIL Unknown test outcome 2026-04-26 CGI::PSGI FAIL 84 84 2026-04-21 CGI::Path FAIL 2026-04-12 CGI::PathRequest FAIL Missing: File/PathInfo/Ext.pm 2026-04-25 +CGI::Portal FAIL Unknown test outcome 2026-04-27 CGI::PrintWrapper FAIL 16 12 4/16 subtests failed 2026-04-25 CGI::Prototype::Docs::Resources FAIL No parseable output 2026-04-22 CGI::Pure FAIL No parseable output 2026-04-12 -CGI::Session FAIL 751 651 100/751 subtests failed 2026-04-26 +CGI::Session FAIL 585 425 160/585 subtests failed 2026-04-27 CGI::Session::Auth FAIL 1 0 17/1 subtests failed 2026-04-22 CGI::Session::Driver::dbic FAIL No parseable output 2026-04-12 CGI::Session::Driver::flexmysql FAIL No parseable output 2026-04-12 CGI::Session::Driver::layered FAIL 1 0 1/1 subtests failed 2026-04-25 CGI::Session::Driver::redis FAIL 38 31 7/38 subtests failed 2026-04-26 -CGI::Session::ID::sha FAIL 6 0 6/6 subtests failed 2026-04-21 +CGI::Session::ID::sha FAIL 6 0 6/6 subtests failed 2026-04-27 CGI::Session::ODBC FAIL 2 0 36/2 subtests failed 2026-04-22 CGI::Session::SQLite FAIL 1 0 1/1 subtests failed 2026-04-21 CGI::Session::Serialize::Base64 FAIL No parseable output 2026-04-21 @@ -423,7 +427,9 @@ CGI::Untaint::CountyStateProvince::US FAIL No parseable output 2026-04-12 CGI::Untaint::date FAIL 2 0 4/2 subtests failed 2026-04-25 CGI::Untaint::email FAIL 4 3 1/4 subtests failed 2026-04-21 CGI::Upload FAIL 29 0 41/29 subtests failed 2026-04-26 +CGI::Uploader FAIL No parseable output 2026-04-27 CGI::Utils FAIL No parseable output 2026-04-12 +CGI::WebOut FAIL No parseable output 2026-04-27 CGI::Wiki::Formatter::Multiple FAIL 1 1 Missing: CGI/Wiki/Setup/SQLite.pm 2026-04-26 CGI::Wiki::Formatter::UseMod FAIL 1 0 51/1 subtests failed 2026-04-26 CGI::Wiki::Kwiki FAIL Missing: CGI/Wiki/Setup/SQLite.pm 2026-04-26 @@ -522,9 +528,10 @@ Cache::Memory FAIL Configure failed 2026-04-12 Cache::Memory::Simple FAIL 11 8 3/11 subtests failed 2026-04-25 Cache::Ref FAIL 9 0 9/9 subtests failed 2026-04-21 Cairo FAIL 2 0 276/2 subtests failed 2026-04-22 -Carp FAIL 194 120 74/194 subtests failed 2026-04-22 +Carp FAIL Configure failed 2026-04-27 Carp::Assert FAIL 44 42 2/44 subtests failed 2026-04-12 Carp::Clan FAIL 116 58 58/116 subtests failed 2026-04-12 +Carp::Datum FAIL Missing: Getargs/Long.pm 2026-04-27 Carp::Object FAIL 33 31 2/33 subtests failed 2026-04-22 Catalyst::Action::RenderView FAIL 3 1 2/3 subtests failed 2026-04-21 Catalyst::Authentication::Store::DBIx::Class FAIL 1 1 Missing: Moose.pm 2026-04-21 @@ -1207,7 +1214,7 @@ File::RotateLogs FAIL 1 0 1/1 subtests failed 2026-04-25 File::Rules FAIL 3 0 14/3 subtests failed 2026-04-22 File::ShareDir::Tarball FAIL 2 2 2026-04-22 File::SortedSeek::PERLANCAR FAIL 4 2 2/4 subtests failed 2026-04-21 -File::Spec FAIL Missing: Test2/Util/Trace.pm 2026-04-22 +File::Spec FAIL Configure failed 2026-04-27 File::Sync FAIL 2026-04-12 File::Tail FAIL Unknown test outcome 2026-04-21 File::Temp FAIL Configure failed 2026-04-21 @@ -1267,6 +1274,7 @@ Geo::Coordinates::Converter FAIL 1 1 Syntax error 2026-04-26 Geo::Gpx FAIL 6 0 108/6 subtests failed 2026-04-26 Geo::IP FAIL Configure failed 2026-04-12 Geoffrey FAIL 320 220 100/320 subtests failed 2026-04-25 +Getargs::Long FAIL 2026-04-27 Getopt::Euclid FAIL 39 1 38/39 subtests failed 2026-04-22 Getopt::Long::Util FAIL 2 1 1/2 subtests failed 2026-04-22 Git::Raw FAIL 2026-04-22 @@ -1442,7 +1450,7 @@ HTTPx::Dispatcher FAIL 3 3 Syntax error 2026-04-26 HTTunnel::Client FAIL Configure failed 2026-04-21 Hardware FAIL Missing: Object/Pad.pm 2026-04-21 Hash::AsObject FAIL 93 93 Missing: diagnostics.pm 2026-04-12 -Hash::FieldHash FAIL Configure failed 2026-04-12 +Hash::FieldHash FAIL Configure failed 2026-04-27 Hash::Objectify FAIL 1 1 2026-04-21 Hash::Ordered FAIL 106 106 StackOverflowError 2026-04-12 Hash::StoredIterator FAIL Build failed 2026-04-21 @@ -1638,12 +1646,13 @@ Locale::gettext FAIL Configure failed 2026-04-21 LockFile::NetLock FAIL Configure failed 2026-04-22 LockFile::Simple FAIL Missing: LockFile/Lock/Simple.pm 2026-04-21 Log::Agent FAIL 8 0 123/8 subtests failed 2026-04-21 +Log::Agent::Logger FAIL Missing: Getargs/Long.pm 2026-04-27 Log::Any FAIL 456 417 39/456 subtests failed 2026-04-12 Log::Any::Adapter::MojoLog FAIL 2026-04-22 Log::Any::Plugin FAIL 76 70 6/76 subtests failed 2026-04-22 Log::Contextual FAIL 349 348 1/349 subtests failed 2026-04-21 Log::Dispatchouli FAIL 58 57 1/58 subtests failed 2026-04-21 -Log::Handler FAIL 186 183 3/186 subtests failed 2026-04-21 +Log::Handler FAIL 2026-04-27 Log::Log4perl FAIL Unknown test outcome 2026-04-12 Log::Log4perl::Tiny FAIL 314 214 100/314 subtests failed 2026-04-21 Log::Sprintf FAIL 2026-04-12 @@ -2283,6 +2292,7 @@ Proc::CPUUsage FAIL 1 0 1/1 subtests failed 2026-04-22 Proc::ChildError FAIL 7 6 1/7 subtests failed 2026-04-25 Proc::Daemon FAIL 1 0 38/1 subtests failed 2026-04-21 Proc::FastSpawn FAIL 2026-04-12 +Proc::Fork FAIL Configure failed 2026-04-27 Proc::Guard FAIL 1 0 1/1 subtests failed 2026-04-12 Proc::Wait3 FAIL 2026-04-21 Progress::Any::Output::TermProgressBarColor FAIL 2026-04-21 @@ -2615,7 +2625,7 @@ Test::Class::Moose FAIL Unknown test outcome 2026-04-21 Test::Class::Most FAIL 2026-04-21 Test::CleanNamespaces FAIL 134 119 15/134 subtests failed 2026-04-12 Test::Command FAIL 118 104 14/118 subtests failed 2026-04-26 -Test::Compile FAIL 79 66 13/79 subtests failed 2026-04-26 +Test::Compile FAIL 79 66 13/79 subtests failed 2026-04-27 Test::Compile::Internal FAIL 79 66 13/79 subtests failed 2026-04-22 Test::Consul FAIL 1 0 1/1 subtests failed 2026-04-22 Test::DBIC::ExpectedQueries FAIL 3 3 2026-04-22 @@ -2656,7 +2666,7 @@ Test::MockObject FAIL 103 0 136/103 subtests failed 2026-04-12 Test::MockTime::HiRes FAIL 216 209 7/216 subtests failed 2026-04-26 Test::Mojibake FAIL 55 45 10/55 subtests failed 2026-04-26 Test::Moose FAIL Configure failed 2026-04-26 -Test::More FAIL 31 31 2026-04-22 +Test::More FAIL Configure failed 2026-04-27 Test::Net::RabbitMQ FAIL 2 1 1/2 subtests failed 2026-04-25 Test::OpenTracing::Interface FAIL Configure failed 2026-04-21 Test::PAUSE::Permissions FAIL 1 0 1/1 subtests failed 2026-04-26 @@ -2748,7 +2758,7 @@ Toto FAIL TIMEOUT (>300s) 2026-04-25 Tree::XPathEngine FAIL 158 157 1/158 subtests failed 2026-04-22 Triceps FAIL No parseable output 2026-04-26 TripleStore FAIL No parseable output 2026-04-26 -Try::Tiny FAIL 97 94 3/97 subtests failed 2026-04-22 +Try::Tiny FAIL Configure failed 2026-04-27 Tui FAIL No parseable output 2026-04-22 Type::Tiny::XS FAIL 76 0 118/76 subtests failed 2026-04-26 Types::Core FAIL 8 0 11/8 subtests failed 2026-04-25 @@ -3075,4 +3085,5 @@ threads FAIL 1 0 1/1 subtests failed 2026-04-22 threads::shared FAIL 80 80 2026-04-12 utf8::all FAIL 4 0 40/4 subtests failed 2026-04-22 version FAIL 430 394 36/430 subtests failed 2026-04-21 +warnings FAIL Build failed 2026-04-27 warnings::illegalproto FAIL 6 4 2/6 subtests failed 2026-04-22 diff --git a/dev/cpan-reports/cpan-compatibility-pass.dat b/dev/cpan-reports/cpan-compatibility-pass.dat index 2ed47418d..501fbf8bb 100644 --- a/dev/cpan-reports/cpan-compatibility-pass.dat +++ b/dev/cpan-reports/cpan-compatibility-pass.dat @@ -92,7 +92,7 @@ CAM::PDF PASS 215 215 2026-04-25 1d5def215 CCCP::SQLiteWrap PASS 1 1 2026-04-26 1d5def215 CDDB::File PASS 36 36 2026-04-26 1d5def215 CDR::Parser::SI3000 PASS 17 17 2026-04-12 c1942aad0 -CGI::Application PASS 190 190 2026-04-26 1d5def215 +CGI::Application PASS 190 190 2026-04-27 12fb0165d CGI::Application::Plugin::AbstractCallback PASS 2 2 2026-04-12 cc5efa220 CGI::Application::Plugin::Config::Any PASS 9 9 2026-04-25 1d5def215 CGI::Application::Plugin::ConfigAuto PASS 12 12 2026-04-21 3f3336774 @@ -105,6 +105,7 @@ CGI::Application::Plugin::LogDispatch PASS 25 25 2026-04-21 3f3336774 CGI::Application::Plugin::MessageStack PASS 9 9 2026-04-12 c1942aad0 CGI::Application::Plugin::Redirect PASS 9 9 2026-04-21 3f3336774 CGI::Application::Plugin::SuperForm PASS 9 9 2026-04-21 3f3336774 +CGI::Application::Plugin::View::HTML::Template PASS 2 2 2026-04-27 12fb0165d CGI::Auth::Auto PASS 1 1 2026-04-12 c1942aad0 CGI::BrowserDetect PASS 5 5 2026-04-21 3f3336774 CGI::FormBuilder::Mail::FormatMultiPart PASS 21 21 2026-04-21 3f3336774 diff --git a/dev/cpan-reports/cpan-compatibility.md b/dev/cpan-reports/cpan-compatibility.md index 576ecdc74..2e2690a89 100644 --- a/dev/cpan-reports/cpan-compatibility.md +++ b/dev/cpan-reports/cpan-compatibility.md @@ -1,6 +1,6 @@ # CPAN Module Compatibility Report for PerlOnJava -> Auto-generated by `dev/tools/cpan_random_tester.pl` on 2026-04-27 10:35:03 +> Auto-generated by `dev/tools/cpan_random_tester.pl` on 2026-04-27 16:02:10 > > Modules are randomly selected from the full CPAN index and tested > with `./jcpan -t`. Dependencies are tested too; every module that @@ -10,9 +10,9 @@ | Metric | Count | |--------|-------| -| **Modules Tested** | 4139 | -| **Pass** | 1061 (25.6%) | -| **Fail** | 3078 | +| **Modules Tested** | 4151 | +| **Pass** | 1062 (25.6%) | +| **Fail** | 3089 | | **Skipped (XS-only)** | 0 | ## Modules That Pass All Tests @@ -113,7 +113,7 @@ | CCCP::SQLiteWrap | 1 | 2026-04-26 | 1d5def215 | | CDDB::File | 36 | 2026-04-26 | 1d5def215 | | CDR::Parser::SI3000 | 17 | 2026-04-12 | c1942aad0 | -| CGI::Application | 190 | 2026-04-26 | 1d5def215 | +| CGI::Application | 190 | 2026-04-27 | 12fb0165d | | CGI::Application::Plugin::AbstractCallback | 2 | 2026-04-12 | cc5efa220 | | CGI::Application::Plugin::Config::Any | 9 | 2026-04-25 | 1d5def215 | | CGI::Application::Plugin::ConfigAuto | 12 | 2026-04-21 | 3f3336774 | @@ -126,6 +126,7 @@ | CGI::Application::Plugin::MessageStack | 9 | 2026-04-12 | c1942aad0 | | CGI::Application::Plugin::Redirect | 9 | 2026-04-21 | 3f3336774 | | CGI::Application::Plugin::SuperForm | 9 | 2026-04-21 | 3f3336774 | +| CGI::Application::Plugin::View::HTML::Template | 2 | 2026-04-27 | 12fb0165d | | CGI::Auth::Auto | 1 | 2026-04-12 | c1942aad0 | | CGI::BrowserDetect | 5 | 2026-04-21 | 3f3336774 | | CGI::FormBuilder::Mail::FormatMultiPart | 21 | 2026-04-21 | 3f3336774 | @@ -1083,7 +1084,7 @@ ## Modules That Fail Tests -### Configure Failed (296 modules) +### Configure Failed (301 modules) | Module | Pass/Total | Error | Date | |--------|-----------|-------|------| @@ -1164,6 +1165,7 @@ | Cache::File | | Configure failed | 2026-04-12 | | Cache::LRU | | Configure failed | 2026-04-12 | | Cache::Memory | | Configure failed | 2026-04-12 | +| Carp | | Configure failed | 2026-04-27 | | CatalystX::Imports::Context | | Configure failed | 2026-04-12 | | CatalystX::OAuth2::Provider | | Configure failed | 2026-04-12 | | CatalystX::Plugin::Blurb | | Configure failed | 2026-04-12 | @@ -1217,6 +1219,7 @@ | FarmBalance | | Configure failed | 2026-04-12 | | File::FcntlLock | | Configure failed | 2026-04-21 | | File::LibMagic | | Configure failed | 2026-04-26 | +| File::Spec | | Configure failed | 2026-04-27 | | File::Temp | | Configure failed | 2026-04-21 | | FindBin::libs | | Configure failed | 2026-04-22 | | GD | | Configure failed | 2026-04-26 | @@ -1238,7 +1241,7 @@ | HTTP::Online | | Configure failed | 2026-04-22 | | HTTP::Parser::XS | | Configure failed | 2026-04-26 | | HTTunnel::Client | | Configure failed | 2026-04-21 | -| Hash::FieldHash | | Configure failed | 2026-04-12 | +| Hash::FieldHash | | Configure failed | 2026-04-27 | | IO::AIO | | Configure failed | 2026-04-26 | | IO::Async | | Configure failed | 2026-04-26 | | IO::Async::File | | Configure failed | 2026-04-22 | @@ -1321,6 +1324,7 @@ | Pg::PQ | | Configure failed | 2026-04-12 | | PiFlash | | Configure failed | 2026-04-25 | | PrefixCompiler | | Configure failed | 2026-04-25 | +| Proc::Fork | | Configure failed | 2026-04-27 | | Qstruct | | Configure failed | 2026-04-26 | | RDF::Query::Functions::Buzzword::Util | | Configure failed | 2026-04-22 | | RDF::RDFa::Parser | | Configure failed | 2026-04-26 | @@ -1341,12 +1345,14 @@ | Tangram | | Configure failed | 2026-04-21 | | Term::ReadLine::Gnu | | Configure failed | 2026-04-26 | | Test::Moose | | Configure failed | 2026-04-26 | +| Test::More | | Configure failed | 2026-04-27 | | Test::OpenTracing::Interface | | Configure failed | 2026-04-21 | | Text::ANSI::Util | | Configure failed | 2026-04-21 | | Text::Iconv | | Configure failed | 2026-04-26 | | Time::HiRes | | Configure failed | 2026-04-26 | | Tk | | Configure failed | 2026-04-26 | | Tk::JPEG | | Configure failed | 2026-04-25 | +| Try::Tiny | | Configure failed | 2026-04-27 | | UI::Various | | Configure failed | 2026-04-26 | | UID2::Client::XS | | Configure failed | 2026-04-25 | | UNIX::Cal | | Configure failed | 2026-04-12 | @@ -1384,7 +1390,7 @@ | mod_perl2 | | Configure failed | 2026-04-27 | | next::XS | | Configure failed | 2026-04-26 | -### Missing Dependencies (259 modules) +### Missing Dependencies (260 modules) | Module | Pass/Total | Error | Date | |--------|-----------|-------|------| @@ -1439,6 +1445,7 @@ | CHI::Driver::Redis::SortedSet | | Missing: CHI/Driver/Redis/t/CHIDriverTests.pm | 2026-04-25 | | CHI::Memoize | | Missing: Test/Class/Most.pm | 2026-04-21 | | CPAN::Mini::Inject | | Missing: CPAN/Checksums.pm | 2026-04-21 | +| Carp::Datum | | Missing: Getargs/Long.pm | 2026-04-27 | | Catalyst::Authentication::Store::DBIx::Class | 1/1 | Missing: Moose.pm | 2026-04-21 | | Catalyst::Component::InstancePerContext | | Missing: Moose.pm | 2026-04-21 | | Catalyst::Controller::AutoAssets | 9/9 | Missing: Moose.pm | 2026-04-21 | @@ -1490,7 +1497,6 @@ | FCGI::ProcManager::Dynamic | | Missing: IPC/SysV.pm | 2026-04-12 | | File::PathInfo | 6/6 | Missing: Time/Format.pm | 2026-04-25 | | File::PathInfo::Ext | 1/1 | Missing: File/PathInfo.pm | 2026-04-25 | -| File::Spec | | Missing: Test2/Util/Trace.pm | 2026-04-22 | | Font::Metrics::Courier | 2/2 | Missing: Font/AFM.pm | 2026-04-12 | | GCT::XSP::ActionTaglib | | Missing: Apache/AxKit/Language/XSP.pm | 2026-04-25 | | GD::3DBarGrapher | | Missing: GD.pm | 2026-04-26 | @@ -1527,6 +1533,7 @@ | JavaScript::QuickJS | | Missing: common/sense.pm | 2026-04-25 | | Keyword::Declare | | Missing: Keyword/Simple.pm | 2026-04-26 | | LockFile::Simple | | Missing: LockFile/Lock/Simple.pm | 2026-04-21 | +| Log::Agent::Logger | | Missing: Getargs/Long.pm | 2026-04-27 | | MAIN | | Missing: PBJ/JNI/Native.pm | 2026-04-22 | | MarpaX::Repa | | Missing: Marpa/R2.pm | 2026-04-25 | | MarpaX::Simple::Rules | | Missing: Marpa/XS.pm | 2026-04-22 | @@ -1648,7 +1655,7 @@ | common::sense | | Missing: common/sense.pm | 2026-04-26 | | self | | Missing: B/Hooks/Parser.pm | 2026-04-22 | -### Other (748 modules) +### Other (757 modules) | Module | Pass/Total | Error | Date | |--------|-----------|-------|------| @@ -1756,6 +1763,7 @@ | CGI::Application::Search | | No parseable output | 2026-04-22 | | CGI::Application::Standard::Config | | No parseable output | 2026-04-22 | | CGI::ArgChecker | | No parseable output | 2026-04-22 | +| CGI::Authent | | Unknown test outcome | 2026-04-27 | | CGI::Builder::LogDispatch | | Unknown test outcome | 2026-04-21 | | CGI::Bus | | No parseable output | 2026-04-22 | | CGI::ClientError | | No parseable output | 2026-04-22 | @@ -1763,9 +1771,12 @@ | CGI::EncryptForm | | | 2026-04-12 | | CGI::Enurl | | Unknown test outcome | 2026-04-21 | | CGI::Header::Apache2 | | No parseable output | 2026-04-22 | +| CGI::Header::Standalone | | No parseable output | 2026-04-27 | | CGI::Lite::Request::Apache | | No parseable output | 2026-04-21 | +| CGI::MxScreen | | | 2026-04-27 | | CGI::Out | | Unknown test outcome | 2026-04-26 | | CGI::Path | | | 2026-04-12 | +| CGI::Portal | | Unknown test outcome | 2026-04-27 | | CGI::Prototype::Docs::Resources | | No parseable output | 2026-04-22 | | CGI::Pure | | No parseable output | 2026-04-12 | | CGI::Session::Driver::dbic | | No parseable output | 2026-04-12 | @@ -1775,7 +1786,9 @@ | CGI::Shorten | | | 2026-04-25 | | CGI::Snapp::Demo::Three | | No parseable output | 2026-04-12 | | CGI::Untaint::CountyStateProvince::US | | No parseable output | 2026-04-12 | +| CGI::Uploader | | No parseable output | 2026-04-27 | | CGI::Utils | | No parseable output | 2026-04-12 | +| CGI::WebOut | | No parseable output | 2026-04-27 | | CGI::remote_addr | | No parseable output | 2026-04-12 | | CGIS | | No parseable output | 2026-04-12 | | CGI_Lite | | Unknown test outcome | 2026-04-22 | @@ -1995,6 +2008,7 @@ | GPS::Garmin::Connect | | No parseable output | 2026-04-22 | | GSM::Gnokii | | No parseable output | 2026-04-22 | | GenericSHIB | | No parseable output | 2026-04-22 | +| Getargs::Long | | | 2026-04-27 | | Git::Raw | | | 2026-04-22 | | GitHub::Extract | | No parseable output | 2026-04-22 | | Gitalist | | No parseable output | 2026-04-22 | @@ -2077,6 +2091,7 @@ | List::MoreUtils | | Unknown test outcome | 2026-04-12 | | List::UtilsBy | | Unknown test outcome | 2026-04-26 | | Log::Any::Adapter::MojoLog | | | 2026-04-22 | +| Log::Handler | | | 2026-04-27 | | Log::Log4perl | | Unknown test outcome | 2026-04-12 | | Log::Sprintf | | | 2026-04-12 | | Luminary | | No parseable output | 2026-04-21 | @@ -2400,6 +2415,7 @@ | autobox::Core | | | 2026-04-12 | | bigint | | Unknown test outcome | 2026-04-12 | | routines | | | 2026-04-21 | +| warnings | | Build failed | 2026-04-27 | ### PerlOnJava Limits (10 modules) @@ -2429,7 +2445,7 @@ | Module | Pass/Total | Error | Date | |--------|-----------|-------|------| | Argv | | Syntax error | 2026-04-21 | -| CGI::ContactForm | | Syntax error | 2026-04-21 | +| CGI::ContactForm | | Syntax error | 2026-04-27 | | CPAN::Plugin::Sysdeps | 41/41 | Syntax error | 2026-04-21 | | Class::MethodMaker | | Syntax error | 2026-04-26 | | ClearCase::Argv | | Syntax error | 2026-04-26 | @@ -2446,7 +2462,7 @@ | Search::Elasticsearch | 4/4 | Syntax error | 2026-04-21 | | Switch | | Syntax error | 2026-04-12 | -### Test Failures (1701 modules) +### Test Failures (1697 modules) | Module | Pass/Total | Error | Date | |--------|-----------|-------|------| @@ -2584,7 +2600,7 @@ | C::Scan::Constants | 17/21 | 4/21 subtests failed | 2026-04-25 | | CCCP::ConfigXML | 1/3 | 2/3 subtests failed | 2026-04-26 | | CDB_File_Thawed | 0/10 | 36/10 subtests failed | 2026-04-25 | -| CGI::Application::Dispatch | 10/28 | 18/28 subtests failed | 2026-04-21 | +| CGI::Application::Dispatch | 10/28 | 18/28 subtests failed | 2026-04-27 | | CGI::Application::Plugin::AJAXUpload | 0/4 | 35/4 subtests failed | 2026-04-25 | | CGI::Application::Plugin::AutoRunmode | 71/74 | 3/74 subtests failed | 2026-04-12 | | CGI::Application::Plugin::CHI | 0/12 | 42/12 subtests failed | 2026-04-26 | @@ -2604,7 +2620,7 @@ | CGI::Capture | 13/14 | 1/14 subtests failed | 2026-04-12 | | CGI::Carp::Throw | 37/39 | 2/39 subtests failed | 2026-04-26 | | CGI::Compile | 0/41 | 58/41 subtests failed | 2026-04-26 | -| CGI::Cookie::Splitter | 326/328 | 2/328 subtests failed | 2026-04-25 | +| CGI::Cookie::Splitter | 326/328 | 2/328 subtests failed | 2026-04-27 | | CGI::Cookie::XS | 0/2 | 7/2 subtests failed | 2026-04-21 | | CGI::Easy | 0/2 | 4/2 subtests failed | 2026-04-12 | | CGI::Emulate::PSGI | 39/39 | | 2026-04-26 | @@ -2615,11 +2631,11 @@ | CGI::OptimalQuery | 5/19 | 14/19 subtests failed | 2026-04-21 | | CGI::PSGI | 84/84 | | 2026-04-21 | | CGI::PrintWrapper | 12/16 | 4/16 subtests failed | 2026-04-25 | -| CGI::Session | 651/751 | 100/751 subtests failed | 2026-04-26 | +| CGI::Session | 425/585 | 160/585 subtests failed | 2026-04-27 | | CGI::Session::Auth | 0/1 | 17/1 subtests failed | 2026-04-22 | | CGI::Session::Driver::layered | 0/1 | 1/1 subtests failed | 2026-04-25 | | CGI::Session::Driver::redis | 31/38 | 7/38 subtests failed | 2026-04-26 | -| CGI::Session::ID::sha | 0/6 | 6/6 subtests failed | 2026-04-21 | +| CGI::Session::ID::sha | 0/6 | 6/6 subtests failed | 2026-04-27 | | CGI::Session::ODBC | 0/2 | 36/2 subtests failed | 2026-04-22 | | CGI::Session::SQLite | 0/1 | 1/1 subtests failed | 2026-04-21 | | CGI::Simple::Cookie | 0/181 | 702/181 subtests failed | 2026-04-12 | @@ -2668,7 +2684,6 @@ | Cache::Memory::Simple | 8/11 | 3/11 subtests failed | 2026-04-25 | | Cache::Ref | 0/9 | 9/9 subtests failed | 2026-04-21 | | Cairo | 0/2 | 276/2 subtests failed | 2026-04-22 | -| Carp | 120/194 | 74/194 subtests failed | 2026-04-22 | | Carp::Assert | 42/44 | 2/44 subtests failed | 2026-04-12 | | Carp::Clan | 58/116 | 58/116 subtests failed | 2026-04-12 | | Carp::Object | 31/33 | 2/33 subtests failed | 2026-04-22 | @@ -3306,7 +3321,6 @@ | Log::Any::Plugin | 70/76 | 6/76 subtests failed | 2026-04-22 | | Log::Contextual | 348/349 | 1/349 subtests failed | 2026-04-21 | | Log::Dispatchouli | 57/58 | 1/58 subtests failed | 2026-04-21 | -| Log::Handler | 183/186 | 3/186 subtests failed | 2026-04-21 | | Log::Log4perl::Tiny | 214/314 | 100/314 subtests failed | 2026-04-21 | | Log::Structured | 11/13 | 2/13 subtests failed | 2026-04-12 | | MARC::Batch | 1009/1013 | 4/1013 subtests failed | 2026-04-26 | @@ -3854,7 +3868,7 @@ | Test::Class | 159/173 | 14/173 subtests failed | 2026-04-12 | | Test::CleanNamespaces | 119/134 | 15/134 subtests failed | 2026-04-12 | | Test::Command | 104/118 | 14/118 subtests failed | 2026-04-26 | -| Test::Compile | 66/79 | 13/79 subtests failed | 2026-04-26 | +| Test::Compile | 66/79 | 13/79 subtests failed | 2026-04-27 | | Test::Compile::Internal | 66/79 | 13/79 subtests failed | 2026-04-22 | | Test::Consul | 0/1 | 1/1 subtests failed | 2026-04-22 | | Test::DBIC::ExpectedQueries | 3/3 | | 2026-04-22 | @@ -3889,7 +3903,6 @@ | Test::MockObject | 0/103 | 136/103 subtests failed | 2026-04-12 | | Test::MockTime::HiRes | 209/216 | 7/216 subtests failed | 2026-04-26 | | Test::Mojibake | 45/55 | 10/55 subtests failed | 2026-04-26 | -| Test::More | 31/31 | | 2026-04-22 | | Test::Net::RabbitMQ | 1/2 | 1/2 subtests failed | 2026-04-25 | | Test::PAUSE::Permissions | 0/1 | 1/1 subtests failed | 2026-04-26 | | Test::Pod::Coverage | 0/9 | 20/9 subtests failed | 2026-04-12 | @@ -3950,7 +3963,6 @@ | TkUtil::Configure | 1/2 | 1/2 subtests failed | 2026-04-26 | | Toader | 0/1 | 1/1 subtests failed | 2026-04-22 | | Tree::XPathEngine | 157/158 | 1/158 subtests failed | 2026-04-22 | -| Try::Tiny | 94/97 | 3/97 subtests failed | 2026-04-22 | | Type::Tiny::XS | 0/76 | 118/76 subtests failed | 2026-04-26 | | Types::Core | 0/8 | 11/8 subtests failed | 2026-04-25 | | Types::Encodings | 58/61 | 3/61 subtests failed | 2026-04-26 | diff --git a/src/main/java/org/perlonjava/core/Configuration.java b/src/main/java/org/perlonjava/core/Configuration.java index d384ad08f..7006b264d 100644 --- a/src/main/java/org/perlonjava/core/Configuration.java +++ b/src/main/java/org/perlonjava/core/Configuration.java @@ -33,7 +33,7 @@ public final class Configuration { * Automatically populated by Gradle/Maven during build. * DO NOT EDIT MANUALLY - this value is replaced at build time. */ - public static final String gitCommitId = "f27354c29"; + public static final String gitCommitId = "cbde1aacd"; /** * Git commit date of the build (ISO format: YYYY-MM-DD). @@ -48,7 +48,7 @@ public final class Configuration { * Parsed by App::perlbrew and other tools via: perl -V | grep "Compiled at" * DO NOT EDIT MANUALLY - this value is replaced at build time. */ - public static final String buildTimestamp = "Apr 27 2026 14:27:22"; + public static final String buildTimestamp = "Apr 27 2026 16:05:36"; // Prevent instantiation private Configuration() {