On Mon, Dec 09, 2002 at 09:43:41AM -0800, David Dyck wrote:
>
> DBI::Format comes with
>
> DBI-1.32 in lib/DBI/Format.pm as VERSION 11.4
> and
> DBI-Shell-11.9 in lib/DBI/Format.pm as VERSION 11.8
>
> According to the .packlist files DBI installs Format.pm in
> /usr/local/lib/perl5/site_perl/5.9.0/i686-linux/DBI
> but DBI/Shell installs the newer version in
> /usr/local/lib/perl5/site_perl/5.9.0/DBI/Format.pm
>
> In my @INC,
> /usr/local/lib/perl5/site_perl/5.9.0/i686-linux
> (where DBI installs the older Format.pm) comes before
> /usr/local/lib/perl5/site_perl/5.9.0
> (where the newer DBI-Shell is installed)
>
> This causes the older DBI::Format to be used, and CPAN.pm
> to report that an upgrade is in order
>
> Shouldn't both of these packages (DBI and DBI-Shell) install
> DBI::Format in the same location?
It's a side effect of the fact that the DBI-Shell-11.9 distribution
is pure-perl.
> Where is the 'correct' location for DBI::Format?
>
> Also, both the CPAN "r" command and the
> test code described in perldoc CPAN
> perl -MExtUtils::MakeMaker -le \
> 'print MM->parse_version(shift)' \
> DBI-Shell-11.9/lib/DBI/Format/SQLMinus.pm
> report an error in SQLMinus.pm
>
> Could not eval '
> package ExtUtils::MakeMaker::_version;
> no strict;
>
> local $DBI::Format::SQLMinus::VERSION;
> $DBI::Format::SQLMinus::VERSION=undef; do {
> $DBI::Format::SQLMinus::VERSION =
> }; $DBI::Format::SQLMinus::VERSION
> ' in /usr/local/lib/perl5/site_perl/5.9.0/DBI/Format/SQLMinus.pm: syntax
>error at (eval 83) line 8, at EOF
>
> Because it can't determine the version number from the lines
>
> $DBI::Format::SQLMinus::VERSION =
> $DBI::Format::SQLMinus::VERSION =
> (qw$Revision: 11.8 $)[1];
>
> in DBI-Shell-11.9/lib/DBI/Format/SQLMinus.pm
>
> Perldoc Extutils::MakeMaker document the format for the $VERSION
> in the description of VERSION_FROM as needing to be on one line,
> (not the 3 lines in SQLMinus.pm)
The DBI-Shell distribution needs fixing and a new release made.
Hopefully Tom will do that ASAP.
The underlying issue is more tricky. I want to let Tom and others
develop the DBI::Shell and related components faster than I was
making DBI releases. I had planned for Tom's DBI::Shell to also be
released as part of the DBI so people just installing the DBI would
get the benefits of Tom's work.
It turned out that Tom had used a bunch of recent perl features that
would have meant the DBI would no longer pass tests on many systems
(although some would be okay after installing some more modules).
So at the last minute I opted not to include the newer DBI::Shell.
I think Tom is thinking about moving some of the new functionality
into runtime 'plug-in' modules. If the base system can work with
perl 5.005_03 then I'll happily include it in a future DBI release.
The ball is currently in Tom's court.
Tim.