Regex rejects IsPrint when combined with another character-class property
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
- 52/100
Direzione di ricerca
Start by reproducing the failure with the character-class patterns in the issue and running t/01.new.t, t/04.particles.t, t/05.contributor.t, and t/06.source.t on both the JVM and interpreter backends. Inspect the existing Unicode alias handling, especially the Is/is-prefix logic; done means IsPrint combined with \s is accepted and the affected tests pass on both backends.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
XML-Atom-App v0.0.5 fails under PerlOnJava because the regex engine rejects the valid Perl Unicode property alias \p{IsPrint} when it is combined with \s in a character class.
Reproduction
These patterns behave inconsistently:
-
qr/[\p{IsPrint}]/ succeeds.
-
qr/^[\p{IsPrint}]*$/ succeeds.
-
qr/[\p{IsPrint}\s]/ fails.
-
qr/^[\p{IsPrint}\s]*$/ fails with:
Unknown user-defined property name IsPrint in regex
The failure affects both the JVM and interpreter backends.
CPAN evidence
- Distribution: XML-Atom-App v0.0.5
- CPAN run: 20260928-091741-26386
- Failing tests: t/01.new.t, t/04.particles.t, t/05.contributor.t, t/06.source.t
- PerlOnJava result: 20/21 tests; 4/10 test programs failed
- System Perl result: all 56 upstream tests passed
The failing module code uses:
/^[\\p{IsPrint}\\s]*$/
The same compatibility failure appeared in earlier CPAN reports, including the 2026-08-26 and 2026-09-10 report runs.
Related work
Existing Unicode alias handling strips the Is/is prefix, and prior work addressed isAlpha-style aliases. This reproducer shows a remaining context-sensitive failure when the alias is followed by another property escape in the same character class.
- Lingua principale
- Perl
- Stelle
- 64
- Fork
- 6
- Merge medio
- 4h 55m
- PR unite (30g)
- 169
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
-
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:backend area:runtime bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
fglock/PerlOnJava#1554 ·
I maintainer di solito rispondono entro 1 giorno
-
area:cpan-port area:runtime bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
fglock/PerlOnJava#1552 ·
I maintainer di solito rispondono entro 1 giorno
-
area:backend area:cpan-port bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
fglock/PerlOnJava#1548 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
fglock/PerlOnJava#1541 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di fglock/PerlOnJava
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
objectionary/eolang.sty#167 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
conan-io/conan-center-index#31065 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
openfoodfacts/openfoodfacts-server#14749 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
rubocop/ruby-style-guide#982 ·