PaulHowarth/Blog/2012-04

Paul's Blog Entries for April 2012

Sunday 1st April 2012

Fedora Project

  • Became owner of perl-Math-Calc-Units in all current Fedora and EPEL releases, and cleaned up and rebuilt it for F-15, F-16, F-17, Rawhide, EPEL-5 and EPEL-6

  • Updated perl-Pod-Wordlist-hanekomu to 1.120920 in F-15, F-16, F-17, Rawhide, EPEL-5 and EPEL-6:

    • Added "pre", "precompute", "prereq", "prereqs", "symlinked"
  • Updated perl-Test-Warn to 0.24 and cleaned it up in F-17 and Rawhide:

    • Compatibility with Carp 1.25

Local Packages

  • New package perl-CPAN-Meta-Requirements (2.121)

  • Updated libnet to 1.1.6; for F-17/RHEL-7 onwards, install to %{_libdir} rather than /%{_lib} in view of UsrMove

  • Updated perl-CPAN-Meta to 2.120921:

    • CPAN::Meta::Requirements now has a 'requirements_for_module' method to retrieve a version requirements string for a specific module

    • Parse::CPAN::Meta prerequisite bumped to 1.4403

    • JSON::PP prerequisite bumped to 2.27200

    • CPAN::Meta::YAML prerequisite bumped to 0.008

    • CPAN::Meta::Requirements has been split out into its own distribution so it can be used by CPAN.pm without requiring all of CPAN::Meta

  • Updated perl-Parse-CPAN-Meta to 1.4403:

    • Bumped prereqs: JSON::PP to 2.27200 and CPAN::Meta::YAML to 0.008

  • Updated perl-Pod-Wordlist-hanekomu to 1.120920 as per the Fedora version

  • Updated perl-Test-Warn to 0.24 as per the Fedora version

Monday 2nd April 2012

Fedora Project

Local Packages

  • New package yum-arch, included because it's been dropped from Rawhide now and I still need it until such time as I drop EL-4 support (later this year probably)

  • Updated davfs2 to install under /usr and conflict with filesystem < 3 on F-17/RHEL-7 onwards (Features/UsrMove)

  • Updated libgpg-error to install under /usr and conflict with filesystem < 3 on F-17/RHEL-7 onwards (Features/UsrMove)

  • Updated libgcrypt to install under /usr and conflict with filesystem < 3 on F-17/RHEL-7 onwards (Features/UsrMove)

  • Updated libidn to install under /usr and conflict with filesystem < 3 on F-17/RHEL-7 onwards (Features/UsrMove)

  • Updated libnet to conflict with filesystem < 3 on F-17/RHEL-7 onwards (Features/UsrMove)

  • Updated perl-DateTime-TimeZone to 1.46:

    • This release is based on version 2012c of the Olson database
    • Contemporary changes for Morocco, Palestine, Syria, and Haiti
  • Updated perl-DBM-Deep to 2.0006 as per the Fedora version

  • Dropped tcptraceroute from Fedora 17 onwards, where it is obsoleted by traceroute (Bug #733030)

Tuesday 3rd April 2012

Fedora Project

  • Updated perl-Class-Load to 0.19 in F-17 and Rawhide (no functional changes)

  • Updated perl-Net-SSLeay to 1.46 in F-17 and Rawhide (changes too numerous to mention)

Local Packages

  • Updated perl-Class-Load to 0.19 as per the Fedora version

  • Updated perl-CPAN-Meta-Requirements to "provide" a six-digit version number of the module since there are other packages in Fedora that have such dependencies from when it was bundled with perl-CPAN-Meta

  • Updated perl-Moose to 2.0403 (no functional changes)

  • Updated perl-Net-SSLeay to 1.46, not without problems:

    • First, it wouldn't even build with perl < 5.8.8:

    • gcc -c -I/usr/include -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -g -pipe -m32 -march=i386 -mtune=pentium4 -DVERSION=\"1.46\" -DXS_VERSION=\"1.46\" -fPIC "-I/usr/lib/perl5/5.8.5/i386-linux-thread-multi/CORE" SSLeay.c
      SSLeay.xs: In function `pem_password_cb_invoke':
      SSLeay.xs:912: error: `n_a' undeclared (first use in this function)
      SSLeay.xs:912: error: (Each undeclared identifier is reported only once
      SSLeay.xs:912: error: for each function it appears in.)
      make: *** [SSLeay.o] Error 1
    • This turned out to be because POPpx required a variable STRLEN n_a in scope prior to Perl 5.8.8; I raised this upstream as CPAN RT#76267

    • Second, the test suite failed on all x86_64 builds prior to F-15:

    • PERL_DL_NONLAZY=1 /home/cpan/pit/thr/perl-5.12.2/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/local/*.t t/handle/local/*.t
      t/handle/local/05_use.t ................ ok
      t/local/01_pod.t ....................... skipped: Test::Pod 1.00 required for testing POD
      t/local/02_pod_coverage.t .............. skipped: Test::Pod::Coverage 1.00 required for testing POD coverage
      t/local/03_use.t ....................... ok
      t/local/04_basic.t ..................... ok
      t/local/05_passwd_cb.t ................. ok
      t/local/06_tcpecho.t ................... ok
      t/local/07_sslecho.t ................... ok
      t/local/08_pipe.t ...................... ok
      t/local/15_bio.t ....................... ok
      t/local/20_autoload.t .................. skipped: Some tests need Test::Exception
      t/local/21_constants.t ................. skipped: Some tests need Test::Exception
      t/local/30_error.t ..................... skipped: Requires Test::Exception, Test::Warn and Test::NoWarnings
      t/local/31_rsa_generate_key.t .......... skipped: Test::Exception required
      
      #   Failed test 'serial ASN1_INTEGER_get        cert_twitter.crt.pem'
      #   at t/local/32_x509_get_cert_info.t line 111.
      #          got: '4294967295'
      #     expected: '-1'
      
      #   Failed test 'serial ASN1_INTEGER_get        cert_paypal.crt.pem'
      #   at t/local/32_x509_get_cert_info.t line 111.
      #          got: '4294967295'
      #     expected: '-1'
      # Looks like you failed 2 tests of 1130.
      t/local/32_x509_get_cert_info.t ........ 
      Dubious, test returned 2 (wstat 512, 0x200)
      Failed 2/1130 subtests 
              (less 8 skipped subtests: 1120 okay)
      
      #   Failed test 'ASN1_INTEGER_get'
      #   at t/local/33_x509_create_cert.t line 52.
      #          got: '4294967295'
      #     expected: '-1'
      # Looks like you failed 1 test of 124.
      t/local/33_x509_create_cert.t .......... 
      Dubious, test returned 1 (wstat 256, 0x100)
      Failed 1/124 subtests 
      t/local/34_x509_crl.t .................. ok
      t/local/35_ephemeral.t ................. ok
      t/local/36_verify.t .................... ok
      t/local/37_asn1_time.t ................. ok
      t/local/38_priv-key.t .................. ok
      t/local/39_pkcs12.t .................... ok
      t/local/40_npn_support.t ............... skipped: openssl 1.0.1 required
      t/local/50_digest.t .................... ok
      t/local/61_threads-cb-crash.t .......... ok
      t/local/62_threads-ctx_new-deadlock.t .. ok
      t/local/kwalitee.t ..................... skipped: Test::Kwalitee not installed; skipping
      
      Test Summary Report
      -------------------
      t/local/32_x509_get_cert_info.t      (Wstat: 512 Tests: 1130 Failed: 2)
        Failed tests:  654, 893
        Non-zero exit status: 2
      t/local/33_x509_create_cert.t        (Wstat: 256 Tests: 124 Failed: 1)
        Failed test:  21
        Non-zero exit status: 1
      Files=27, Tests=1715,  2 wallclock secs ( 0.25 usr  0.05 sys +  1.75 cusr  0.19 csys =  2.24 CPU)
      Result: FAIL
      Failed 2/27 test programs. 3/1715 subtests failed.
      make: *** [test_dynamic] Error 255
    • It appears that openssl versions prior to 1.0.0g return different values for an AES1_INTEGER value of -1; this was already raised upstream as CPAN RT#76266

Wednesday 4th April 2012

Fedora Project

  • Updated perl-Net-SSLeay to 1.47 in F-17 and Rawhide:

    • Fixed over-long lines and spelling errors in pod
    • Fixed extra "garbage" files in 1.46 tarball
    • Fixed incorrect fail reports on some 64-bit platforms
    • Fix to avoid FAIL reports from cpantesters with missing openssl

    • Use my_snprintf from ppport.h to prevent link failures with perl 5.8 and earlier when compiled with MSVC

Local Packages

  • Updated perl-Net-SSLeay to 1.47 as per the Fedora version

Thursday 5th April 2012

Fedora Project

  • Updated libssh2 to 1.4.1 in F-17 and Rawhide:

    • Fix build error with gcrypt backend

    • Always do "forced" window updates to avoid corner case stalls
    • aes: the init function fails when OpenSSL has AES support

    • transport_send: finish in-progress key exchange before sending data

    • channel_write: acknowledge transport errors

    • examples/x11.c: make sure sizeof passed to read operation is correct

    • examples/x11.c: fix suspicious sizeof usage

    • sftp_packet_add: verify the packet before accepting it

    • SFTP: preserve the original error code more
    • sftp_packet_read: adjust window size as necessary

    • Use safer snprintf rather then sprintf in several places

    • Define and use LIBSSH2_INVALID_SOCKET instead of INVALID_SOCKET

    • sftp_write: cannot return acked data and EAGAIN

    • sftp_read: avoid data and EAGAIN

    • libssh2.h: add missing prototype for libssh2_session_banner_set()

  • Became co-maintainer of perl-Test-SubCalls in Rawhide and cleaned it up and updated it not to run the release tests when bootstrapping so as to avoid circular build dependencies

  • Raised bugs on perl-DBI, perl-HTTP-Message, perl-Moose, perl-POE and perl-SQL-Statement regarding circular build dependencies, which are problematic when bootstrapping a new perl version

  • Rebuilt perl-BDB, perl-BerkeleyDB and sendmail for libdb 5.3.15 in Rawhide

Local Packages

  • Updated libssh2 to 1.4.1 as per the Fedora version

  • Updated perl-AnyEvent to include upstream fix for t/80_ssltest.t with OpenSSL 1.0.1 (i.e. using a longer key - see CPAN RT#75343 and Bug #789447)

  • Cleaned up and rebuilt perl-Test-SubCalls

Friday 6th April 2012

Fedora Project

Local Packages

  • Updated libgcrypt to add the GCRYCTL_SET_ENFORCED_FIPS_FLAG command

  • Updated perl-DateTime to fix bootstrap build (DateTime::Locale and DateTime::TimeZone are now hard requirements so we have to skip the test suite when bootstrapping)

  • Updated perl-Parse-CPAN-Meta to 1.4404:

    • Protected tests from user PERL_YAML/JSON_BACKEND

  • Updated perl-HTML-Lint to 2.20:

    • Added comment-directives to disable specific errors in your HTML
    • Added check for unknown entities, such as "&foo;"

    • Added check for unclosed entities, such as "&amp" without the closing semicolon

    • Added a check for a bare ampersand that should be written as &amp;

  • Cleaned up and rebuilt perl-IO-stringy

Saturday 7th April 2012

Fedora Project

  • Updated perl-Digest-MD5-File to 0.08 in F-15, F-16, F-17, Rawhide, EPEL-5 and EPEL-6:

  • Updated perl-IO-AIO to 4.14 in F-17 and Rawhide:

    • Fix stat structure usage on windows, which caused bogus stat results

    • (libeio) make readahead emulation behave more like actual readahead by never failing

    • New request aio_seek

    • New request aio_fiemap

    • Auto-generate the #ifdef/#define 0 blocks for symbols we export

  • Updated perl-IO-Socket-SSL to 1.64 in Rawhide:

    • Ignore die from within eval to make tests more stable on Win32 (CPAN RT#76147)

    • Clarify some behaviour regarding hostname verification

Local Packages

  • Updated perl-IO-AIO to 4.14 as per the Fedora version; this went without problems except on EL-5, where it failed to compile:

  • gcc -c   -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic   -DVERSION=\"4.14\" -DXS_VERSION=\"4.14\" -fPIC "-I/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE"   AIO.c
    In file included from AIO.xs:9:
    schmorp.h: In function 's_epipe_signal':
    schmorp.h:450: warning: ignoring return value of 'write', declared with attribute warn_unused_result
    schmorp.h: In function 's_epipe_drain':
    schmorp.h:463: warning: ignoring return value of 'read', declared with attribute warn_unused_result
    In file included from AIO.xs:27:
    /usr/include/linux/fiemap.h: At top level:
    /usr/include/linux/fiemap.h:15: error: expected specifier-qualifier-list before '__u64'
    /usr/include/linux/fiemap.h:26: error: expected specifier-qualifier-list before '__u64'
  • The problem there was that EL-5's <linux/fiemap.h> header file uses the __u64 type without pulling in <linux/types.h> to define it, so I tweaked the configure script to check for <linux/types.h> and used it:

  • diff -up IO-AIO-4.14/AIO.xs.orig IO-AIO-4.14/AIO.xs
    --- IO-AIO-4.14/AIO.xs.orig     2012-04-07 01:49:49.000000000 +0100
    +++ IO-AIO-4.14/AIO.xs  2012-04-07 21:17:08.055812147 +0100
    @@ -22,6 +22,7 @@
     #endif
    
     #if __linux__
    +# include <linux/types.h>
     # include <linux/fs.h>
     # ifdef FS_IOC_FIEMAP
     #  include <linux/fiemap.h>
    diff -up IO-AIO-4.14/configure.ac.orig IO-AIO-4.14/configure.ac
    --- IO-AIO-4.14/configure.ac.orig       2012-04-06 10:57:56.000000000 +0100
    +++ IO-AIO-4.14/configure.ac    2012-04-07 21:17:08.066812142 +0100
    @@ -5,7 +5,12 @@ AC_CONFIG_HEADERS([libeio/config.h])
    
     AC_PROG_CC
    
    -AC_CHECK_HEADERS([linux/fs.h linux/fiemap.h])
    +AC_CHECK_HEADERS([linux/fs.h linux/types.h])
    +AC_CHECK_HEADERS([linux/fiemap.h], [], [],
    +[#ifdef HAVE_LINUX_TYPES_H
    +#include <linux/types.h>
    +#endif
    +])
    
     m4_include([libeio/libeio.m4])
  • I sent that fix upstream and it (or something like it) will be included in subsequent releases.
  • However, it still didn't build:
  • gcc -c   -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic   -DVERSION=\"4.14\" -DXS_VERSION=\"4.14\" -fPIC "-I/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE"   AIO.c
    In file included from AIO.xs:9:
    schmorp.h: In function 's_epipe_signal':
    schmorp.h:450: warning: ignoring return value of 'write', declared with attribute warn_unused_result
    schmorp.h: In function 's_epipe_drain':
    schmorp.h:463: warning: ignoring return value of 'read', declared with attribute warn_unused_result
    In file included from AIO.xs:127:
    libeio/eio.c: In function 'etp_start_thread':
    libeio/eio.c:577: warning: left-hand operand of comma expression has no effect
    In file included from AIO.xs:127:
    libeio/eio.c:1078:19: error: #if with no expression
  • This one was somewhat more difficult to track down. The line with the error was:
  • #if HAVE_FALLOCATE
  • Looking though the code, it was clear that the HAVE_FALLOCATE macro was either defined to 1 or left undefined, neither of which should have caused the error; this bit of code had also not changed from the previous version, which did compile OK. It turned out that this file now #includes <linux/fs.h>, and in RHEL-5, that includes these lines of code:

  • /* public flags for file_system_type */
    #define FS_REQUIRES_DEV 1 
    #define FS_BINARY_MOUNTDATA 2
    #define HAVE_FALLOCATE
    #define FS_HAS_FALLOCATE 4    /* Safe to check for ->fallocate */
    #define FS_HAS_FIEMAP  8      /* Safe to check for ->fiemap */
    #define FS_HAS_FREEZE 16      /* Safe to check for ->freeze_fs etc */
    #define FS_HAS_TRYTOFREE 32   /* Safe to check for ->bdev_try_to_free... */
    #define FS_HAS_GETRESV 64     /* Safe to check for ->get_reserved_space */
    #define FS_HAS_IODONE2 128    /* dio->io_done is type dio_iodone2_t */
    #define FS_REVAL_DOT    16384   /* Check the paths ".", ".." for staleness */
    #define FS_RENAME_DOES_D_MOVE   32768   /* FS will handle d_move()
                                             * during rename() internally.
                                             */
  • So there was the empty definition of HAVE_FALLOCATE that was causing the problem, and I wasn't the first person to come across this issue. I patched the IO::AIO code to use the symbol HAVE_LINUX_FALLOCATE instead of HAVE_FALLOCATE and that fixed the problem:

  • diff -up IO-AIO-4.14/libeio/eio.c.orig IO-AIO-4.14/libeio/eio.c
    --- IO-AIO-4.14/libeio/eio.c.orig       2012-04-02 18:53:19.000000000 +0100
    +++ IO-AIO-4.14/libeio/eio.c    2012-04-07 21:17:08.076812137 +0100
    @@ -1075,7 +1075,7 @@ eio__sync_file_range (int fd, off_t offs
     static int
     eio__fallocate (int fd, int mode, off_t offset, size_t len)
     {
    -#if HAVE_FALLOCATE
    +#if HAVE_LINUX_FALLOCATE
       return fallocate (fd, mode, offset, len);
     #else
       errno = ENOSYS;
    diff -up IO-AIO-4.14/libeio/libeio.m4.orig IO-AIO-4.14/libeio/libeio.m4
    --- IO-AIO-4.14/libeio/libeio.m4.orig   2011-07-24 06:46:26.000000000 +0100
    +++ IO-AIO-4.14/libeio/libeio.m4        2012-04-07 21:17:54.640785066 +0100
    @@ -136,7 +136,7 @@ int main (void)
        return 0;
     }
     ],ac_cv_fallocate=yes,ac_cv_fallocate=no)])
    -test $ac_cv_fallocate = yes && AC_DEFINE(HAVE_FALLOCATE, 1, fallocate(2) is available)
    +test $ac_cv_fallocate = yes && AC_DEFINE(HAVE_LINUX_FALLOCATE, 1, fallocate(2) is available)
    
     AC_CACHE_CHECK(for sys_syncfs, ac_cv_sys_syncfs, [AC_LINK_IFELSE([
     #include <unistd.h>
  • I sent that fix upstream too but Marc insists that that's a Red Hat bug that needs fixing; I can try raising a bug on that but I don't hold out much hope of it getting fixed, and certainly not any time soon, so it seems I'll be carrying this patch for a while.
  • Updated perl-IO-Socket-SSL to 1.64 as per the Fedora version

  • Rebuilt sendmail for libdb 5.3 in Rawhide

Sunday 8th April 2012

Fedora Project

Monday 9th April 2012

Fedora Project

  • Raised bugs on perl-bioperl, perl-Dancer and perl-Titanium regarding circular build dependencies, completing my bug-raising activities for perl bootstrapping: I believe the perl ecosystem in Fedora can be bootstrapped in 38 passes, plus further pot-bootstrap rebuilds afterwards for those packages that build differently during bootstrapping

  • Updated perl-XML-Generator-DBI in Rawhide not to build-require itself

  • Cleaned up and rebuilt perl-Crypt-Primes in Rawhide, fixing a directory ownership issue

Tuesday 10th April 2012

Fedora Project

  • Became co-maintainer of perl-Class-DBI-Plugin in Rawhide and did a clean-up and rebuild

  • Updated perl-IO-AIO to 4.15 in F-17 and Rawhide:

    • Always include linux/types.h for fiemap, for compatibility with ancient systems

    • Experimental support for IO::AIO::splice and ::tee (no aio_...)

    • Provide SEEK_HOLE and SEEK_DATA, if available

    • Work around (again!) an immensely stupid bug in RHEL, defining autoconf macros in linux system headers

Local Packages

  • Updated dovecot to 2.1.4:

    • Added mail_temp_scan_interval setting and changed its default value from 8 hours to 1 week

    • Added pop3-migration plugin for easily doing a transparent IMAP+POP3 migration to Dovecot: http://wiki2.dovecot.org/Migration/Dsync

    • doveadm user: Added -m parameter to show some of the mail settings

    • Proxying SSL connections crashed in v2.1.[23]
    • fts-solr: Indexing mail bodies was broken

    • director: Several changes to significantly improve error handling

    • doveadm import didn't import messages' flags

    • mail_full_filesystem_access=yes was broken

    • Make sure IMAP clients can't create directories when accessing non-existent users' mailboxes via shared namespace
    • dovecot auth clients authenticating via TCP socket could have failed with bogus "PID already in use" errors

  • I also added a post-release fix for lib-storage from upstream

  • Updated dovecot (2.0) to 2.0.20:

    • doveadm user: Added -m parameter to show some of the mail settings

    • doveadm import didn't import messages' flags

    • Make sure IMAP clients can't create directories when accessing non-existent users' mailboxes via shared namespace
    • dovecot auth clients authenticating via TCP socket could have failed with bogus "PID already in use" errors

  • Updated perl-IO-AIO to 4.15 as per the Fedora version, dropping my no-longer-needed patches for RHEL-5 compatibility

Friday 13th April 2012

Fedora Project

  • Updated gtkwave to 3.3.35 in F-17 and Rawhide:

    • Polarity fix for vcd_preserve_glitches in rcfile; default is no/off, use yes in the rcfile to enable (e.g., for viewing interpolated analog waveforms)

    • Added vcd_preserve_glitches support to FST as --optimize uses FST

    • Added vcd_preserve_glitches_real (for VCD/FST) rcfile variable that turns off deglitching only for real signals

    • Fix for do_initial_zoom_fit when file requester used

    • Changed contact address for bug reports to <bybell AT rocketmail DOT com>

    • Added fstWriterSetParallelMode()

  • Updated proftpd in F-17 and Rawhide to use a hardened build

Local Packages

  • Updated curl to use NSS_InitContext() to initialize NSS if available (Bug #738456) and to provide human-readable names for NSS errors (upstream commit a60edcc6)

  • Updated fetchyahoo to 2.14.7:

    • Fix compatibility with .mc1 servers

  • Updated gtkwave to 3.3.35 as per the Fedora version

  • Updated perl-AnyEvent to 7.0:

    • Child watchers are broken in POE 1.352 (also many earlier versions) and there seems to be no way to work around it, as POE itself is inherently racy: document this regression and add a delay in t/68_poe_03_child.t for the time being

    • New module AnyEvent::IO, a frontend to either a pure-perl synchronous I/O implementation (AnyEvent::IO::Perl), or to the asynchronous I/O extension IO::AIO (AnyEvent::IO::IOAIO)

    • Load /etc/hosts only when DNS has no answer

    • stat /etc/hosts on every access and reload it if it changed

    • Load /etc/hosts via AnyEvent::IO - potentially asynchronous

    • Fix a buggy croak in the dh parameter reading in AnyEvent::TLS

    • AnyEvent::Log log_to_file and log_to_path now use AnyEvent::IO; as a side effect, they now use true appending as opposed to libc appending, and the file might not have been opened when the function returns

    • The default logging level was not properly documented in a variety of places
    • Updated uts46data.pl for unicode 6.1.0

    • Made log messages generated by AnyEvent submodules not include the package name any longer, as it will be logged by default already

    • Upgrade to the trick used by common::sense 3.5 to work around extra warning torture/breakage under perl 5.15.x

    • Log messages by anyevent are now ucfirst, are usually full sentences and no longer include the package name

    • The storable read type would sometimes throw an exception instead of causing EBADMSG

    • Work around a bug in openssl 1.0.1, which enforces a minimum rsa key size

  • Rebuilt perl-HTML-Lint to stay in sync with Rawhide

  • Updated proftpd as per the Fedora version (my F-16 build will also be hardened, as that is where the hardened build support was added)

Saturday 14th April 2012

Local Packages

  • Updated perl-Coro to 6.08:

    • Be more aggressive about exiting like perl does - formerly, exiting from the non-main thread would not execute END blocks

  • I found that test t/12_exit.t would fail sub-test 5 on perl 5.10.0 on x86_64 (but not any other perl version, or on i386), which turned out to be a segfault in perl_free(), called just before exit() in State.xs; as a work-around, I just removed the call to perl_free():

  • Coro 6.08 segfaults in perl_free with perl 5.10.0 (only) on x86_64 (only)
    
    --- Coro/State.xs
    +++ Coro/State.xs
    @@ -1420,9 +1420,7 @@
     static void ecb_noinline ecb_cold
     perlish_exit (pTHX)
     {
    -  int exitstatus = perl_destruct (PL_curinterp);
    -  perl_free (PL_curinterp);
    -  exit (exitstatus);
    +  exit (perl_destruct (PL_curinterp));
     }
     
     /*

Sunday 15th April 2012

Fedora Project

  • Updated perl-Test-CPAN-Meta-JSON to 0.11 in F-17 and Rawhide:

  • Updated perl-Test-CPAN-Meta-YAML to 0.18 in F-17 and Rawhide:

Local Packages

  • Updated perl-Test-CPAN-Meta to 0.19:

  • Updated perl-Test-CPAN-Meta-JSON to 0.11 as per the Fedora version

  • Updated perl-Test-CPAN-Meta-YAML to 0.18 as per the Fedora version

Monday 16th April 2012

Fedora Project

  • Updated perl-IO-Socket-SSL to 1.66 in F-17 and Rawhide:

  • Updated rbldnsd in F-15, F-16, F-17, Rawhide, EPEL-5 and EPEL-6 to fix some initscript issues:

    • Hanging when started from systemd (Bug #807504)

    • Only starting the first instance when multiple instances are specified in /etc/sysconfig/rbldnsd

  • The F-16, F-17 and F-18 builds were hardened (PIE) too
  • Updated spamass-milter in F-17 and Rawhide to do a hardened (PIE) build

Local Packages

  • Updated getmail to 4.26.0:

    • Switch to using BODY.PEEK in IMAP retrieval

  • Updated perl-IO-Socket-SSL to 1.66 as per the Fedora version

  • Updated spamass-milter as per the Fedora version

Tuesday 17th April 2012

Fedora Project

  • Updated perl-Test-CPAN-Meta-JSON to 0.12 in F-17 and Rawhide:

  • Updated perl-Test-CPAN-Meta-YAML to 0.19 in F-17 and Rawhide:

  • Updated rbldnsd to use systemd native unit files for start-up in F-17 onwards; since the SvsV initscript supported multiple instances with arbitrary parameters, which is hard to map to systemd, I wrote a helper script rbldnsctl to create and manage systemd units based on exactly the same configuration in /etc/sysconfig/rbldnsd that the SysV script used, which I documented as follows in README.systemd:

  • Using rbldnsd with systemd
    ==========================
    
    The traditional SysV initscript shipped with rbldnsd supports using
    multiple instances with arbitrary command lines. This is difficult
    to achieve with systemd so a wrapper script, rbldnsctl, has been
    provided to assist with the creation and use of native systemd unit
    files for each required instance, using exactly the same configuration
    in /etc/sysconfig/rbldnsd as the SysV initscript used.
    
    Having edited /etc/sysconfig/rbldnsd to specify the rbldnsd
    instance(s) required, individual unit files for each instance can be
    created by:
    
      rbldnsctl create
    
    This creates unit files /etc/systemd/system/rbldnsd-<instancename>.service
    for each required instance. These units can then be manipulated
    individually using /bin/systemctl as usual, or all at once by using
    other rbldnsctl commands:
    
      rbldnsctl enable
    
    This enables all configured rbldnsd instances to start at boot time
    (equivalent of chkconfig rbldnsd on).
     
      rbldnsctl disable
    
    This disables all configured rbldnsd instances from starting at boot time
    (equivalent of chkconfig rbldnsd off).
     
      rbldnsctl start
    
    This starts all configured rbldnsd instances immediately
    (equivalent of service rbldnsd start).
     
      rbldnsctl stop
    
    This stops all configured rbldnsd instances
    (equivalent of service rbldnsd stop).
     
      rbldnsctl reload
    
    This reloads all configured rbldnsd instances
    (equivalent of service rbldnsd reload).
     
      rbldnsctl restart
    
    This restarts all configured rbldnsd instances
    (equivalent of service rbldnsd restart).
     
      rbldnsctl condrestart
      rbldnsctl try-restart
    
    These restart all configured rbldnsd instances immediately, if they are
    already running (equivalent of service rbldnsd condrestart).
     
      rbldnsctl status
    
    This shows status of all configured rbldnsd instances
    (equivalent of service rbldnsd status).
    
    When editing /etc/sysconfig/rbldnsd to specify rbldnsd instance options,
    bear in mind:
    
    * systemd prefers the daemons it controls not to fork, so the unit files
      created by rbldnsctl start rbldnsd with the "-n" option to prevent
      it from forking; this also means that systemd knows the PIDs of all
      instances itself, so there is no need to specify any forking/pidfile related
      options in /etc/sysconfig/rbldnsd
    
    * if you want just a single instance of rbldnsd and use the traditional "-"
      identifier for it, rbldnsctl will create a unit file
      /etc/systemd/system/rbldnsd-single.service, i.e. the instance name will be
      set to "single"

Local Packages

  • Updated perl-Test-CPAN-Meta to 0.20:

  • Updated perl-Test-CPAN-Meta-JSON to 0.12 as per the Fedora version

  • Updated perl-Test-CPAN-Meta-YAML to 0.19 as per the Fedora version

  • Updated rbldnsd as per the Fedora version

Wednesday 18th April 2012

Fedora Project

  • Raised Bug #813698 requesting that the Test::Mouse module be split into a sub-package from perl-Mouse so as to avoid the latter package having a dependency on perl(Test::Builder), a development package

Local Packages

  • New package perl-MetaCPAN-API (0.43)

  • I built this package to use in a new version of my upstream monitoring script for perl module releases, since pulling data from http://search.cpan.org/ seems to be getting less reliable; whilst developing the new script, I came across a few inconsistencies:

    • Algorithm-Diff-XS 0.04 cites a version: 0.01 rather than 0.04 in its META.yml (CPAN RT#76654)

    • Crypt-RSA 1.99 cites a version: 1.97 rather than 1.99 in its META.yml (CPAN RT#76655)

    • IO-Capture 0.05 cites a version: 0.04 rather than 0.05 in its META.yml (CPAN RT#76656)

    • PlRPC 0.2020 cites a version: 0.2018 rather than 0.2020 in its META.yml (CPAN RT#76657)

    • Spiffy 0.30 cites a version: 0.25 rather than 0.30 in its META.yml (CPAN RT#19865)

    • According to MetaCPAN, the "latest" release of Class-MOP is 0.36 rather than 1.12 (MetaCPAN Issue #550)

    • common-sense doesn't show up on MetaCPAN, and neither do grepmail or weblint (MetaCPAN Issue #548)

  • Retrieving the "latest" version of a module from MetaCPAN was easy; finding the latest development version was harder, but I came up with this:
  • use MetaCPAN::API;
    
    my $distro = 'Archive-Tar'; # for example
    
    my $dist = $mcpan->release(
        search => {
            q => "distribution:$distro AND maturity:developer",
            fields => "name,version,status,maturity,date",
            sort => 'date:desc',
            size => 1,
        },
    );
    my $hits = $dist->{'hits'}->{'hits'};
    my ($best_hit, $devel_meta_version, $devel_name_version, $devel_date);
    if (scalar @{ $hits }) {
        $best_hit = shift( $hits )->{'fields'};
        $devel_meta_version = $best_hit->{'version'};
        $devel_name_version = version_from_name($distro, $best_hit->{'name'});
        $devel_date = $best_hit->{'date'};
    }

Thursday 19th April 2012

Fedora Project

Local Packages

  • Updated contagged to add support for Apache httpd 2.4.x, which was just a few lines that needed changing in the config snippet:

    • The default configuration allows access only from localhost, which for httpd 2.2 is:

    • ### By default this application is only accessible from the local host
      Order deny,allow
      Deny from all
      Allow from 127.0.0.1
      Allow from ::1
    • and for httpd 2.4 is:

    • ### By default this application is only accessible from the local host
      Require local
    • The alternative configuration allows access from everywhere, which used to be:
    • ### To allow access from everywhere, comment out the 4 previous lines and
      ### uncomment the following two lines
      #Order allow,deny
      #Allow from all
    • and is now:
    • ### To allow access from everywhere, comment out the previous line and
      ### uncomment the following line
      #Require all granted
    • I also added a note with the LDAPTrustedGlobalCert entry for ldaps support that it needs mod_ldap, since this is no longer bundled with the httpd package with httpd 2.4 in Rawhide:

    • ### For ldaps support, Apache 2.4.x (needs mod_ldap)
      #LDAPTrustedGlobalCert CA_BASE64 /etc/pki/tls/certs/slapd-ca.crt
  • Updated perl-Test-CPAN-Meta to 0.21:

  • Updated perl-YAML to 0.81:

  • The revised fixes for compatibility with old B::Deparse versions in this release don't actually work, so I added an additional patch to fix that and attached it to CPAN RT#74826:

  • --- t/dump-code.t
    +++ t/dump-code.t
    @@ -6,9 +6,6 @@ if (new B::Deparse -> coderef2text ( sub
         =~ 'refs') {
      local $/;
      (my $data = <DATA>) =~ s/use strict/use strict 'refs'/g if $] < 5.015;
    - if ($B::Deparse::VERSION > 0.67 and $B::Deparse::VERSION < 0.71) { # [CPAN #73702]
    -   $data =~ s/use warnings;/BEGIN {\${^WARNING_BITS} = "UUUUUUUUUUUU\\001"}/g;
    - }
      open DATA, '<', \$data;
     }
     
    --- t/dump-perl-types.t
    +++ t/dump-perl-types.t
    @@ -8,9 +8,6 @@ if (new B::Deparse -> coderef2text ( sub
         =~ 'refs') {
      local $/;
      (my $data = <DATA>) =~ s/use strict/use strict 'refs'/g;
    - if ($B::Deparse::VERSION > 0.67 and $B::Deparse::VERSION < 0.71) { # [CPAN #73702]
    -   $data =~ s/use warnings;/BEGIN {\${^WARNING_BITS} = "UUUUUUUUUUUU\\001"}/g;
    - }
      open DATA, '<', \$data;
     }

Friday 20th April 2012

Fedora Project

  • Raised Bug #814645 on systemctl reload httpd.service not working in Rawhide, and graceful restart not working properly (upstream bug) in the event of syntax errors in the configuration

  • Updated perl-Test-CPAN-Meta-JSON to 0.13 in F-17 and Rawhide:

    • Further spelling fix
    • Removed DSLIP info
  • Updated perl-Test-CPAN-Meta-YAML to 0.20 in F-17 and Rawhide:

    • Further spelling fix
    • Removed DSLIP info

Local Packages

  • Updated perl-Test-CPAN-Meta-JSON to 0.13 as per the Fedora version

  • Updated perl-Test-CPAN-Meta-YAML to 0.20 as per the Fedora version

  • Updated ud to do a hardened (PIE) build on F-16 and later and to use native systemd init on F-15 and later

Saturday 21st April 2012

Fedora Project

  • Rebuilt proftpd for the new libmemcached in Rawhide

  • Fixed a few FTBFS issues for perl modules reported on Peter Robinson's Blog:

    • perl-Crypt-CBC (needed buildreq perl(Digest::MD5))

    • perl-Log-Any (needed buildreq perl(Data::Dumper))

    • perl-MD5 (needed buildreq perl(Digest::MD5) >= 2.00)

Local Packages

  • Updated perl-Pod-Coverage-TrustPod to 0.100002:

    • Add docs about using =for instead of =begin/=end

  • Rebuilt proftpd for the new libmemcached in Rawhide

Sunday 22nd April 2012

Fedora Project

  • Addressed more FTFBS issues from Peter Robinson's blog:
    • Fixed perl-XML-Filter-XInclude (build-require perl(XML::SAX) >= 0.05)

    • Fixed xxdiff (needed patching to build with gcc 4.7):

    • @@ -0,0 +1,10 @@
      --- src/main.h
      +++ src/main.h
      @@ -35,6 +35,6 @@
        * PUBLIC DECLARATIONS
        *============================================================================*/
       
      -extern char** environ;
      +extern "C" char** environ;
       
       #endif
    • Raised Bug #814989 on perl-Module-Starter-Plugin-CGIApp regarding it failing to build (apparently broken by perl-Module-Starter 1.54)

    • Raised Bug #815073 on perl-Devel-FindRef regarding it segfaulting on 32-bit builds when running perl-Test-Refcount's test suite

Local Packages

  • Patched xxdiff to build with gcc 4.7 as per the Fedora version

Monday 23rd April 2012

Fedora Project

  • Rebuilt alsa-plugins in F-17 to fix upgrade path from F-16 (Bug #806218, requested by kwizart)

  • Updated mod_fcgid to 2.3.7 in F-15, F-16, F-17, Rawhide and EPEL-6:

    • Introduce FcgidWin32PreventOrphans directive on Windows to use OS Job Control Objects to terminate all running fcgi's when the worker process has been abruptly terminated (PR: 51078)

    • Periodically clean out the brigades that are pulling in the request body for handoff to the fcgid child (PR: 51749)

    • Resolve crash during graceful restarts (PR: 50309)

    • Solve latency/congestion of resolving effective user file access rights when no such info is desired, for config-related filename stats (PR: 51020)

    • Fix regression in 2.3.6 that broke process controls when using vhost-specific configuration
    • Account for first process in class in the spawn score
  • Updated perl-File-LibMagic in F-17 to include two patches from debian (CPAN RT#75457, CPAN RT#56479) that fix FTBFS issue with file ≥ 5.10 (Bug #813178)

  • Updated perl-Package-DeprecationManager in F-17 and Rawhide not to build-require perl(Test::Kwalitee) since upstream no longer ships the Kwalitee test (Bug #815367)

  • Updated perl-YAML in F-17 and Rawhide to add missing runtime dependencies on perl(Carp) and perl(Data::Dumper), and to not attempt to run the release tests since upstream no longer runs them even with AUTOMATED_TESTING set

Local Packages

  • Updated mod_fastcgi to include two new patches:

  • Updated mod_fcgid to 2.3.7 as per the Fedora version

  • Updated perl-Package-DeprecationManager not to build-require perl(Test::Kwalitee) as per the Fedora version

  • Updated perl-Test-DistManifest to 1.012:

    • Now taking default MANIFEST.SKIP content directly from installed version of ExtUtils::Manifest, rather than inlining a copy

  • Updated python-pyasn1 to 0.1.3:

    • Include class name into asn1 value constraint violation exception

    • Fix to OctetString.prettyOut() method that loses leading zero when building hex string

Tuesday 24th April 2012

Fedora Project

  • Updated perl-Test-Version in F-17 and Rawhide to not build-require perl(Test::Kwalitee) or perl(Pod::Wordlist::hanekomu) when building for RHEL ≥ 7 as those packages (only needed for release tests) will be in EPEL rather than RHEL (Bug #815759)

Local Packages

  • Updated dovecot to 2.1.5:

    • IMAP: when neither the session nor the mailbox has modseq tracking enabled, return the mailbox as having NOMODSEQ in SELECT/EXAMINE reply (old versions in this situation always simply returned HIGHESTMODSEQ as 1, which could have broken some clients)

    • dict file: added optional fcntl/flock locking (default is dotlock)

    • fts-solr: doveadm fts rescan now resets indexes, which allows reindexing mails (this isn't a full rescan implementation like fts-lucene has)

    • doveadm expunge: added -d parameter to delete mailbox if it's empty after expunging

    • IMAP: several fixes related to mailbox listing in some configs
    • director: a lot of fixes and performance improvements

    • v2.1.4 didn't work without a mail home directory set
    • mbox: deleting a mailbox didn't delete its index files

    • pop3c: TOP command was sent incorrectly

    • trash plugin didn't work properly

    • LMTP: don't add a duplicate Return-Path: header when proxying

    • listescape: don't unescape namespace prefixes

  • I also included a patch from Fedora to close systemd extra sockets that are not configured

  • Updated perl-DBI to 1.619:

    • Fixed the connected method to stop showing the password in trace file

    • Fixed _install_method to set CvFILE correctly (CPAN RT#76296)

    • Fixed SqlEngine "list_tables" (CPAN RT#67223, CPAN RT#69260)

    • Optimized DBI method dispatch

    • Optimized driver access to DBI internal state

    • Optimized driver access to handle data
    • Optimized fetchall_arrayref with hash slice (CPAN RT#76520)

    • Allow renaming columns in fetchall_arrayref hash slices (CPAN RT#76572)

    • Reserved snmp_ and tree_ for DBD::SNMP and DBD::TreeData

Wednesday 25th April 2012

Fedora Project

  • Updated perl-Net-SSLeay to 1.48 in F-17 and Rawhide:

    • Removed unneeded Debian_CPANTS.txt from MANIFEST

    • Fixed incorrect documentation about the best way to call CTX_set_options

    • Fixed problem that caused Undefined subroutine utf8::encode in t/local/33_x509_create_cert.t (on perl 5.6.2)

    • In examples and pod documentation, changed #!/usr/local/bin/perl to #!/usr/bin/perl

    • t/local/06_tcpecho.t now tries a number of ports to bind to until successful

  • Updated smbldap-tools to 0.9.8 in Rawhide:

    • Introduce autoconf (configure.in, Makefile.in and so on)

    • smbldap_tools.pm: use Encode instead of Unicode::MapUTF8

    • smbldap-populate, smbldap_tools.pm: use /nonexistent instead of /dev/null for guest's and computer's homeDirectory

    • smbldap_tools.pm: add read_password() to avoid stty -echo hacks

    • Use /usr/sbin/nscd -i instead of /etc/init.d/nscd

    • smbldap-passwd: do not use permuted -s option for the smbpasswd(1) command-line because the plain-old getopt(3) does not support it

    • Add shadowAccount parameter in smbldap.conf to control whether to treat shadowAccount objectclass and attributes or not

    • Rename smbldap.conf parameters:

      • hash_encrypt -> password_hash

      • crypt_salt_format -> password_crypt_salt_format

    • LDAPv3 Password Modify (RFC 3062) extended operation support when password_hash="exop" in smbldap.conf

    • Use sambaNextRid attribute in sambaDomain entry for the next RID, same as Samba 3.0+ (only when sambaAlgorithmicRidBase attribute does not exist in sambaDomain entry for backward compatibility)

    • smbldap-populate: use Net::LDAP::Entry for populating entries

    • smbldap-usermod: new option: --ou NODE (move user entry to the specified organizational unit)

    • Canonicalize user name to treat the memberUid as case-sensitive attribute (but the uid attribute is case-insensitive)

    • smbldap-useradd: new option: -p (allow to set password from STDIN without verification, e.g. using a pipe)

    • smbldap-useradd: new option: --non-unique (allow the creation of a user account with a duplicate [non-unique] UID)

    • smbldap-populate: create parent entry for $config{usersdn} (and others) if it does not exist (e.g. usersdn="ou=Users,ou=parent,${suffix}" in smbldap.conf)

    • smbldap-config: rename from configure.pl

    • smbldap-populate: create parent entry for $config{sambaUnixIdPooldn} if it does not exist

    • Use Digest::SHA instead of Digest::SHA1 if Perl version > 5.10.0

    • smbldap-usermod: -M, -O, -T option: remove associated attribute when the null value is specified

  • <!> Note: Users that wish to keep using the legacy RID allocation algorithm of Samba 2.x, which was the default in previous versions of smbldap-tools, should run the smbldap-upgrade-0.9.6.pl script after upgrading to this version

Local Packages

  • Bumped and rebuilt curl to stay in sync with the Rawhide build

  • Updated perl-DBI to 1.620:

    • Modified column renaming in fetchall_arrayref, added in 1.619, to work on column index numbers, not names (an incompatible change)

    • Reworked the fetchall_arrayref documentation

    • Hash slices in fetchall_arrayref now detect invalid column names

  • Updated perl-Net-SSLeay to 1.48 as per the Fedora version

  • Updated perl-Params-Check to 0.34:

    • check() now works faster

  • Updated smbldap-tools to 0.9.8 as per the Fedora version

Thursday 26th April 2012

Fedora Project

  • Raised Bug #816544 on perl-AnyEvent regarding circular build dependencies, which led to me becoming co-maintainer of it in Rawhide and doing an update of it to 7.0 there:

    • Child watchers are broken in POE 1.352 (also many earlier versions) and there seems to be no way to work around it, as POE itself is inherently racy: document this regression and add a delay in t/68_poe_03_child.t for the time being

    • New module AnyEvent::IO, a front-end to either a pure-perl synchronous I/O implementation (AnyEvent::IO::Perl), or to the asynchronous I/O extension IO::AIO (AnyEvent::IO::IOAIO)

    • Load /etc/hosts only when DNS has no answer

    • stat /etc/hosts on every access and reload it if it changed

    • Load /etc/hosts via AnyEvent::IO - potentially asynchronous

    • Fix a buggy croak in the dh parameter reading in AnyEvent::TLS

    • AnyEvent::Log log_to_file and log_to_path now use AnyEvent::IO; as a side effect, they now use true appending as opposed to libc appending, and the file might not have been opened when the function returns

    • The default logging level was not properly documented in a variety of places
    • Updated uts46data.pl for unicode 6.1.0

    • Made log messages generated by AnyEvent sub-modules not include the package name any longer, as it will be logged by default already

    • Upgrade to the trick used by common-sense 3.5 to work around extra warning torture/breakage under perl 5.15.x

    • Log messages by AnyEvent are now ucfirst, are usually full sentences and no longer include the package name

    • The storable read type would sometimes throw an exception instead of causing EBADMSG

    • Work around a bug in openssl 1.0.1, which enforces a minimum RSA keysize

  • Whilst doing this update I also prevented the creation of a spurious empty debuginfo sub-package (Bug #815947) and filtered unwanted dependencies on optional event loop back-ends (Bug #815496) and more

  • Built perl-Dancer (1.3095) in Rawhide now that mod_perl is installable again, fixing the circular build dependency issue (Bug #810865)

  • Became owner of perl-Data-Alias in Fedora and updated it to 1.16 in F-16, F-17 and Rawhide:

    • Use supported API to put destructor calls on the save stack (the unsupported way used before was wrong for 64-bit systems on perl 5.13.1 and later)
    • Document the behaviour of "alias return" in more detail

    • Convert .cvsignore to .gitignore

  • Fixed FTBFS issue with perl-Jcode in Rawhide by adding perl(Data::Dumper) as a build requirement

Local Packages

  • Fixed FTBFS issue with perl-Jcode as per the Fedora version

  • Updated perl-version to 0.98, adding a patch to skip tests that fail with Perl < 5.8.8 (CPAN RT#76813)

Friday 27th April 2012

Fedora Project

  • Updated libssh2 in F-17 and Rawhide to fix a multi-arch conflict in libssh2-devel (Bug #816969)

  • Updated perl-Devel-GlobalDestruction to 0.05 in F-17 and Rawhide:

    • Add pure-perl implementation for situations where neither ${^GLOBAL_PHASE} nor XS are available

Local Packages

  • Updated java-1.6.0-sun to Java SE 6 Update 32 (see SunJava6OnFedora)

  • Updated java-1.7.0-oracle to Java SE 7 Update 4 (see OracleJava7OnFedora)

  • Updated libssh2 as per the Fedora version

  • Updated perl-Devel-GlobalDestruction to 0.05 as per the Fedora version

  • Updated perl-version to 0.99, adding patch from CPAN RT#76813 to work around a bug in older perl versions:

    • Missed a patch from bleadperl

Saturday 28th April 2012

Local Packages

  • Updated c-ares to 1.8.0:

    • Added ares_parse_naptr_reply()

    • Handle CNAME-only in ares_parse_aaaa_reply()

    • Support multiple DNS servers on Android
    • Check for __ANDROID__ in addition to ANDROID macro

    • Port numbers: convert them to network order
    • get_iphlpapi_dns_info: fix buffer overrun

    • configure: make CURL_CHECK_DEF ignore leading whitespace

    • Segfault triggered in ares_init_options()

    • ares_getnameinfo's memcpy did not copy enough bytes

    • ares_destroy: fix segfault in ares_destroy_options()

    • CHANGES: generate from script

    • configure: fix symbol hiding usability check

  • Updated perl-Module-Load-Conditional to 0.50 (speed enhancements)

  • Updated perl-Params-Check to 0.36 (more speed enhancements)

Sunday 29th April 2012

Fedora Project

  • Updated perl-Compress-Raw-Bzip2 to 2.052 in F-17 and Rawhide (no changes)

  • Updated perl-Compress-Raw-Lzma to 2.052 in F-17 and Rawhide (fix to allow building with C++)

  • Updated perl-Compress-Raw-Zlib to 2.052 in F-17 and Rawhide (fix build issue when Perl is built with C++)

  • Updated perl-IO-Compress to 2.052 in F-17 and Rawhide:

    • IO::Compress::Zip: force a ZIP64 archive when it contains ≥ 0xFFFF entries

    • Fix typo in POD (CPAN RT#76130)

  • Updated perl-IO-Compress-Lzma to 2.052 in F-17 and Rawhide (no changes)

Local Packages

  • Updated the IO::Compress stack to 2.052 as per the Fedora versions

Monday 30th April 2012

Local Packages

  • Updated perl-Moose to 2.0600:

  • New features:

    • Class::MOP::Class now has methods for introspecting and modifying the overloaded operators for a class

  • Enhancements:

    • The cookbook recipes have all been renamed; instead of numbered recipes (Basics::Recipe1), we now have descriptive names (Basics::Point_AttributesAndSubclassing), which makes it easier for us to add and remove recipes in the future, and makes it a little easier to converse about them, since the name gives us some clue of what they contain

  • Bug Fixes:

    • Re-declaring a class_type or role_type constraint that has already been declared now just returns the original type constraint, rather than replacing the original constraint and ergo losing any coercions that were on the original constraint (CPAN RT#73289)

    • Moose::Exporter now calls init_meta methods in the correct order, when multiple levels of 'also' parameters are specified

    • Moose::Exporter no longer generates init_meta methods in order to apply metaroles, since the metaclass itself isn't guaranteed to exist yet at that point; metaroles are now applied at the end of import, after all user-defined init_meta methods have been called (CPAN RT#51561)

    • Fixed a memory leak that occurred when creating an anonymous class; immutabilizing an anonymous class still leaks memory due to a bug in Eval::Closure, which should hopefully be fixed soon (CPAN RT#74650)

    • Fix a segfault when adding a method to a class that was defined in a package that was deleted
    • Avoid syntax errors on pre-5.14
  • Other:

    • The Test::DependentModules test now covers a much wider range of downstream dependents (all of them in fact, for some definition of "all"), which should allow us to track inadvertent backwards compatibility breakages much more effectively

    • A few test tweaks to avoid spurious failures

Previous Month: March 2012
Next Month: May 2012

Recent