[CPAN] Mock-Quick 1.111 fails t/Util.t and t/object_control.t

Aberta
#2,021 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
54/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
java, perl
Domínio
compilers, testing

Direção de pesquisa

Start by reproducing the failures in t/Util.t and t/object_control.t on both PerlOnJava backends, then compare their behavior with the system Perl 5.42.2 results described in the issue. Trace the JVM qw parse failure, the interpreter exportability check, and the JVM object-control failure to their separate causes. Done means the upstream tests pass on both backends with the expected Perl behavior.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

area:backend area:cpan-port area:parser area:runtime bug

Summary

Mock-Quick 1.111 fails its upstream test suite on PerlOnJava, although the archived system Perl oracle passes all tests. The focused failures differ by backend: the JVM backend cannot compile t/Util.t and fails t/object_control.t; the interpreter executes t/Util.t but fails an exportability check, while t/object_control.t passes.

This is based on CPAN random tester run 20261109-091152-39587 and a focused reproduction on PerlOnJava commit 7925f28d1 (fix/anchored-regex-and-scalar-concat). The distribution and its prerequisites are pure Perl; no native-code or external service prerequisite was involved.

Evidence

  • System Perl oracle: Mock-Quick 1.111 passed all 10 test programs and 174 tests. The archived oracle used Homebrew Perl 5.42.2 on macOS 26.7.1, with Temurin OpenJDK 24.0.2 available in the environment.
  • JVM backend: t/Util.t exits during parsing at line 12 with Not implemented: LexerToken{type=IDENTIFIER, text='qw'}, near qw/Mock. t/object_control.t fails its basic test group at line 34 with Can't locate object method "call" in this instance.
  • Interpreter backend: t/Util.t runs but fails main->can(...) (test 3); t/object_control.t passes all 13 tests.
  • Archived CPAN result: the target record is FAIL, 143/144 subtests passed, with 2/10 test programs failing. Missing prerequisites were installed during the run: Exporter::Declare 0.114, Fennec::Lite 0.004, Meta::Builder 0.004, and aliased 0.34. The standalone system Perl oracle later completed all target and prerequisite suites successfully.

Reproduction

Install Mock-Quick 1.111 and its declared prerequisites, then run its upstream test suite with each backend. The two stable failing files are t/Util.t and t/object_control.t; the interpreter/JVM outcomes are listed above. The complete upstream suite passes under system Perl 5.42.2.

Expected behavior

Mock-Quick's upstream tests should pass on both PerlOnJava backends, matching standard Perl for these valid import, qw//, and object-control behaviors.

Please investigate the parser failure, the interpreter exportability mismatch, and the JVM object-control failure. These may have separate causes; split into focused issues if they do.

Linguagem predominante
Perl
Estrelas
67
Forks
8
Merge médio
6h 14min
PRs com merge (30d)
143

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de fglock/PerlOnJava

Todas as issues de fglock/PerlOnJava

Issues semelhantes

Mais issues de Perl

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.