Skip Menu |

This queue is for tickets about the Class-DBI-Plugin-Type CPAN distribution.

Report information
The Basics
Id: 7610
Status: open
Priority: 0/
Queue: Class-DBI-Plugin-Type

People
Owner: Nobody in particular
Requestors: dhoworth [...] mrc-lmb.cam.ac.uk
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: (no value)
Fixed in: (no value)



Subject: won't install without SQLite
Won't install without DBD::SQLite. This is upsetting for two reasons: (1) It's supposed to be a database-independent module! I have a perfectly good mysql so it should install. (2) The dependencies and code are broken: (a) DBD::SQLite isn't listed as a dependency, it's just pulled in by the test program, so cpan can't pull it in for me. (b) The test program thinks it's going to output an error message but it doesn't get that far because it doesn't compile Checking if your kit is complete... Looks good Writing Makefile for Class::DBI::Plugin::Type cp Type.pm blib/lib/Class/DBI/Plugin/Type.pm Manifying blib/man3/Class::DBI::Plugin::Type.3pm /usr/bin/make -- OK Running make test PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/lib/perl/5.6.1 -I/usr/share/perl/5.6.1 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t t/1....Can't locate DBD/SQLite.pm in @INC ==================================================== package DBI::Test; use Test::More; if (!require DBD::SQLite) { plan skip_all => "Couldn't load DBD::SQLite"; }
From: Simon Flack
Hi Dave, [guest - Fri Sep 10 11:55:37 2004]: Show quoted text
> Won't install without DBD::SQLite. This is upsetting for two reasons: > (1) It's supposed to be a database-independent module! I have a > perfectly good mysql so it should install. > (2) The dependencies and code are broken: > (a) DBD::SQLite isn't listed as a dependency, it's just pulled in > by the test program, so cpan can't pull it in for me. > (b) The test program thinks it's going to output an error message > but it doesn't get that far because it doesn't compile
I've taken over maintainership of this module. I'm hoping to release anew version of CDBI::Plugin::Type some time in the next month (probably to coincide with the Maypole release). So I should have this fixed one way or another by then. I'm not sure what the best solution for this is. Either add DBD::SQLite to the dependency list, or skip the tests if DBD::SQLite isn't installed. I suppose there's a third option, which I might use for some of the Maypole dependencies. If the Makefile.PL is run interactively, you could choose NOT to install DBD::SQLite and skip the tests. --simonflk
On Mon Nov 29 15:00:06 2004, SIMONFLK wrote: Show quoted text
> Hi Dave, > > [guest - Fri Sep 10 11:55:37 2004]:
> > Won't install without DBD::SQLite. This is upsetting for two reasons: > > (1) It's supposed to be a database-independent module! I have a > > perfectly good mysql so it should install. > > (2) The dependencies and code are broken: > > (a) DBD::SQLite isn't listed as a dependency, it's just pulled in > > by the test program, so cpan can't pull it in for me. > > (b) The test program thinks it's going to output an error message > > but it doesn't get that far because it doesn't compile
> > I've taken over maintainership of this module. I'm hoping to release > anew version of CDBI::Plugin::Type some time in the next month (probably > to coincide with the Maypole release). So I should have this fixed one > way or another by then. > > I'm not sure what the best solution for this is. Either add DBD::SQLite > to the dependency list, or skip the tests if DBD::SQLite isn't installed. > > I suppose there's a third option, which I might use for some of the > Maypole dependencies. If the Makefile.PL is run interactively, you could > choose NOT to install DBD::SQLite and skip the tests.
It looks as though Simon Cozens’ intention was to skip the tests if DBD::SQLite isn’t installed, as t/1.t begins with: package DBI::Test; use Test::More; if (!require DBD::SQLite) { plan skip_all => "Couldn't load DBD::SQLite"; } The only problem is that require doesn’t return false on failure; it dies. So that should be if (!eval { require DBD::SQLite }).