[rt #75560] don't fallback to using DynaLoader when XSLoader fails
authorTony Cook <tony@develop-help.com>
Fri, 9 Mar 2012 08:15:32 +0000 (19:15 +1100)
committerTony Cook <tony@develop-help.com>
Fri, 9 Mar 2012 08:15:32 +0000 (19:15 +1100)
This was masking errors when the loadable object failed to load for
some reason other than XSLoader being unavailable.

The alternative was to only eval the load of XSLoader and keep the
fallback, but XSLoader has been core perl for a while.

30 files changed:
Changes
CountColor/CountColor.pm
DynTest/DynTest.pm
FT2/Changes
FT2/FT2.pm
FT2/Makefile.PL
Flines/Flines.pm
GIF/Changes
GIF/GIF.pm
GIF/Makefile.PL
ICO/ICO.pm
Imager.pm
JPEG/Changes
JPEG/JPEG.pm
JPEG/Makefile.PL
Makefile.PL
Mandelbrot/Mandelbrot.pm
PNG/Changes
PNG/Makefile.PL
PNG/PNG.pm
SGI/SGI.pm
T1/Changes
T1/Makefile.PL
T1/T1.pm
TIFF/Changes
TIFF/Makefile.PL
TIFF/TIFF.pm
W32/Changes
W32/Makefile.PL
W32/W32.pm

diff --git a/Changes b/Changes
index 765f83b..8087847 100644 (file)
--- a/Changes
+++ b/Changes
@@ -8,6 +8,11 @@ Imager release history.  Older releases can be found in Changes.old
    rather than the heading you can find them under.
    https://rt.cpan.org/Ticket/Display.html?id=71495
 
+ - Imager (and the bundled dynamic modules) no longer fallback to
+   using DynaLoader if loading via XSLoader fails.
+   For the bundled modules this could hide useful error messages.
+   https://rt.cpan.org/Ticket/Display.html?id=75560
+
 Imager 0.88 - 22 Feb 2012
 ===========
 
index b59a069..6d37af2 100644 (file)
@@ -6,18 +6,11 @@ require Exporter;
 @EXPORT_OK = 'count_color';
 
 BEGIN {
-  $VERSION = "0.01";
+  $VERSION = "0.02";
   @ISA = qw(Exporter);
   
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::CountColor', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::CountColor $VERSION;
-  };
+  require XSLoader;
+  XSLoader::load('Imager::CountColor', $VERSION);
 }
 
 1;
index 05f04a1..cf795f1 100644 (file)
@@ -4,17 +4,10 @@ use Imager;
 use vars qw($VERSION @ISA);
 
 BEGIN {
-  $VERSION = "0.01";
+  $VERSION = "0.02";
   
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::Filter::DynTest', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::Filter::DynTest $VERSION;
-  };
+  require XSLoader;
+  XSLoader::load('Imager::Filter::DynTest', $VERSION);
 }
 
 
index 27a58ad..561bc69 100644 (file)
@@ -1,3 +1,9 @@
+Imager-Font-FT2 0.85
+====================
+
+ - no longer fallback to using DynaLoader to load the XS code
+   https://rt.cpan.org/Ticket/Display.html?id=75560
+
 Imager-Font-FT2 0.84
 ====================
 
index bc8216a..aa83aab 100644 (file)
@@ -5,17 +5,10 @@ use vars qw($VERSION @ISA);
 @ISA = qw(Imager::Font);
 
 BEGIN {
-  $VERSION = "0.84";
-
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::Font::FT2', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::Font::FT2 $VERSION;
-  };
+  $VERSION = "0.85";
+
+  require XSLoader;
+  XSLoader::load('Imager::Font::FT2', $VERSION);
 }
 
 *_first = \&Imager::Font::_first;
index 676ae6e..076e5a3 100644 (file)
@@ -61,6 +61,7 @@ else {
     $opts{PREREQ_PM} =
       {
        @Imager_req,
+       XSLoader => 0,
       };
   }
 }
index e7049d9..9b7ab04 100644 (file)
@@ -4,17 +4,10 @@ use Imager;
 use vars qw($VERSION @ISA);
 
 BEGIN {
-  $VERSION = "0.02";
+  $VERSION = "0.03";
   
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::Filter::Flines', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::Filter::Flines $VERSION;
-  };
+  require XSLoader;
+  XSLoader::load('Imager::Filter::Flines', $VERSION);
 }
 
 Imager->register_filter(type=>'flines',
index 3853104..4c827ce 100644 (file)
@@ -1,3 +1,9 @@
+Imager-File-GIF 0.83
+====================
+
+ - no longer fallback to using DynaLoader to load the XS code
+   https://rt.cpan.org/Ticket/Display.html?id=75560
+
 Imager-File-GIF 0.82
 ====================
 
index 0c40a6f..1d27469 100644 (file)
@@ -4,18 +4,10 @@ use Imager;
 use vars qw($VERSION @ISA);
 
 BEGIN {
-  $VERSION = "0.82";
-
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::File::GIF', $VERSION);
-    1;
-  } or do {
-print STDERR "Falling back to DynaLoader ($@)\n";
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::File::GIF $VERSION;
-  };
+  $VERSION = "0.83";
+
+  require XSLoader;
+  XSLoader::load('Imager::File::GIF', $VERSION);
 }
 
 Imager->register_reader
index 7b30f0e..9a74696 100644 (file)
@@ -61,6 +61,7 @@ else {
     $opts{PREREQ_PM} =
       {
        @Imager_req,
+       XSLoader => 0,
       };
   }
 }
index 0b5d84e..2bc8530 100644 (file)
@@ -4,17 +4,10 @@ use Imager;
 use vars qw($VERSION @ISA);
 
 BEGIN {
-  $VERSION = "0.02";
+  $VERSION = "0.03";
   
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::File::ICO', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::File::ICO $VERSION;
-  };
+  require XSLoader;
+  XSLoader::load('Imager::File::ICO', $VERSION);
 }
 
 Imager->register_reader
index 1f2aff6..1142943 100644 (file)
--- a/Imager.pm
+++ b/Imager.pm
@@ -149,15 +149,8 @@ BEGIN {
     @ISA = qw(Exporter);
   }
   $VERSION = '0.88';
-  eval {
-    require XSLoader;
-    XSLoader::load(Imager => $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager $VERSION;
-  }
+  require XSLoader;
+  XSLoader::load(Imager => $VERSION);
 }
 
 my %formats_low;
index 3b52d50..b9c2c40 100644 (file)
@@ -1,3 +1,9 @@
+Imager-File-JPEG 0.83
+=====================
+
+ - no longer fallback to using DynaLoader to load the XS code
+   https://rt.cpan.org/Ticket/Display.html?id=75560
+
 Imager-File-JPEG 0.82
 =====================
 
index 04d35a5..798b4f9 100644 (file)
@@ -4,17 +4,10 @@ use Imager;
 use vars qw($VERSION @ISA);
 
 BEGIN {
-  $VERSION = "0.82";
-
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::File::JPEG', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::File::JPEG $VERSION;
-  };
+  $VERSION = "0.83";
+
+  require XSLoader;
+  XSLoader::load('Imager::File::JPEG', $VERSION);
 }
 
 Imager->register_reader
index f07424a..26c50d3 100644 (file)
@@ -61,6 +61,7 @@ else {
     $opts{PREREQ_PM} =
       {
        @Imager_req,
+       XSLoader => 0,
       };
   }
 }
index b9ce176..0f7a98b 100644 (file)
@@ -186,6 +186,7 @@ my %opts=
    { 
     'Test::More' => 0.47,
     'Scalar::Util' => 1.00,
+    'XSLoader'    => 0,
    },
    TYPEMAPS       => \@typemaps,
   );
index 0351f41..4b99c4e 100644 (file)
@@ -4,17 +4,10 @@ use Imager;
 use vars qw($VERSION @ISA);
 
 BEGIN {
-  $VERSION = "0.02";
+  $VERSION = "0.03";
   
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::Filter::Mandelbrot', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::Filter::Mandelbrot $VERSION;
-  };
+  require XSLoader;
+  XSLoader::load('Imager::Filter::Mandelbrot', $VERSION);
 }
 
 sub _mandelbrot {
index bad7892..00283e6 100644 (file)
@@ -1,3 +1,9 @@
+Imager-File-PNG 0.83
+====================
+
+ - no longer fallback to using DynaLoader to load the XS code
+   https://rt.cpan.org/Ticket/Display.html?id=75560
+
 Imager-File-PNG 0.82
 ====================
 
index f951903..b610d96 100644 (file)
@@ -61,6 +61,7 @@ else {
     $opts{PREREQ_PM} =
       {
        @Imager_req,
+       XSLoader => 0,
       };
   }
 }
index 7fe9611..f3ce983 100644 (file)
@@ -4,17 +4,10 @@ use Imager;
 use vars qw($VERSION @ISA);
 
 BEGIN {
-  $VERSION = "0.82";
-
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::File::PNG', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::File::PNG $VERSION;
-  };
+  $VERSION = "0.83";
+
+  require XSLoader;
+  XSLoader::load('Imager::File::PNG', $VERSION);
 }
 
 Imager->register_reader
index 53f3179..3a3bf90 100644 (file)
@@ -4,17 +4,10 @@ use Imager;
 use vars qw($VERSION @ISA);
 
 BEGIN {
-  $VERSION = "0.02";
+  $VERSION = "0.03";
   
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::File::SGI', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::File::SGI $VERSION;
-  };
+  require XSLoader;
+  XSLoader::load('Imager::File::SGI', $VERSION);
 }
 
 Imager->register_reader
index b5344e5..23c7f6d 100644 (file)
@@ -1,3 +1,9 @@
+Imager::Font::T1 1.017
+======================
+
+ - no longer fallback to using DynaLoader to load the XS code
+   https://rt.cpan.org/Ticket/Display.html?id=75560
+
 Imager::Font::T1 1.016
 ======================
 
index 5bf9112..e358767 100644 (file)
@@ -61,6 +61,7 @@ else {
     $opts{PREREQ_PM} =
       {
        @Imager_req,
+       XSLoader => 0,
       };
   }
 }
index c04c760..374fb5a 100644 (file)
--- a/T1/T1.pm
+++ b/T1/T1.pm
@@ -5,17 +5,10 @@ use vars qw(@ISA $VERSION);
 @ISA = qw(Imager::Font);
 
 BEGIN {
-  $VERSION = "1.016";
-
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::Font::T1', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::Font::T1 $VERSION;
-  };
+  $VERSION = "1.017";
+
+  require XSLoader;
+  XSLoader::load('Imager::Font::T1', $VERSION);
 }
 
 
index b0ff1a3..37a8707 100644 (file)
@@ -1,3 +1,9 @@
+Imager-File-TIFF 0.83
+=====================
+
+ - no longer fallback to using DynaLoader to load the XS code
+   https://rt.cpan.org/Ticket/Display.html?id=75560
+
 Imager-File-TIFF 0.82
 =====================
 
index f389802..f3804b2 100644 (file)
@@ -61,6 +61,7 @@ else {
     $opts{PREREQ_PM} =
       {
        @Imager_req,
+       XSLoader => 0,
       };
   }
 }
index 6eec9fe..55e3ca9 100644 (file)
@@ -4,17 +4,10 @@ use Imager;
 use vars qw($VERSION @ISA);
 
 BEGIN {
-  $VERSION = "0.82";
-
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::File::TIFF', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::File::TIFF $VERSION;
-  };
+  $VERSION = "0.83";
+
+  require XSLoader;
+  XSLoader::load('Imager::File::TIFF', $VERSION);
 }
 
 Imager->register_reader
index b209c49..0dfa2fc 100644 (file)
@@ -1,3 +1,9 @@
+Imager-Font-W32 0.84
+====================
+
+ - no longer fallback to using DynaLoader to load the XS code
+   https://rt.cpan.org/Ticket/Display.html?id=75560
+
 Imager-Font-W32 0.83
 ====================
 
index d701f6a..986674a 100644 (file)
@@ -61,6 +61,7 @@ else {
     $opts{PREREQ_PM} =
       {
        @Imager_req,
+       XSLoader => 0,
       };
   }
 }
index 6dca27f..745bcc8 100644 (file)
@@ -5,17 +5,10 @@ use vars qw($VERSION @ISA);
 @ISA = qw(Imager::Font);
 
 BEGIN {
-  $VERSION = "0.83";
-
-  eval {
-    require XSLoader;
-    XSLoader::load('Imager::Font::W32', $VERSION);
-    1;
-  } or do {
-    require DynaLoader;
-    push @ISA, 'DynaLoader';
-    bootstrap Imager::Font::W32 $VERSION;
-  };
+  $VERSION = "0.84";
+
+  require XSLoader;
+  XSLoader::load('Imager::Font::W32', $VERSION);
 }
 
 # called by Imager::Font::new()