Regex rejects IsPrint when combined with another character-class property
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 52/100
Rechercherichtung
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.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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.
- Vorherrschende Sprache
- Perl
- Sterne
- 64
- Forks
- 6
- Ø Merge
- 4 Std. 45 Min.
- Gemergte PRs (30 T.)
- 180
Entwicklungsumgebung
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus fglock/PerlOnJava
-
area:cpan-port area:database bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
fglock/PerlOnJava#1605 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:cpan-port area:database bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
fglock/PerlOnJava#1604 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
fglock/PerlOnJava#1579 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:cpan-port area:unicode bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
fglock/PerlOnJava#1341 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:runtime bug
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 68/100
fglock/PerlOnJava#1610 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in fglock/PerlOnJava
Ähnliche Issues
-
language/en needs-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
kubernetes/website#57846 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 2 Tagen
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
objectionary/eolang.sty#184 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
-
XS::Parse::Infix versions from 0.40 through 0.49 for Perl treat a number as an array referenceOffen1.severity: security
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag