Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Valiemon 0.05 fails boolean, nested-schema, and dynamic-loading tests on both backends

Aperta
#1,419 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
42/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
java, perl
Ambito
backend, compilers

Direzione di ricerca

Inizia eseguendo i casi mirati in t/01-attr-primitives.t, t/02-attr-required.t, t/03-attr-format.t e t/03-attr-oneOf.t su entrambi i backend. Traccia la gestione condivisa a runtime dei booleani di Types::Serialiser, degli schemi senza properties, degli schemi oneOf annidati e del caricamento di Valiemon::Attributes::Format. Il lavoro è completato quando tutti i 25 file di test upstream e i 142 test passano su entrambi i backend, con una copertura di regressione mirata per questi errori.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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

Summary

Valiemon v0.05 fails six upstream subtests under PerlOnJava even though its complete upstream suite passes under system Perl. The failures reproduce on both the JVM and interpreter backends and cover boolean classification, nested schema properties, dynamic attribute loading, and oneOf validation.

Observed in CPAN random tester run 20260916-111623-23683.

Reproduction results

  • System Perl 5.42.2: all 25 test files and 142 tests pass.
  • PerlOnJava JVM backend: the archived run reports 6 failed subtests; focused reruns reproduce the failures.
  • PerlOnJava interpreter backend: the same focused failures reproduce.

The affected upstream tests are:

  • t/01-attr-primitives.t
  • t/02-attr-required.t
  • t/03-attr-format.t
  • t/03-attr-oneOf.t

Most of the remaining suite passes, including context, validator, type, collection, reference, draft, and other attribute tests.

Observed failures

Boolean classification

is_boolean and is_boolean_perl reject boolean values supplied by Types::Serialiser, including the values tested through Types::Serialiser::true and Types::Serialiser::false. The failures are present on both backends. The suite's TODO checks for weak numeric typing are separate from these non-TODO failures.

Required schemas and nested properties

t/02-attr-required.t aborts while validating a schema that has required but no properties member:

`properties` must be an object at /properties

The same error appears in t/03-attr-oneOf.t for a nested schema with properties, reported at /oneOf/properties. This points to incorrect nested-hash dereference/autovivification or schema handling in the shared runtime. The upstream implementation behaves correctly under system Perl.

Dynamic attribute loading and version handling

use Valiemon::Attributes::Format fails with:

Invalid version format

After the import failure, the test falls through to the base Valiemon::Attributes::is_valid method and reports that the method is not implemented. This indicates a PerlOnJava module-loading/version-resolution problem rather than a format-validation result.

Dependency and environment context

Valiemon is pure Perl. The test run used its normal dependencies, including Class::Accessor::Lite 0.08, Data::Validate::URI 0.07, List::MoreUtils 0.430, and Types::Serialiser 1.01. NetAddr::IP 4.079 appears as an XS dependency of the URI validation stack and was handled by the PerlOnJava fallback, but none of the reported failures is an XS-load error or a missing service/platform prerequisite. Reverse-dependency analysis is not applicable to the pure-Perl target distribution.

Acceptance criteria

  • All 25 upstream test files and 142 tests pass on the JVM backend.
  • The same suite passes on the interpreter backend.
  • Types::Serialiser booleans are recognized consistently by is_boolean and is_boolean_perl.
  • Schemas without properties do not acquire an invalid property structure during validation, and nested properties schemas work through oneOf.
  • Valiemon::Attributes::Format loads without an invalid-version error and its date-time tests execute normally.
  • Add focused project-owned regression coverage for the boolean, nested-schema/autovivification, and dynamic module-loading cases.
Lingua principale
Perl
Stelle
64
Fork
7
Merge medio
4h 29m
PR unite (30g)
176

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di fglock/PerlOnJava

Tutte le issue di fglock/PerlOnJava

Issue simili

Altre issue su Perl

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.