Wednesday 13th April 2011
Fedora Project
Discovered that the perl package in Rawhide and F-15 didn't "provide" perl(UNIVERSAL) and perl(DB) (it should, as it contains those modules), whilst a bunch of other packages [falsely] claimed to do so; this led to some weird problems with yum:
ERROR with rpm_check_debug vs depsolve: perl(UNIVERSAL) is needed by perl-DBI-1.616-3.fc16.x86_64 Complete! (1, [u'Please report this error in http://yum.baseurl.org/report'])
Local Packages
New package perl-Path-Class (0.23)
Updated dovecot to 2.0.12:
doveadm: added "move" command for moving mails between mailboxes
virtual: added support for "+mailbox" entries that clear \Recent flag from messages (default is to preserve them)
dbox: fixes to handling of external attachments
dsync: more fixes to avoid hanging with remote syncs
dsync: many other syncing/correctness fixes
doveconf: v2.0.10 and v2.0.11 didn't output plugin {} section right
Updated perl-Module-Refresh to 0.14:
- Actually remove subroutines from the symbol table
Updated perl-Moose to 2.0000:
- API Changes:
Roles now have their own default attribute metaclass to use during application to a class, rather than just using the class's attribute_metaclass; this is also overridable via ::MetaRole, with the applied_attribute key in the role_metaroles hashref
The internal code used to generate inlined methods (accessor, constructor, etc.) has been massively rewritten; MooseX modules that do inlining will almost certainly need to be updated as well
The RegexpRef type constraint now accepts regular expressions blessed into other classes, such as those found in pluggable regexp engines
The 'Object' constraint no longer rejects objects whose implementation is a regular expression
- New Features:
The Moose::Meta::Role::Attribute class now has an original_role method, which returns the role that first defined an attribute
Moose::Util::MetaRole will make sure that the class to which you're applying metaroles or base class roles can actually have them applied; if not (it's not a Moose class, it has a non-Moose metaclass, etc.), then it gives a useful error message
- Enhancements:
We now load the roles needed for native delegations only as needed, which speeds up the compilation time for Moose itself
- Bug Fixes:
Reverse the order that Moose::Exporter 'also' exports are dispatched; when trying to re-export from a package that itself exported a modified set of Moose sugar, you'd get the original Moose sugar instead of the overrides
- Don't initialize lazy attributes with defaults in the constructor (for immutable classes)
- When reinitializing meta objects for classes and roles, we failed to preserve roles and role applications, which led to weird bugs
- Reinitializing anonymous roles used to accidentally clear out the role's stash in some circumstances
The Int type constraint now rejects integers with trailing newlines
When a role had its own applied_attribute metaclass (usually from MetaRole application), that metaclass would get lost when that role participated in role composition; it was also lost if that role was consumed by some other role - both of these cases have been fixed; attributes are always applied with the applied_attribute metaclass of the role that originally defined them
- Other:
The entire Class::MOP distribution has been merged with Moose; in the future, the Class::MOP code itself will be merged into Moose, and eventually the Class::MOP namespace will disappear entirely, but for the current release, we have simply changed how Class::MOP is distributed
Switched to Dist::Zilla for development
- Fix some indexing issues
- Fix a few issues with the conflict checking stuff
Fix generation of CCFLAGS
- Update conflicts list
Moose::Manual::Support now explicitly states when major releases are allowed to happen (January, April, July, or October)
- API Changes:
I added this patch to suppress 'Subroutine redefined' warnings with Perl < 5.8.8:
diff -up Moose-2.0000/lib/Moose/Exporter.pm.orig Moose-2.0000/lib/Moose/Exporter.pm --- Moose-2.0000/lib/Moose/Exporter.pm.orig 2011-04-12 05:51:18.000000000 +0100 +++ Moose-2.0000/lib/Moose/Exporter.pm 2011-04-12 21:41:37.809272162 +0100 @@ -9,13 +9,15 @@ BEGIN { use strict; use warnings; -use XSLoader; - BEGIN { + eval q{ + require XSLoader; + no warnings 'redefined'; XSLoader::load( 'Moose', $Moose::Exporter::{VERSION} ? ${ $Moose::Exporter::{VERSION} } : () ); + }; } use Class::MOP;
Since this package now contains the current Class::MOP, I dropped the standalone perl-Class-MOP package, which is now obsolete
Updated perl-UNIVERSAL-require to fix bogus provide of perl(UNIVERSAL) with rpm 4.9 onwards
Rebuilt perl-Array-Compare to make sure it still worked with the new Moose