On Mon, 09 Aug 2010, David E. Wheeler wrote:
> On Aug 9, 2010, at 4:21 PM, Jan Dubois wrote:
>
> > On Mon, 09 Aug 2010, David E. Wheeler wrote:
> >> Tim, I think we're ready for another dev release, especially since I added
> >> this test to the MANIFEST.
> >
> > Running tests on the latest ActivePerl shows 2 issues:
> >
> > 1) t/01basics.t fails to load DBD::Oracle (because I don't have the Oracle
> > client
> > libraries installed on the test machine). This produces a popup that the
> > user
> > has to explicitly dismiss. The test then passes without errors.
>
> Why does it try to load DBD::Oracle? The DBI has no dependency on any DBDs
> other than those it ships with.
DBI->installed_versions will attempt to load *all* installed drivers.
But I see now that that test is only executed if you are running from a GIT
or SVN checkout, so maybe it doesn't really matter. If you want to add
the safeguard for it, here is a tested patch (the untested version was missing
one pair of parens):
Index: t/01basics.t
===================================================================
--- t/01basics.t (revision 14317)
+++ t/01basics.t (working copy)
@@ -290,6 +290,10 @@
SKIP: {
skip 'developer tests', 4 unless -d ".svn" || -d ".git";
+ if ($^O eq "MSWin32" && eval { require Win32API::File }) {
+
Win32API::File::SetErrorMode(Win32API::File::SEM_FAILCRITICALERRORS());
+ }
+
print "Test DBI->installed_versions (for @drivers)\n";
print "(If one of those drivers, or the configuration for it, is bad\n";
print "then these tests can kill or freeze the process here. That's not
the DBI's fault.)\n";
Cheers,
-Jan