Valiemon 0.05 fails boolean, nested-schema, and dynamic-loading tests on both backends
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
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
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.tt/02-attr-required.tt/03-attr-format.tt/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::Serialiserbooleans are recognized consistently byis_booleanandis_boolean_perl.- Schemas without
propertiesdo not acquire an invalid property structure during validation, and nestedpropertiesschemas work throughoneOf. Valiemon::Attributes::Formatloads 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
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di fglock/PerlOnJava
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
fglock/PerlOnJava#1579 ·
I maintainer di solito rispondono entro 1 giorno
-
area:cpan-port area:unicode bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
fglock/PerlOnJava#1341 ·
I maintainer di solito rispondono entro 1 giorno
-
area:platform area:runtime bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
fglock/PerlOnJava#1635 ·
I maintainer di solito rispondono entro 1 giorno
-
area:cpan-port area:runtime bug
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
fglock/PerlOnJava#1634 ·
I maintainer di solito rispondono entro 1 giorno
-
area:cpan-port bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
fglock/PerlOnJava#1633 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di fglock/PerlOnJava
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
inverse-inc/packetfence#9387 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
linux-test-project/lcov#552 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
szTheory/exifcleaner#383 ·
I maintainer di solito rispondono entro 1 giorno
-
1.severity: security
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
NixOS/nixpkgs#569828 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
ESCOMP/CAM#1701 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni