Re: Problem med perl 5.14

[email protected] (Jonas Brømsø Nielsen) Thu, 3 Nov 2011 15:23:34 +0100
Newsgroups perl.copenhagen
Message-ID <[email protected]>
Hej Henrik,

Vi diskuterede dette kort på sidste møde. Så jeg blev lidt nysgerrig, har I en formel evalueringsproces eller lignende for opdatering af Perl?

jonasbn
--
pauseid: JONASBN
email: [email protected]
twitter: jonasbn
blog: http://logicLAB.org/

On 28/10/2011, at 13.06, Henrik Hald Nørgaard wrote:

> Jobindex bruger i øjeblikket perl 5.12 og vi har ønsket at opdatere til perl
> 5.14 her i efteråret. Vi er imidlertid stødt på et problem med perl 5.14,
> som måske også kan være af interesse for andre Perl-brugere i
> Københavsområdet:
> 
> 
> 
> Se på denne substitution:
> 
> [henrik@gnu ~]$ /home/perlrepo/bin/perl -e 'use 5.012; my $x="Overs\x{e6}r";
> $x =~ s/r/ /gi; say $x;'
> 
> Ove sæ
> 
> 
> 
> Intet usædvaligt her, men perl 5.14.2 gør det anderledes:
> 
> 
> 
> [henrik@gnu ~]$ /home/perlrepo/perl-5.14.2/bin/perl -e 'use 5.012; my
> $x="Overs\x{e6}r"; $x =~ s/r/ /gi; say $x;'
> 
> Ove sær
> 
> 
> 
> Det andet "r" bliver ikke substitueret. Problemet opstår kun:
> 
> * efter et dansk specialtegn
> 
> * med "case-insentitive matchning", /i
> 
> 
> 
> Det optræder ikke, hvis man tilføjer den nye /l - modifier:
> 
> 
> 
> [henrik@gnu ~]$ /home/perlrepo/perl-5.14.2/bin/perl -e 'use 5.012; my
> $x="Overs\x{e6}r"; $x =~ s/r/ /gil; say $x;'
> 
> Ove sæ
> 
> 
> 
> eller hvis man bruger "use locale":
> 
> 
> 
> [henrik@gnu ~]$ /home/perlrepo/perl-5.14.2/bin/perl -e 'use 5.012; use
> locale; my $x="Overs\x{e6}r"; $x =~ s/r/ /gi; say $x;'
> 
> Ove sæ
> 
> 
> 
> eller hvis man ikke bruger "unicode_strings":
> 
> 
> 
> [henrik@gnu ~]$ /home/perlrepo/perl-5.14.2/bin/perl -e 'use 5.012; no
> feature qw(unicode_strings); my $x="Overs\x{e6}r"; $x =~ s/r/ /gi; say $x;'
> 
> Ove sæ
> 
> 
> 
> Vi troede til at begynde med, at forskellen var en konsekvens af de ikke
> bagud kompatible ændringer, som indgår i perl 5.14:
> 
> 
> 
> http://perldoc.perl.org/perl5140delta.html#Incompatible-Changes
> 
> 
> 
> men det gav ikke nogen mening. Min kollega, Anders Melchiorsen, gravede dybt
> i problemet og fandt ud af, at problemet ikke længere optræder i seneste
> blead version af perl (5.15.3) og har rapporteret det som en fejl i perl
> 5.14:
> 
> 
> 
> https://rt.perl.org/rt3/Public/Bug/Display.html?id=101710
> 
> 
> 
> Som det fremgår her, er problemet/fejlen introduceret i perl 5.13.9.
> 
> 
> 
> Det blev rettet igen af dette commit til perl 5.15:
> 
> 
> 
> http://perl5.git.perl.org/perl.git/commit/0a185c45d11435c3182b92d9373bd28ab7
> c386b2
> 
> 
> 
> Vi afventer nu, hvad der sker og har udsat opdateringen af perl.
> 
> 
> 
> Med venlig hilsen
> Henrik Hald Nørgaard, Programmør
> Jobindex A/S, Holger Danskes Vej 91, 2000 Frederiksberg
> Tlf.: +45 38 32 33 55, dir.:  +45 38 32 33 81
> <http://www.jobindex.dk/> www.jobindex.dk 
> 
> 
> 
> 
>