Merge branch 'exception_interface'
Florian Ragwitz [Tue, 17 Nov 2009 23:00:32 +0000 (23:00 +0000)]
exception_interface:
Use MooseX::Role::WithOverloading.
Add Exception::Interface and Exception::Basic. Make ::Base, ::Go and ::Detach use them.
Create branch exception_interface

1  2 
Makefile.PL

diff --combined Makefile.PL
@@@ -1,28 -1,27 +1,29 @@@
  use strict;
  use warnings;
  use inc::Module::Install 0.87;
 -BEGIN { # Make it easy for newbies
 -    if ($Module::Install::AUTHOR) {
 -        require Module::Install::AuthorRequires;
 -        require Module::Install::CheckConflicts;
 -        require Module::Install::AuthorTests;
 -    }
 +{   # Ensure that these get used - yes, M::I loads them for us, but if you're
 +    # in author mode and don't have them installed, then the error is tres
 +    # cryptic.
 +    no warnings 'redefine';
 +    use Module::Install::AuthorRequires;
 +    use Module::Install::CheckConflicts;
 +    use Module::Install::AuthorTests;
  }
 +
  perl_version '5.008004';
  
  name 'Catalyst-Runtime';
  all_from 'lib/Catalyst/Runtime.pm';
  
  requires 'List::MoreUtils';
 -requires 'namespace::autoclean';
 +requires 'namespace::autoclean' => '0.09';
  requires 'namespace::clean';
  requires 'B::Hooks::EndOfScope' => '0.08';
 -requires 'MooseX::Emulate::Class::Accessor::Fast' => '0.00801';
 +requires 'MooseX::Emulate::Class::Accessor::Fast' => '0.00903';
  requires 'Class::MOP' => '0.83';
 -requires 'Moose' => '0.78';
 -requires 'MooseX::MethodAttributes::Inheritable' => '0.15';
 +requires 'Moose' => '0.90';
 +requires 'MooseX::MethodAttributes::Inheritable' => '0.17';
+ requires 'MooseX::Role::WithOverloading';
  requires 'Carp';
  requires 'Class::C3::Adopt::NEXT' => '0.07';
  requires 'CGI::Simple::Cookie';
@@@ -30,8 -29,8 +31,8 @@@ requires 'Data::Dump'
  requires 'HTML::Entities';
  requires 'HTTP::Body'    => '1.04'; # makes uploadtmp work
  requires 'HTTP::Headers' => '1.64';
 -requires 'HTTP::Request';
 -requires 'HTTP::Response';
 +requires 'HTTP::Request' => '5.814';
 +requires 'HTTP::Response' => '5.813';
  requires 'HTTP::Request::AsCGI' => '0.8';
  requires 'LWP::UserAgent';
  requires 'Module::Pluggable' => '3.9';
@@@ -52,7 -51,6 +53,7 @@@ recommends 'B::Hooks::OP::Check::StashC
  
  test_requires 'Class::Data::Inheritable';
  test_requires 'Test::Exception';
 +test_requires 'Test::More' => '0.88';
  
  # aggregate tests if AGGREGATE_TESTS is set and a recent Test::Aggregate and a Test::Simple it works with is available
  if ($ENV{AGGREGATE_TESTS} && can_use('Test::Simple', '0.88') && can_use('Test::Aggregate', '0.35_05')) {
@@@ -64,8 -62,6 +65,8 @@@ else 
          grep { $_ ne 't/aggregate.t' }
          map  { glob } qw[t/*.t t/aggregate/*.t];
  }
 +author_requires 'CatalystX::LeakChecker', '0.03'; # Skipped if this isn't installed
 +author_requires 'File::Copy::Recursive'; # For http server test
  
  author_tests 't/author';
  author_requires(map {; $_ => 0 } qw(
@@@ -112,7 -108,6 +113,7 @@@ EO
  # NOTE - This is the version number of the _incompatible_ code,
  #        not the version number of the fixed version.
  my %conflicts = (
 +    'Catalyst::Model::Akismet' => '0.02',
      'Catalyst::Component::ACCEPT_CONTEXT' => '0.06',
      'Catalyst::Plugin::ENV' => '9999', # This plugin is just stupid, full stop
                                         # should have been a core fix.
@@@ -151,8 -146,8 +152,8 @@@ sub darwin_check_no_resource_forks 
  
          # TAR on 10.4 wants COPY_EXTENDED_ATTRIBUTES_DISABLE
          # On 10.5 (Leopard) it wants COPYFILE_DISABLE
 -        die("Oh, you got Snow Lepoard, snazzy. Please read the man page for tar to find out if Apple renamed COPYFILE_DISABLE again and fix this Makefile.PL please?\n") if $osx_ver =~ /^10.6/;
 -        my $attr = $osx_ver =~ /^10.5/ ? 'COPYFILE_DISABLE' : 'COPY_EXTENDED_ATTRIBUTES_DISABLE';
 +         die("Oh, you got Ceiling Cat, snazzy. Please read the man page for tar or Google to find out if Apple renamed COPYFILE_DISABLE (it was COPY_EXTENDED_ATTRIBUTES_DISABLE originally) again and fix this Makefile.PL please?\n") if $osx_ver =~ /^10.7/;
 +        my $attr = $osx_ver =~ /^10.(5|6)/  ? 'COPYFILE_DISABLE' : 'COPY_EXTENDED_ATTRIBUTES_DISABLE';
  
          makemaker_args(dist => { PREOP => qq{\@if [ "\$\$$attr" != "true" ]; then}.
                                            qq{ echo "You must set the ENV variable $attr to true,"; }.