[Dbix-class] Strange failure in DBIx::Class

Ovid publiustemp-dbic at yahoo.com
Mon Dec 14 15:08:38 GMT 2009


Trying to print the DBIx::Class version prior to loading it's components is silly:

    #!/usr/bin/env perl

    package The::Schema;
    print $DBIx::Class::VERSION,$/;
    use base qw/DBIx::Class::Schema::Loader/;

But I'm not expecting it to be a fatal error:

  Can't locate object method "mk_classdata" via package "DBIx::Class::Schema" at /home/poec01/trunk/Pips3/deps/lib/perl5/DBIx/Class/Schema.pm line 14.

In fact, "use base" happens at compile-time, not runtime.  What gives?  And if I move the print *after* the use base line, everything works fine.

I can't seem to replicate this strange behavior with other modules, but it fails with DBIx::Class on Solaris (dbic: 0.08010) and OS X (dbic: 0.8114).

Cheers,
Ovid
--
Buy the book         - http://www.oreilly.com/catalog/perlhks/
Tech blog            - http://use.perl.org/~Ovid/journal/
Twitter              - http://twitter.com/OvidPerl
Official Perl 6 Wiki - http://www.perlfoundation.org/perl6




More information about the DBIx-Class mailing list