As you may have noticed, there has been a bit of a delay in getting Moose 2 out. We've been doing a lot of testing, and a lot of fixing up of the Moose extensions (and a lot of being busy with things other than Moose), but we're finally ready for a release. Moose-1.9906-TRIAL has just made it to CPAN, and this will hopefully be the last dev release before 2.0000. If you've been holding off on testing the new Moose versions until things settle down and everything works again, now is the time to actually do that. If no serious bugs are reported in the next week or so, Moose 2.0000 will be released on Monday, April 11.
As mentioned earlier, this release includes some major refactorings of the internals. Therefore, a lot of MooseX modules had to be updated to take this into account. All of the latest versions of the MooseX modules should now work with both the current stable release, and the latest dev release of Moose, so you can upgrade all of these without any breakages.
The inverse of this is not true, however - many old versions of Moose extensions will break if you upgrade Moose without also upgrading them. When you upgrade to Moose 1.9906 (or Moose 2.0000), the installation process will warn if there are any outdated modules installed on your system that may stop working with the new Moose. Upgrading these modules is important in order to make sure everything continues to work. To make this process easier, Moose now ships with a script named 'moose-outdated', which scans through your system and prints the names of any modules it finds which conflict with the currently installed version of Moose. After upgrading Moose, a simple 'moose-outdated | cpanm' should bring you up to date. This functionality will continue to be provided and kept up to date in future versions of Moose.
Finally, I'd just like to highlight again the issue that Dave brought up in the previous post - make sure you aren't expecting role attributes to pick up the attribute metaclass of the class they're being applied to, as this will no longer happen. Read the previous post for more details about this.
Comments, questions, or issues with the Moose release candidate should be directed to #moose on irc.perl.org, the moose@perl.org mailing list, or Moose's issue tracker on rt.perl.org.
As mentioned earlier, this release includes some major refactorings of the internals. Therefore, a lot of MooseX modules had to be updated to take this into account. All of the latest versions of the MooseX modules should now work with both the current stable release, and the latest dev release of Moose, so you can upgrade all of these without any breakages.
The inverse of this is not true, however - many old versions of Moose extensions will break if you upgrade Moose without also upgrading them. When you upgrade to Moose 1.9906 (or Moose 2.0000), the installation process will warn if there are any outdated modules installed on your system that may stop working with the new Moose. Upgrading these modules is important in order to make sure everything continues to work. To make this process easier, Moose now ships with a script named 'moose-outdated', which scans through your system and prints the names of any modules it finds which conflict with the currently installed version of Moose. After upgrading Moose, a simple 'moose-outdated | cpanm' should bring you up to date. This functionality will continue to be provided and kept up to date in future versions of Moose.
Finally, I'd just like to highlight again the issue that Dave brought up in the previous post - make sure you aren't expecting role attributes to pick up the attribute metaclass of the class they're being applied to, as this will no longer happen. Read the previous post for more details about this.
Comments, questions, or issues with the Moose release candidate should be directed to #moose on irc.perl.org, the moose@perl.org mailing list, or Moose's issue tracker on rt.perl.org.
