Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

FileHandle cannot resolve IO::Seekable::getpos while loading DBG

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

メンテナーはふだん 1 日以内に返信

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

評価

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

調査の方向性

Start with the bundled FileHandle.pm, especially the IO::Seekable::getpos lookup near line 72, and trace where the IO::Seekable package is initialized. Reproduce with t/00-compile.t and t/basic.t, then add the focused FileHandle/DBG loading regression test requested in the issue. Verify the test with system Perl first and on both PerlOnJava backends, with Devel::Size available.

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

説明

area:io area:runtime bug

Summary

DBG 0.4.1 fails to load under PerlOnJava because bundled FileHandle.pm cannot find IO::Seekable::getpos. This causes both t/00-compile.t and t/basic.t to fail before DBG's tests can run.

Reproduction

Install/run GSG/DBG-v0.4.1.tar.gz through the CPAN tester, including its normal test prerequisites. The failure was recorded in CPAN random tester run 20261022-185222-43282.

The relevant failure is:

# Failed test 'DBG.pm loaded ok'
IO::Seekable::getpos missing at jar:PERL5LIB/FileHandle.pm line 72.
Compilation failed in require

The same diagnostic occurs when t/basic.t loads DBG.pm. The archived PerlOnJava run reports 2 of 6 test programs failed and 1 of 2 executed assertions failed. The three release-only tests are skipped.

Expected: IO::Seekable::getpos is available while FileHandle.pm initializes, and DBG loads.

Actual: loading aborts because the IO::Seekable package has no registered getpos method at that point.

Environment and comparison

  • Distribution: DBG 0.4.1 (GSG/DBG-v0.4.1.tar.gz)
  • PerlOnJava: JVM backend via the CPAN tester; the archived log does not record its source commit. Interpreter backend: not tested.
  • Java: OpenJDK 24.0.2, aarch64
  • System Perl: 5.42.2
  • System Perl t/basic.t: passes after building the exact Devel::Size 0.87 prerequisite locally.
  • Full system-Perl suite: not confirmed. t/00-compile.t could not open DBG's temporary log file in the sandbox (Operation not permitted), so that result is an environment/setup failure rather than evidence of a DBG failure.

The XS prerequisite Devel::Size was missing its native object in the PerlOnJava CPAN build, but the reported failure occurs independently at IO::Seekable::getpos during module loading. The failure points to PerlOnJava's bundled IO module initialization/method availability.

Related issues checked

  • #1782 covers UNIVERSAL::isa ignoring the IO parent for IO references; it is closed and describes a different behavior.
  • #1216 covers Template::Like filehandle input and scalar output; it is unrelated.

Acceptance criteria

  • FileHandle.pm can resolve IO::Seekable::getpos when loading on both PerlOnJava backends.
  • Add a focused project-owned regression test for loading FileHandle/DBG and verify it with system Perl first.
  • The DBG 0.4.1 upstream test suite passes on both PerlOnJava backends when its prerequisites are available.
主要言語
Perl
スター
64
フォーク
8
平均マージ
5時間 47分
マージ済み PR(30日)
197

環境構築

はじめの一歩

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

fglock/PerlOnJava のほかの issue

fglock/PerlOnJava の issue をすべて見る

似ている issue

Perl の issue をもっと見る

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

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