added warning about additional trailing _id stripping (to be removed after 0.05003...
Robert Buels [Fri, 19 Feb 2010 01:11:54 +0000 (17:11 -0800)]
Changes
lib/DBIx/Class/Schema/Loader/RelBuilder.pm

diff --git a/Changes b/Changes
index 1a41b81..e4a7470 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,8 @@
 Revision history for Perl extension DBIx::Class::Schema::Loader
 
+        - fix missing trailing _id stripping for some relationship
+          names (rbuels)
+
 0.05002  2010-02-15 10:17:47
         - support for SQLAnywhere via DBD::SQLAnywhere and ODBC
         - fix picking up quoted tables for SQLite (RT#54538) patch from schwern
index 4f8625f..b36b62b 100644 (file)
@@ -247,10 +247,16 @@ sub generate_code {
         # col names to distinguish
         if($counters{$remote_moniker} > 1) {
             my $colnames = q{_} . join(q{_}, @$local_cols);
-            $local_relname = lc($local_table) . $colnames;
+            my $old_relname = #< TODO: remove me after 0.05003 release
+                $local_relname = lc($local_table) . $colnames;
             $local_relname =~ s/_id$//; #< strip off any trailing _id
             $local_relname = $self->_inflect_plural( $local_relname );
             $remote_relname .= $colnames if keys %cond > 1;
+
+            # TODO: remove me after 0.05003 release
+            $old_relname = $self->_inflect_plural( $old_relname );
+            warn __PACKAGE__." $VERSION: warning, stripping trailing _id from ${remote_class} relation '$old_relname', renaming to '$local_relname'.  This behavior is new as of 0.05003.\n";
+
         } else {
             $local_relname = $self->_inflect_plural(lc $local_table);
         }