#acl PaulHowarth:read,write,admin,revert,delete All:read === Wednesday 25th January 2012 === ==== Fedora Project ==== * Cleaned up and rebuilt `perl-Module-Find` and `perl-Test-Synopsis` in Rawhide ==== Local Packages ==== * Updated `perl-Class-Inspector` to 1.27: * Update to `Module::Install::DSL` 1.04 * Update copyright year * Remove usage of `defined @{"X::ISA"}` to avoid warnings in 5.15.7 onwards * Updated `perl-File-HomeDir` to 0.99: * Updated to `Module::Install` 1.04 * Removed deprecated interfaces from the documentation * Don't require music and video directories in !FreeDesktop tests * The use of deprecated `%~` now emits a warning * Updated `perl-Test-File` to 1.31: * Added `dir_exists_ok` and `dir_contains_ok` * Added `file_contains_like` and `file_contains_unlike` * Fixed a few grammatical errors in POD * Added some `SKIP` blocks to avoid test failures when running as `root` . The test suite for this release broke for me on Fedora 4 and older distributions: . {{{ t/file_contains............... # Failed test (t/file_contains.t at line 78) # STDOUT is: # ok 1 - min_file contains (?mx-is:^ xxxxxxxxxxx $) # not ok 2 - min_file contains (?mx-is:^ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx $) # # not: # ok 1 - min_file contains (?mx-is:^ xxxxxxxxxxx $) # ok 2 - min_file contains (?mx-is:^ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx $) # # as expected Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.6/Test/Builder/Tester.pm line 557. # STDERR is: # # Failed test (t/file_contains.t at line 77) # # 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # # xxxxxxxxxxx # # ' # # doesn't match '(?mx-is:^ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx $)' # # not: # # as expected # Failed test (t/file_contains.t at line 83) # STDOUT is: # ok 1 - file has the goods # not ok 2 - file has the goods # # not: # ok 1 - file has the goods # ok 2 - file has the goods # # as expected Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.6/Test/Builder/Tester.pm line 557. # STDERR is: # # Failed test (t/file_contains.t at line 82) # # 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # # xxxxxxxxxxx # # ' # # doesn't match '(?mx-is:^ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx $)' # # not: # # as expected FAILED tests 15-16 Failed 2/24 tests, 91.67% okay t/owner.......................ok t/rt/30346....................ok Failed 1/16 test scripts, 93.75% okay. 2/233 subtests failed, 99.14% okay. Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t/file_contains.t 24 2 8.33% 15-16 9 subtests skipped. make: *** [test_dynamic] Error 255 }}} . I believe this is due to a bug in older perls that makes the '`$`' anchor not work properly in `qr//` regexes with the `m` modifier, as mentioned at http://www.perlmonks.org/bare/?node_id=676601 . I think the underlying bug is [[PerlRT:3038|Perl RT#3038]] and it was fixed in `perl` 5.8.9; the patch was applied in an update to Fedora Core 5's `perl` 5.8.8 package, which is why that wasn't affected . This patch works around the problem for me, and I sent it upstream at [[CPAN:74365|CPAN RT#74365]] . {{{ --- Test-File-1.30/t/file_contains.t +++ Test-File-1.30/t/file_contains.t @@ -15,9 +15,9 @@ my $file = 'min_file'; my $contents = do { open FH, $file; local $/; }; close FH; -my $pattern1 = 'x' x 11; $pattern1 = qr/^ $pattern1 $/mx; -my $pattern2 = 'x' x 40; $pattern2 = qr/^ $pattern2 $/mx; -my $bad_pattern = 'x' x 20; $bad_pattern = qr/^ $bad_pattern $/mx; +my $pattern1 = 'x' x 11; $pattern1 = qr/(?mx:^ $pattern1 $)/; +my $pattern2 = 'x' x 40; $pattern2 = qr/(?mx:^ $pattern2 $)/; +my $bad_pattern = 'x' x 20; $bad_pattern = qr/(?mx:^ $bad_pattern $)/; # like : single pattern }}} * Cleaned up and rebuilt `perl-Module-Find` ----