Compression::Util v0.18 times out from repeated signature/@_ warnings

オープン
#1,422 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
45/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
perl
領域
compilers

調査の方向性

まず、PerlOnJava 上で Compression::Util v0.18 の CPAN テストのタイムアウトを再現し、その警告出力を標準 Perl のオラクルと比較します。シグネチャ付きサブルーチン内の @_ に対する警告の分類と出力を、警告が繰り返される場合のオーバーヘッドも含めて調査します。標準 Perl の警告動作を維持したまま、スイートが妥当な時間内に完了すれば完了です。

索引モデルが issue の本文から書いたものです。

説明

area:cpan-port area:performance area:warnings bug

Summary

The Compression::Util v0.18 CPAN test times out on PerlOnJava because the runtime emits an extremely large number of repeated warnings while compiling/executing the module:

Use of @_ in subroutine entry with signatured subroutine is experimental

The standard Perl test suite is the behavioral source of truth and passes completely.

Reproduction

In CPAN random tester run 20260916-111623-23683, Compression::Util v0.18:

  • Build.PL and Build succeed on PerlOnJava.
  • The test run reaches the module test phase but produces thousands of repeated experimental::args_array_with_signatures warnings.
  • The tester aborts after the 120-second soft limit because there has been no test output for 60 seconds.
  • No Compression::Util assertion failure is reported.

The affected module is pure Perl. The behavior was observed with both the JVM and interpreter backends when loading the module.

Standard Perl oracle

Using the unmodified CPAN distribution and ordinary system Perl:

  • 49 test files ran.
  • 1,054 tests passed.
  • The only skipped test was optional POD coverage requiring Test::Pod::Coverage.
  • Result: PASS.

Therefore standard Perl behavior—not the warning-heavy PerlOnJava run—is the compatibility target.

Expected behavior

PerlOnJava should match standard Perl's warning semantics and complete the Compression::Util test suite within a reasonable time. In particular, repeated warnings for the same source constructs should not turn a passing pure-Perl suite into a timeout.

Additional evidence

The same Compression::Util timeout is present in the project's CPAN compatibility report dated 2026-08-29, so this appears recurrent rather than a one-off tester timeout.

Please investigate warning classification/emission for @_ use in signatured subroutines, including warning deduplication or excessive diagnostic overhead. The fix should preserve the warning behavior required by standard Perl.

主要言語
Perl
スター
64
フォーク
6
平均マージ
5時間 25分
マージ済み PR(30日)
157

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

fglock/PerlOnJava のほかの issue

fglock/PerlOnJava の issue をすべて見る

似ている issue

Perl の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。