Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Regex rejects IsPrint when combined with another character-class property

Đang mở
#1,556 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
52/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
perl
Lĩnh vực
compilers

Hướng nghiên cứu

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.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

area:cpan-port area:regex area:unicode bug

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.

Ngôn ngữ chính
Perl
Star
64
Fork
6
Merge trung bình
4 giờ 45 phút
Pull request đã merge (30 ngày)
180

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của fglock/PerlOnJava

Tất cả issue của fglock/PerlOnJava

Issue tương tự

Thêm issue về Perl

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.