Release 0.08193
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class.pm
index cc63fab..8f00e30 100644 (file)
@@ -3,6 +3,18 @@ package DBIx::Class;
 use strict;
 use warnings;
 
+our $VERSION;
+# Always remember to do all digits for the version even if they're 0
+# i.e. first release of 0.XX *must* be 0.XX000. This avoids fBSD ports
+# brain damage and presumably various other packaging systems too
+
+# $VERSION declaration must stay up here, ahead of any other package
+# declarations, as to not confuse various modules attempting to determine
+# this ones version, whether that be s.c.o. or Module::Metadata, etc
+$VERSION = '0.08193';
+
+$VERSION = eval $VERSION if $VERSION =~ /_/; # numify for warning-free dev releases
+
 BEGIN {
   package DBIx::Class::_ENV_;
 
@@ -21,6 +33,12 @@ BEGIN {
     : sub () { 0 }
   ;
 
+  # There was a brief period of p5p insanity when $@ was invisible in a DESTROY
+  *INVISIBLE_DOLLAR_AT = ($] >= 5.013001 and $] <= 5.013007)
+    ? sub () { 1 }
+    : sub () { 0 }
+  ;
+
   # During 5.13 dev cycle HELEMs started to leak on copy
   *PEEPEENESS = (defined $ENV{DBICTEST_ALL_LEAKS}
     # request for all tests would force "non-leaky" illusion and vice-versa
@@ -41,13 +59,13 @@ BEGIN {
       else { 0 }
     }
   ) ? sub () { 1 } : sub () { 0 };
+
 }
 
 use mro 'c3';
 
 use DBIx::Class::Optional::Dependencies;
 
-use vars qw($VERSION);
 use base qw/DBIx::Class::Componentised DBIx::Class::AccessorGroup/;
 use DBIx::Class::StartupCheck;
 
@@ -66,13 +84,6 @@ sub mk_classaccessor {
 
 sub component_base_class { 'DBIx::Class' }
 
-# Always remember to do all digits for the version even if they're 0
-# i.e. first release of 0.XX *must* be 0.XX000. This avoids fBSD ports
-# brain damage and presumably various other packaging systems too
-$VERSION = '0.08190';
-
-$VERSION = eval $VERSION if $VERSION =~ /_/; # numify for warning-free dev releases
-
 sub MODIFY_CODE_ATTRIBUTES {
   my ($class,$code,@attrs) = @_;
   $class->mk_classdata('__attr_cache' => {})
@@ -144,7 +155,7 @@ See L<DBIx::Class::ResultSource> for docs on defining result classes.
   __PACKAGE__->table('artist');
   __PACKAGE__->add_columns(qw/ artistid name /);
   __PACKAGE__->set_primary_key('artistid');
-  __PACKAGE__->has_many(cds => 'MyApp::Schema::Result::CD');
+  __PACKAGE__->has_many(cds => 'MyApp::Schema::Result::CD', 'artistid');
 
   1;
 
@@ -334,6 +345,8 @@ dwc: Daniel Westermann-Clark <danieltwc@cpan.org>
 
 dyfrgi: Michael Leuchtenburg <michael@slashhome.org>
 
+felliott: Fitz Elliott <fitz.elliott@gmail.com>
+
 freetime: Bill Moseley <moseley@hank.org>
 
 frew: Arthur Axel "fREW" Schmidt <frioux@gmail.com>
@@ -354,6 +367,8 @@ ilmari: Dagfinn Ilmari MannsE<aring>ker <ilmari@ilmari.org>
 
 initself: Mike Baas <mike@initselftech.com>
 
+ironcamel: Naveed Massjouni <naveedm9@gmail.com>
+
 jawnsy: Jonathan Yu <jawnsy@cpan.org>
 
 jasonmay: Jason May <jason.a.may@gmail.com>