./databases/p5-DBIx-Class-Schema-Loader, Dynamic definition of a DBIx::Class::Schema

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 0.07036, Package name: p5-DBIx-Class-Schema-Loader-0.07036, Maintainer: pkgsrc-users

DBIx::Class::Schema::Loader automates the definition of a
DBIx::Class::Schema by scanning table schemas and setting up columns and
primary keys.

DBIx::Class::Schema::Loader supports MySQL, Postgres, SQLite and DB2.
See DBIx::Class::Schema::Loader::Generic for more, and
DBIx::Class::Schema::Loader::Writing for notes on writing your own
db-specific subclass for an unsupported db.

This module requires DBIx::Class 0.05 or later, and obsoletes
DBIx::Class::Loader for DBIx::Class version 0.05 and later.

While on the whole, the bare table definitions are fairly straightforward,
relationship creation is somewhat heuristic, especially in the choosing
of relationship types, join types, and relationship names. The relationships
generated by this module will probably never be as well-defined as
hand-generated ones. Because of this, over time a complex project will
probably wish to migrate off of L<DBIx::Class::Schema::Loader>.

It is designed more to get you up and running quickly against an existing
database, or to be effective for simple situations, rather than to be what
you use in the long term for a complex database/project.

Required to run:
[lang/perl5] [security/p5-Digest-MD5] [devel/p5-Task-Weaken] [devel/p5-File-Slurp] [devel/p5-Data-Dump] [devel/p5-Scalar-List-Utils] [devel/p5-Class-Inspector] [devel/p5-Carp-Clan] [devel/p5-List-MoreUtils] [devel/p5-PathTools] [textproc/p5-Lingua-EN-Inflect-Number] [devel/p5-Class-Accessor-Grouped] [devel/p5-MRO-Compat] [devel/p5-Scope-Guard] [devel/p5-Class-C3-Componentised] [databases/p5-DBIx-Class] [devel/p5-namespace-clean] [devel/p5-Sub-Name] [devel/p5-Hash-Merge] [devel/p5-Try-Tiny] [devel/p5-Class-Unload] [textproc/p5-Lingua-EN-Inflect-Phrase] [textproc/p5-Lingua-EN-Tagger] [textproc/p5-String-CamelCase] [textproc/p5-String-ToIdentifier-EN]

Required to build:
[textproc/p5-Pod-Simple] [databases/p5-DBI] [databases/p5-DBD-SQLite] [devel/p5-Test-Exception] [devel/p5-Config-General] [devel/p5-Test-Warn] [devel/p5-Test-Simple] [devel/p5-Config-Any] [devel/p5-Moose] [databases/p5-DBIx-Class-IntrospectableM2M] [devel/p5-File-Path] [devel/p5-namespace-autoclean] [devel/p5-MooseX-NonMoose] [devel/p5-MooseX-MarkAsMethods]

Master sites: (Expand)

SHA1: 0b5a586f53a94de6e8d53534edc4fdcd1c739eea
RMD160: 729c044e29c56d129ba75ceb15a1e07ce34ce646
Filesize: 202.075 KB

Version history: (Expand)

CVS history: (Expand)

   2013-09-05 20:30:40 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
Update to 0.07036:

0.07036  2013-07-08
        - Fix stray comma in Pg on_delete/on_update => CASCADE (RT#84706)
        - Fix MySQL enums with empty strings and leading/trailing quotes (RT#86091)
        - Fix "table" parameter in col_accessor_map callback (RT#84050)
        - Fix ordering issues in Pg loader
   2013-07-03 18:52:36 by Jens Rehsack | Files touched by this commit (2) | Package updated
Log message:
Updating package for CPAN distribution DBIx-Class-Schema-Loader in
databases/p5-DBIx-Class-Schema-Loader from 0.07033nb2 to 0.07035.

pkgsrc changes:
- adjust dependencies

Upstream changes:
0.07035  2013-02-26
        - Release 0.07034_01 with a stable version number. 0.07034 is
          skipped due to the improper dev release versioning.

0.07034_01  2013-01-21
        - Fix fixture generation helper to work with older DBD::SQLite versions

0.07034_01  2013-01-16
        - MSSQL: on > 2000 use schema_name() instead of user_name() to detect
          current schema and query sys.schemas instead of sysusers.
        - SQL Anywhere: introspect ON DELETE/UPDATE rules, default is now
          RESTRICT. is_deferrable still defaults to 1
        - rewrite pg fk introspection to use catalog views instead of
          information_schema as information_schema does not work for readonly
        - add rel_type param for relationship_attrs coderef
        - pass link table details to rel_name_map for many_to_many bridges
   2013-05-31 14:42:58 by Thomas Klausner | Files touched by this commit (2880)
Log message:
Bump all packages for perl-5.18, that
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package

Like last time, where this caused no complaints.
   2012-10-03 23:59:10 by Thomas Klausner | Files touched by this commit (2798)
Log message:
Bump all packages that use perl, or depend on a p5-* package, or
are called p5-*.

I hope that's all of them.
   2012-10-02 23:25:56 by Aleksej Saushev | Files touched by this commit (323)
Log message:
Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
   2012-09-10 15:48:46 by Jens Rehsack | Files touched by this commit (2)
Log message:
Updating package for CPAN module DBIx::Class::Schema::Loader in
databases/p5-DBIx-Class-Schema-Loader from 0.07031 to 0.07033.

upstream changes:
0.07033  2012-09-09 16:11:47
        - more thoroughly document the new behavior for relationship
          attributes under "relationship_attrs" in ::Base POD
        - add a loud WARNING to Makefile.PL about the new behavior for
          relationship attributes

0.07032  2012-09-09 13:17:20
        - SQLite: detect is_deferrable for inline FKs
        - support coderefs for relationship_attrs
   2012-09-07 12:00:34 by Jens Rehsack | Files touched by this commit (2) | Package updated
Log message:
Updating package for CPAN module DBIx::Class::Schema::Loader in
databases/p5-DBIx-Class-Schema-Loader from 0.07012 to 0.07031.

pkgsrc changes:
- adjusting dependencies according to distribution's meta information

Upstream changes since 0.07012:
0.07031  2012-09-06 15:07:08
        - fix 02pod.t failure due to lack of =encoding utf8 statement (patch by
          Marcel Gruenauer) (RT#79481)

0.07030  2012-09-06 03:27:09
        - allow user to set qualify_objects=0 in multischema configurations

0.07029  2012-09-05 16:41:56
        - Oracle: introspect ON DELETE and DEFERRABLE FK clauses
        - Oracle WARNING: on_delete is now 'NO ACTION' by default, not
          'CASCADE'. on_update is now 'NO ACTION' by default (Oracle does not
          have update rules, this was done to preserve the behavior of the
          schema when cross-deploying to SQLite.) is_deferrable is now
          0 by default, not 1.
        - DB2: introspect ON DELETE/UPDATE FK clauses
        - DB2 WARNING: the default for on_delete/on_update is now 'NO ACTION'
          not 'CASCADE', the default for is_deferrable is still 1 because DB2
          does not have deferrable constraints.
        - SQLite: introspect ON DELETE/UPDATE and DEFERRABLE FK clauses
        - SQLite WARNING: the default for on_delete/on_update is now 'NO ACTION'
          not 'CASCADE', and the default for is_deferrable is now 0 not 1.

0.07028  2012-08-30 05:32:42
        - MSSQL: introspect ON DELETE/UPDATE clauses for foreign keys
        - MSSQL WARNING: the default for on_delete/on_update is now 'NO ACTION'
          not 'CASCADE'.

0.07027  2012-08-26 22:39:45
        - PostgreSQL: introspect ON DELETE/UPDATE clauses for foreign keys and
          the DEFERRABLE clause.
        - PostgreSQL WARNING: the default for on_delete/on_update attributes for
          belongs_to relationships is now 'NO ACTION' not 'CASCADE! The default
          for is_deferrable is now 0 not 1.

0.07026  2012-08-26 01:01:26
        - MySQL: introspect ON DELETE/UPDATE clauses for foreign keys.
        - MySQL WARNING: the default on_delete/on_update attributes for
          belongs_to relationships is now RESTRICT, *NOT* CASCADE! This is
          overridable via the relationship_attrs option.

0.07025  2012-06-08 22:48:05
        - support SQL Server 2000 again (broken in 0.07011)
        - some slight optimization for SQL Server driver

0.07024  2012-05-08 15:35:16
        - work around broken keyseq in DBD::Pg foreign_key_info (RT#77062)

0.07023  2012-05-05 11:44:15
        - properly order FK columns when using base ::DBI loader (SineSwiper)
        - bump Class::Inspector dep to 1.27 due to test failures with earlier
          versions on perl >= 5.15.7 (RT#74236)

0.07022  2012-04-08 12:11:00
        - do separate queries for default_value on Sybase ASE as some servers
          can't join to that table (pcmantz) (RT#74170)
        - set correct size for nchar/nvarchar columns for Sybase ASE,
          depending on @@ncharsize

0.07021  2012-04-04 23:47:34
        - use ::Schema::connect instead of ::Schema::connection in
          make_schema_at (RT#74175)
        - register sources on the schema class, never the instance, regardless
          of how the connection is made for dynamic schemas

0.07020  2012-03-31 21:34:06
        - fix some mro issues under perl 5.8

0.07019  2012-03-28 17:23:09
        - fix some errors due to case issues (RT#75805)

0.07018  2012-03-27 05:55:10
        - skip dbicdump tests on Win32 due to test fails (RT#75732)
        - fix undefined warnings for DBDs without schemas
        - work around ORA-24345 from $dbh->column_info
        - fix spelling mistake in Base POD (RT#74796)

0.07017  2012-02-07 07:23:48
        - *EXPERIMENTAL* support for dumping PostgreSQL schemas inside of a
        - use DBI table_info/column_info REMARKS field if/where available for
          table/column comments (SineSwiper)
        - better compatibility with more DBDs (SineSwiper)

0.07015  2011-12-09 10:36:17
        - generate many_to_many bridges for targets of link tables

0.07014  2011-11-18 17:06:34
        - fix a bug in the automatic multischema clashing moniker disambiguation
          code that overwrote $loader->moniker_parts

0.07013  2011-11-17 23:12:47
        - automatically prefix database/schema to clashing monikers for
          the same table name in multischema configurations
   2011-11-14 10:39:38 by Hiramatsu Yoshifumi | Files touched by this commit (2) | Package updated
Log message:
Update p5-DBIx-Class-Schema-Loader to 0.07012.

Changes from previous:
0.07012  2011-11-09 15:16:29
        - as of 0.07011 all callbacks receive a ::Loader::Table or
          interface-compatible object instead of the table name, this object
          stringifies to the table name (RT#72260)
        - fix a bug in dynamic schema_base_class/schema_components
          implementation that ran the connection method twice on subsequent
        - use a temp file for filter_generated_code with a string program name
          instead of IPC::Open2, which hangs on Win32 (RT#72226)
        - previous version referred to the wrong RT# for the uniq_to_primary
          change, it is actually (RT#51696)

0.07011  2011-11-01 09:00:00
        - add -I option to dbicdump
        - do not delete default custom content comment and ending 1; from custom
          content in files that are being renamed (RT#70507)
        - use MooseX::MarkAsMethods instead of namespace::autoclean for the
          use_moose option, this protects operator overloads, only_autoclean
          option added for the old behavior
        - add experimental naming=v8 mode with better CamelCase identifier
          support, relationship naming and conversion of non-identifier chars
        - add naming => { force_ascii => 1 } option for Unicode database names
        - implement schema_base_class and schema_components for dynamic and
          working schemas
        - remove dependency on File::Slurp
        - allow the constraint and exclude options to be used simultaneously
        - fix Oracle multi-db_schema unique detection (RT#70851)
        - fix Oracle common tests fail with multi_schema due to not resetting
          the preserve_case option after the preserve_case tests (RT#70829)
        - handle <type> DEFAULT NULL for Pg
        - handle boolean DEFAULT 0::boolean for Pg
        - config file support for dbicdump script (alnewkirk)
        - added filter_generated_code option (RT#53841)
        - generic table and column comments support
        - MySQL table and column comments support
        - support DOS line endings on *nix and *nix line ending on Win32
        - add quiet option
        - $schema->loader is now a public method
        - add schema_components option
        - sort relationships so they always come out in the same order
        - also sort unique constraints so they always come out in the same order
        - multi db_schema support with cross-schema rels (RT#39478)
        - added moniker_parts option for name clashes in multi db_schema setups
        - add rel_name_map option
        - fix the decimal data type for MS Access over ODBC
        - fix enum/set detection for MySQL (RT#68717)
        - fix is_nullable detection on MS Access
        - remove '$table has no primary key' warning
        - added uniq_to_primary option to promote unique keys to primary keys
        - support arrayrefs for result_namespace and resultset_namespace
        - add naming => { monikers => 'preserve' } or 'singular'/'plural' to
          control moniker inflection (RT#44935)
        - add naming => { column_accessors => 'preserve' } to not normalize
          CamelCase column names to lower case for accessors (RT#64668)
        - support quoted PostgreSQL schema names with special chars (RT#64766)
        - automatically turn on quoting for MySQL (RT#60469)
        - become utf8-aware (RT#67920)
        - handle duplicate relationship names (RT#64041)
        - fix a bug in Sybase ASE foreign key detection
        - generate POD for result_base_class, additional_classes,
          additional_base_classes, left_base_classes, components,
          result_components_map, result_roles, result_roles_map, unique
          constraints, set_primary_key and table
        - rename result_component_map to result_components_map (old name still
        - fix accessor collision detection for methods from
          result_components_map components
        - add result_roles and result_roles_map options
        - fix for mysql rel detection in mixed-case tables on mixed-case
          filesystems (OSX and Windows)
        - support for DBD::Firebird
        - support for unicode Firebird data types
        - handle "use warnings FATAL => 'all';" in custom/external \ 
        - for dynamic schemas, if the naming option is set, will automatically
          turn on use_namespaces=1 as well. Set use_namespaces=0 to disable
          this behavior (RT#59849)

0.07010  2011-03-04 08:26:31
        - add result_component_map option

0.07009  2011-02-25 11:06:51
        - fix a syntax error in MS Access ADO driver

0.07008  2011-02-25 01:54:43
        - rename column_accessor_map to col_accessor_map, the old alias still
        - support MSSQL over DBD::ADO
        - support for MS Access over DBD::ODBC and DBD::ADO

0.07007  2011-02-15 10:00:07
        - bump DBIx::Class dep to 0.08127
        - fix MSSQL data types for native client and EasySoft driver

0.07006  2011-02-01 02:18:32
        - turn unloading of RelBuilder temp classes back on, now with proper
          check for class existance using Class::Inspector->loaded
        - bump up dep on namespace::clean to avoid breakage with earlier
          versions (RT#65149)

0.07005  2011-01-25 23:07:55
        - support extra connect_info options like quote_char for dbicdump
        - fix breakage on perl 5.8.x related to unloading temporary classes

0.07004  2011-01-24 03:43:05
        - fix bug with result class methods being cached on in a closure instead
          of the object, which breaks for multiple dynamic schemas in a single
          perl instance

0.07003  2011-01-21 06:43:05
        - fix relname/method collisions (RT#62648)
        - fix fully qualified component classes (RT#62624)
        - improve sybase/mssql db_schema detection
        - remove MooseX::NonMoose from Schema files under use_moose=1
        - better _tables_list for Sybase ASE
        - add datetime_undef_if_invalid => 1 for MySQL datetime data types
          (RT#64820) This behavior can be turned off by passing
          datetime_undef_if_invalid=0 as a loader option
        - added column_accessor_map option
        - Preserve relationship names when redumping and another FK is added
        - Remove resultset_components as ResultSetManager is deprecated
        - Fix a fail when very old Moose/CMOP is installed
        - Added warning for column-accessor collisions, doc section in ::Base
          ("COLUMN ACCESSOR COLLISIONS") and the col_collision_map option.
        - Handle column accessor collisions with UNIVERSAL methods
        - Generate custom_type_name hint for PostgreSQL enums, as used
          by very recent SQL::Translator
        - Added support for PostgreSQL enum types
        - Added table/column comment support for Oracle
        - Fix missing require (RT#62072)