Provided by: libdbix-class-schema-loader-perl_0.07053-1_all bug

NAME

       DBIx::Class::Schema::Loader::Manual::UpgradingFromV4 - Important Information Related to Upgrading from
       Version 0.04006

What Changed

       •   add_column

           The  new  Loader  detects much more information about columns and sets flags like "is_auto_increment"
           that it didn't set before.

       •   RelBuilder

           The new RelBuilder will give you nicer accessor names for relationships, so you will no  longer  have
           conflicts  between  a  foreign  key  column  and the relationship accessor itself (if the FK is named
           "_id".)

           It will also more correctly infer the relationship type, e.g. some relationships that were previously
           detected as a "has_many" will now be a "might_have" (when it  detects  a  unique  constraint  on  the
           foreign key column.)

           Also  "cascade_delete"  and  "cascade_copy"  are  turned  off  for  by  default  for  "has_many"  and
           "might_have"  relationships,  while  "belongs_to"  relationships  are  created  with  "on_delete   =>
           'CASCADE'" and "on_update => 'CASCADE'" by default. This is overridable via relationship_attrs.

       •   moniker_map

           Table names are now singularized when determining the "Result" class names. So the table "user_roles"
           would have become "UserRoles" in 0.04006 but now becomes "UserRole" instead.

       •   use_namespaces

           Now  defaults  to on. See "use_namespaces" in DBIx::Class::Schema::Loader::Base and "load_namespaces"
           in DBIx::Class::Schema.

       •   Support for more databases

           We now support Microsoft SQL Server and Sybase, and there are also many  improvements  to  the  other
           backends.

Backward Compatibility

       In  backward  compatibility  mode,  the  Loader  will  use the old relationship names and types, will not
       singularize monikers for tables, and "use_namespaces" will be off.

       To control this behavior  see  "naming"  in  DBIx::Class::Schema::Loader::Base  and  "use_namespaces"  in
       DBIx::Class::Schema::Loader::Base.

   Static Schemas
       When  reading  a  "Schema.pm"  from  a  static  schema generated with an 0.04 version of Loader, backward
       compatibility mode will default to on,  unless  overridden  with  the  "naming"  and/or  "use_namespaces"
       attributes.

   Dynamic Schemas
       Dynamic schemas will always by default use 0.04006 mode and have "use_namespaces" off.

       To  upgrade  a  dynamic schema, set the "naming" and "use_namespaces" attributes (which is proxied to the
       loader) in your "Schema.pm":

           __PACKAGE__->naming('current');
           __PACKAGE__->use_namespaces(1);

AUTHORS

       See "AUTHORS" in DBIx::Class::Schema::Loader.

LICENSE

       This library is free software; you can redistribute it and/or modify it under  the  same  terms  as  Perl
       itself.

perl v5.40.1                                       2025-03-22             DBIx::Class::Sc...UpgradingFromV4(3pm)