Possible to set locale in IC::DateTime extra => {} config
[dbsrgits/DBIx-Class.git] / Makefile.PL
index 351dcaa..4443062 100644 (file)
@@ -20,7 +20,7 @@ requires 'DBI'                       => 1.40;
 requires 'Module::Find'              => 0;
 requires 'Class::Inspector'          => 0;
 requires 'Class::Accessor::Grouped'  => 0.05002;
-requires 'JSON::Any'                 => 1.00; 
+requires 'JSON::Any'                 => 1.17;
 requires 'Scope::Guard'              => 0.03;
 requires 'Path::Class'               => 0;
 requires 'List::Util'                => 1.19;
@@ -37,7 +37,7 @@ test_requires 'Test::Deep'          => 0;
 
 install_script 'script/dbicadmin';
 
-tests "t/*.t t/*/*.t";
+tests_recursive 't';
 
 # re-build README and require CDBI modules for testing if we're in a checkout
 
@@ -64,14 +64,44 @@ auto_provides;
 auto_install;
 
 # Have all prerequisites, check DBD::SQLite sanity
-{
+if (! $ENV{DBICTEST_NO_SQLITE_CHECK} ) {
+
   my $pid = fork();
   if (not defined $pid) {
       die "Unable to fork(): $!";
   }
   elsif (! $pid) {
+
+      # Win32 does not have real fork()s so a segfault will bring
+      # everything down. Warn about it.
+      if ($^O eq 'MSWin32') {
+        print <<'EOW';
+
+######################################################################
+#                                                                    #
+# A short stress-testing of DBD::SQLite will follow. If you have a   #
+# buggy library this might very well be the last text you will see   #
+# before the installation silently terminates. If this happens it    #
+# would mean that you are running a buggy version of DBD::SQLite     #
+# known to randomly segfault on errors. Even if you have the latest  #
+# CPAN module version, the system sqlite3 dynamic library might have #
+# been compiled against an older buggy sqlite3 dev library (oddly    #
+# DBD::SQLite will prefer the system library against the one bundled #
+# with it). You are strongly advised to resolve this issue before    #
+# proceeding.                                                        #
+#                                                                    #
+# If this happens to you (this text is the last thing you see), and  #
+# you just want to install this module without worrying about the    #
+# tests (which will almost certainly fail) - set the environment     #
+# variable DBICTEST_NO_SQLITE_CHECK to a true value and try again.   #
+#                                                                    #
+######################################################################
+
+EOW
+      }
+
       require DBI;
-      for (1 .. 10) {
+      for (1 .. 100) {
           my $dbh;
           $dbh = DBI->connect ('dbi:SQLite::memory:', undef, undef, {
               AutoCommit => 1,
@@ -92,14 +122,16 @@ auto_install;
       if ($sig == 11) {
           warn (<<EOE);
 
-############################### WARNING ###################################
-#                                                                         #
-# You are running a buggy version of DBD::SQLite known to randomly        #
-# segfault on errors. Even if you have the latest CPAN module version,    #
-# the actual sqlite3.so might have been compiled against an older buggy   #
-# sqlite3 dev library. You are strongly advised to update DBD::SQLite.    #
-#                                                                         #
-###########################################################################
+############################### WARNING #################################
+#                                                                       #
+# You are running a buggy version of DBD::SQLite known to randomly      #
+# segfault on errors.  Even if you have the latest CPAN module version, #
+# the sqlite3 dynamic library on this system might have been compiled   #
+# against an older buggy sqlite3 dev library (oddly DBD::SQLite will    #
+# prefer the system library against the one bundled with it). You are   #
+# strongly advised to resolve this issue before proceeding.             #
+#                                                                       #
+#########################################################################
 
 EOE
           my $ans = prompt (
@@ -145,6 +177,3 @@ if ($Module::Install::AUTHOR) {
   ];
   Meta->write;
 }
-
-
-