Skip Menu |

This queue is for tickets about the Net-IDN-Encode CPAN distribution.

Report information
The Basics
Id: 129588
Status: open
Priority: 0/
Queue: Net-IDN-Encode

People
Owner: Nobody in particular
Requestors: jplesnik [...] redhat.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Three tests fail with perl 5.29.8
t/uts46_to_ascii.t, t/uts46_to_ascii-trans.t and t/uts46_to_unicode.t fail with perl 5.29.8. See below: ... # Failed test 'to_ascii('ˣ\u034Fℕ\u200B﹣\u00AD-\u180Cℬ\uFE00ſ\u2064𝔰󠇯ffl') [data/IdnaTest.txt:375]' # at t/uts46_to_ascii.t line 258. # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' # expected: 'xn--bssffl' # Failed test 'to_ascii('x\u034FN\u200B-\u00AD-\u180CB\uFE00s\u2064s󠇯ffl') [data/IdnaTest.txt:376]' # at t/uts46_to_ascii.t line 259. # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' # expected: 'xn--bssffl' # Failed test 'to_ascii('x\u034Fn\u200B-\u00AD-\u180Cb\uFE00s\u2064s󠇯ffl') [data/IdnaTest.txt:377]' # at t/uts46_to_ascii.t line 260. # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' # expected: 'xn--bssffl' # Failed test 'to_ascii('X\u034FN\u200B-\u00AD-\u180CB\uFE00S\u2064S󠇯FFL') [data/IdnaTest.txt:378]' # at t/uts46_to_ascii.t line 261. # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' # expected: 'xn--bssffl' # Failed test 'to_ascii('X\u034Fn\u200B-\u00AD-\u180CB\uFE00s\u2064s󠇯ffl') [data/IdnaTest.txt:379]' # at t/uts46_to_ascii.t line 262. # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' # expected: 'xn--bssffl' ... Test Summary Report ------------------- t/uts46_to_ascii-trans.t (Wstat: 5376 Tests: 6198 Failed: 21) Failed tests: 236-240, 243-245, 753, 755, 761, 763, 1792 1797, 2141, 2573-2574, 5198-5199, 5285-5286 Non-zero exit status: 21 t/uts46_to_ascii.t (Wstat: 3840 Tests: 6198 Failed: 15) Failed tests: 236-240, 243-245, 753, 755, 761, 763, 1792 1797, 2141 Non-zero exit status: 15 t/uts46_to_unicode.t (Wstat: 3840 Tests: 7763 Failed: 15) Failed tests: 292-296, 299-301, 894, 896, 902, 904, 2195 2200, 2635 Non-zero exit status: 15
On Thu May 16 07:11:06 2019, jplesnik wrote: Show quoted text
> t/uts46_to_ascii.t, t/uts46_to_ascii-trans.t and t/uts46_to_unicode.t > fail with perl 5.29.8. See below: > > ... > # Failed test > 'to_ascii('Ë£\u034Fℕ\u200Bï¹£\u00AD-\u180Cℬ\uFE00Å¿\u2064𝔰ó > ‡¯ï¬„') [data/IdnaTest.txt:375]' > # at t/uts46_to_ascii.t line 258. > # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' > # expected: 'xn--bssffl' > > # Failed test 'to_ascii('x\u034FN\u200B-\u00AD- > \u180CB\uFE00s\u2064s󠇯ffl') [data/IdnaTest.txt:376]' > # at t/uts46_to_ascii.t line 259. > # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' > # expected: 'xn--bssffl' > > # Failed test 'to_ascii('x\u034Fn\u200B-\u00AD- > \u180Cb\uFE00s\u2064s󠇯ffl') [data/IdnaTest.txt:377]' > # at t/uts46_to_ascii.t line 260. > # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' > # expected: 'xn--bssffl' > > # Failed test 'to_ascii('X\u034FN\u200B-\u00AD- > \u180CB\uFE00S\u2064S󠇯FFL') [data/IdnaTest.txt:378]' > # at t/uts46_to_ascii.t line 261. > # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' > # expected: 'xn--bssffl' > > # Failed test 'to_ascii('X\u034Fn\u200B-\u00AD- > \u180CB\uFE00s\u2064s󠇯ffl') [data/IdnaTest.txt:379]' > # at t/uts46_to_ascii.t line 262. > # got: 'xn--xn--bssffl-ioa991fb26eynxalfbu037sih338a' > # expected: 'xn--bssffl' > ... > Test Summary Report > ------------------- > t/uts46_to_ascii-trans.t (Wstat: 5376 Tests: 6198 Failed: 21) > Failed tests: 236-240, 243-245, 753, 755, 761, 763, 1792 > 1797, 2141, 2573-2574, 5198-5199, 5285-5286 > Non-zero exit status: 21 > t/uts46_to_ascii.t (Wstat: 3840 Tests: 6198 Failed: 15) > Failed tests: 236-240, 243-245, 753, 755, 761, 763, 1792 > 1797, 2141 > Non-zero exit status: 15 > t/uts46_to_unicode.t (Wstat: 3840 Tests: 7763 Failed: 15) > Failed tests: 292-296, 299-301, 894, 896, 902, 904, 2195 > 2200, 2635 > Non-zero exit status: 15
Error with perl 5.30.0-RC1 is a bit different: # Failed test 'to_ascii('ˣ\u034Fℕ\u200B﹣\u00AD-\u180Cℬ\uFE00ſ\u2064𝔰󠇯ffl') [data/IdnaTest.txt:375]' # at t/uts46_to_ascii.t line 258. # got: undef # expected: 'xn--bssffl' # contains ignored character U+034F [V6] at t/uts46_to_ascii.t line 258. # Failed test 'to_ascii('x\u034FN\u200B-\u00AD-\u180CB\uFE00s\u2064s󠇯ffl') [data/IdnaTest.txt:376]' # at t/uts46_to_ascii.t line 259. # got: undef # expected: 'xn--bssffl' # contains ignored character U+034F [V6] at t/uts46_to_ascii.t line 259. # Failed test 'to_ascii('x\u034Fn\u200B-\u00AD-\u180Cb\uFE00s\u2064s󠇯ffl') [data/IdnaTest.txt:377]' # at t/uts46_to_ascii.t line 260. # got: undef # expected: 'xn--bssffl' # contains ignored character U+034F [V6] at t/uts46_to_ascii.t line 260.
Dne Čt 16.Květen.2019 08:20:26, jplesnik napsal(a): Show quoted text
> Error with perl 5.30.0-RC1 is a bit different: > > # Failed test > 'to_ascii('Ë£\u034Fℕ\u200Bï¹£\u00AD-\u180Cℬ\uFE00Å¿\u2064𝔰ó > ‡¯ï¬„') [data/IdnaTest.txt:375]' > # at t/uts46_to_ascii.t line 258. > # got: undef > # expected: 'xn--bssffl' > # contains ignored character U+034F [V6] at t/uts46_to_ascii.t line > 258. >
This can be reduced to: $ perl -Ilib -MNet::IDN::UTS46::_Mapping -e 'use utf8; use Data::Dumper; print Dumper(Net::IDN::UTS46::_Mapping::MapIgnored("a\x{034F}"))' $VAR1 = "a\x{34f}"; while good perl 5.28.2: $ perl -Ilib -MNet::IDN::UTS46::_Mapping -e 'use utf8; use Data::Dumper; print Dumper(Net::IDN::UTS46::_Mapping::MapIgnored("a\x{034F}"))' $VAR1 = 'a'; There seems to be a regression when executing _mk_prop() in Net::IDN::UTS46::_Mapping. This program: #!/usr/bin/perl use utf8; use Data::Dumper(); package Foo; sub _mk_prop { my @ll; while( my($c) = splice(@_,0,1) ) { warn "HIT"; push @ll, sprintf("%04X", $c); } return join "\n", @ll; } our @IGNORED = ( 0x034F ); sub IsIgnored { return _mk_prop(@IGNORED); }; my $l = "a\x{034F}"; $l =~ s/\p{IsIgnored}//g; warn "OUTPUT: " . Data::Dumper::Dumper($l); Fails like this: $ perl /tmp/test OUTPUT: $VAR1 = "a\x{34f}"; While good perl passes: $ perl /tmp/test HIT at /tmp/test line 10. OUTPUT: $VAR1 = 'a'; You can see the while loop is never executed. There seems to be a strange interaction between splice and the user-defined Unicode properties.
Thank you for the report and the detailed analysis. I’ll wait for the result of the discussion for the big against perl.
On Fri May 17 02:09:19 2019, CFAERBER wrote: Show quoted text
> Thank you for the report and the detailed analysis. I’ll wait for the > result of the discussion for the big against perl.
That was a wise decision. Perl 5.30 fixes this without you having to do anything.
On 2019-05-17 15:44:05, khw wrote: Show quoted text
> On Fri May 17 02:09:19 2019, CFAERBER wrote:
> > Thank you for the report and the detailed analysis. I’ll wait for the > > result of the discussion for the big against perl.
> > That was a wise decision. Perl 5.30 fixes this without you having to > do anything.
So this ticket may be marked as resolved?