[Catalyst-commits] r11004 - in tags: . Catalyst-Model-DBIC-Schema Catalyst-Model-DBIC-Schema/0.12 Catalyst-Model-DBIC-Schema/0.12/lib Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC Catalyst-Model-DBIC-Schema/0.12/t Catalyst-Model-DBIC-Schema/0.16 Catalyst-Model-DBIC-Schema/0.16/lib Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC Catalyst-Model-DBIC-Schema/0.16/t Catalyst-Model-DBIC-Schema/0.17_01 Catalyst-Model-DBIC-Schema/0.17_01/lib Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC Catalyst-Model-DBIC-Schema/0.17_01/t Catalyst-Model-DBIC-Schema/0.18 Catalyst-Model-DBIC-Schema/0.18/lib Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC Catalyst-Model-DBIC-Schema/0.18/t Catalyst-Model-DBIC-Schema/0.20 Catalyst-Model-DBIC-Schema/0.20/lib Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC Catalyst-Model-DBIC-Schema/0.20/t

t0m at dev.catalyst.perl.org t0m at dev.catalyst.perl.org
Wed Jul 29 22:06:10 GMT 2009


Author: t0m
Date: 2009-07-29 22:06:07 +0000 (Wed, 29 Jul 2009)
New Revision: 11004

Added:
   tags/Catalyst-Model-DBIC-Schema/
   tags/Catalyst-Model-DBIC-Schema/0.12/
   tags/Catalyst-Model-DBIC-Schema/0.12/Build.PL
   tags/Catalyst-Model-DBIC-Schema/0.12/Changes
   tags/Catalyst-Model-DBIC-Schema/0.12/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.12/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/SchemaLoader.pm
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.12/t/
   tags/Catalyst-Model-DBIC-Schema/0.12/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.12/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.12/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.12/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.12/t/05testapp.t
   tags/Catalyst-Model-DBIC-Schema/0.16/
   tags/Catalyst-Model-DBIC-Schema/0.16/Build.PL
   tags/Catalyst-Model-DBIC-Schema/0.16/Changes
   tags/Catalyst-Model-DBIC-Schema/0.16/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.16/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.16/t/
   tags/Catalyst-Model-DBIC-Schema/0.16/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.16/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.16/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.16/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.16/t/05testapp.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/Build.PL
   tags/Catalyst-Model-DBIC-Schema/0.17_01/Changes
   tags/Catalyst-Model-DBIC-Schema/0.17_01/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.17_01/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/05testapp.t
   tags/Catalyst-Model-DBIC-Schema/0.18/
   tags/Catalyst-Model-DBIC-Schema/0.18/Build.PL
   tags/Catalyst-Model-DBIC-Schema/0.18/Changes
   tags/Catalyst-Model-DBIC-Schema/0.18/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.18/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.18/t/
   tags/Catalyst-Model-DBIC-Schema/0.18/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.18/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.18/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.18/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.18/t/05testapp.t
   tags/Catalyst-Model-DBIC-Schema/0.20/
   tags/Catalyst-Model-DBIC-Schema/0.20/Changes
   tags/Catalyst-Model-DBIC-Schema/0.20/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.20/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.20/README
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.20/t/
   tags/Catalyst-Model-DBIC-Schema/0.20/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.20/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.20/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.20/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.20/t/05testapp.t
Removed:
   tags/Catalyst-Model-DBIC-Schema/0.12/
   tags/Catalyst-Model-DBIC-Schema/0.12/Build.PL
   tags/Catalyst-Model-DBIC-Schema/0.12/Changes
   tags/Catalyst-Model-DBIC-Schema/0.12/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.12/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/SchemaLoader.pm
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.12/t/
   tags/Catalyst-Model-DBIC-Schema/0.12/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.12/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.12/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.12/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.12/t/05testapp.t
   tags/Catalyst-Model-DBIC-Schema/0.16/
   tags/Catalyst-Model-DBIC-Schema/0.16/Build.PL
   tags/Catalyst-Model-DBIC-Schema/0.16/Changes
   tags/Catalyst-Model-DBIC-Schema/0.16/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.16/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.16/t/
   tags/Catalyst-Model-DBIC-Schema/0.16/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.16/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.16/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.16/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.16/t/05testapp.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/Build.PL
   tags/Catalyst-Model-DBIC-Schema/0.17_01/Changes
   tags/Catalyst-Model-DBIC-Schema/0.17_01/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.17_01/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.17_01/t/05testapp.t
   tags/Catalyst-Model-DBIC-Schema/0.18/
   tags/Catalyst-Model-DBIC-Schema/0.18/Build.PL
   tags/Catalyst-Model-DBIC-Schema/0.18/Changes
   tags/Catalyst-Model-DBIC-Schema/0.18/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.18/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.18/t/
   tags/Catalyst-Model-DBIC-Schema/0.18/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.18/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.18/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.18/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.18/t/05testapp.t
   tags/Catalyst-Model-DBIC-Schema/0.20/
   tags/Catalyst-Model-DBIC-Schema/0.20/Changes
   tags/Catalyst-Model-DBIC-Schema/0.20/MANIFEST.SKIP
   tags/Catalyst-Model-DBIC-Schema/0.20/Makefile.PL
   tags/Catalyst-Model-DBIC-Schema/0.20/README
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/
   tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/Schema.pm
   tags/Catalyst-Model-DBIC-Schema/0.20/t/
   tags/Catalyst-Model-DBIC-Schema/0.20/t/01use.t
   tags/Catalyst-Model-DBIC-Schema/0.20/t/02pod.t
   tags/Catalyst-Model-DBIC-Schema/0.20/t/03podcoverage.t
   tags/Catalyst-Model-DBIC-Schema/0.20/t/04kwalitee.t
   tags/Catalyst-Model-DBIC-Schema/0.20/t/05testapp.t
Log:
Bah, unfuck tags directory - I failed up update so never saw the delete. I also lose. Whoever ports to git is gonna have to do some fun grafting :/ Reverse merge as per r10999

Copied: tags/Catalyst-Model-DBIC-Schema (from rev 10972, tags/Catalyst-Model-DBIC-Schema)

Copied: tags/Catalyst-Model-DBIC-Schema/0.12 (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/Build.PL
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/Build.PL	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/Build.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,24 +0,0 @@
-use strict;
-use Module::Build;
-
-my %arguments = (
-    license            => 'perl',
-    module_name        => 'Catalyst::Model::DBIC::Schema',
-    requires           => {
-        'DBIx::Class'           => 0.05007,
-        'Catalyst'              => 5.64,
-        'UNIVERSAL::require'    => 0.10,
-        'Class::Data::Accessor' => 0.02,
-        'Class::Accessor::Fast' => 0.22,
-    },
-    recommends         => {
-        'DBIx::Class::Schema::Loader' => '0.02007',
-    },
-    build_requires     => {
-        'Test::More'            => 0.32,
-    },
-    create_makefile_pl => 'passthrough',
-    create_readme      => 1,
-);
-
-Module::Build->new(%arguments)->create_build_script;

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/Build.PL (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/Build.PL)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/Build.PL	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/Build.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,24 @@
+use strict;
+use Module::Build;
+
+my %arguments = (
+    license            => 'perl',
+    module_name        => 'Catalyst::Model::DBIC::Schema',
+    requires           => {
+        'DBIx::Class'           => 0.05007,
+        'Catalyst'              => 5.64,
+        'UNIVERSAL::require'    => 0.10,
+        'Class::Data::Accessor' => 0.02,
+        'Class::Accessor::Fast' => 0.22,
+    },
+    recommends         => {
+        'DBIx::Class::Schema::Loader' => '0.02007',
+    },
+    build_requires     => {
+        'Test::More'            => 0.32,
+    },
+    create_makefile_pl => 'passthrough',
+    create_readme      => 1,
+);
+
+Module::Build->new(%arguments)->create_build_script;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/Changes
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/Changes	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,41 +0,0 @@
-Revision history for Perl extension Catalyst::Model::DBIC::Schema
-
-0.12
-        - SYNOPSIS improved substantially to help newbies get started
-
-0.11  Sun Mar 26 17:22:31 UTC 2006
-        - Removed on_connect_do config setting (it was only out
-          in public for 4 days...).
-        - Support for on_connect_do and sql_maker options as part
-          of connect_info
-
-0.10  Wed Mar 22 07:06:02 UTC 2006
-        - Added on_connect_do config setting
-        - Added convenience method for ->schema->storage from paulm
-
-0.08  Tue Feb 28 00:04:16 UTC 2006
-        - Bumped D::C::Schema::Loader recommendation to 0.02003
-          (should have been done last release)
-        - Removed the ->require stuff added in 0.07, it doesn't
-          do what it is supposed to do.  For now, users can layer
-          at the Schema::Loader level rather than at Model.
-
-0.07  Sun Feb 19 21:50:18 UTC 2006
-        - bugfix for ::SchemaLoader::Foo password argument, and
-          switch to connect_info argument of new Schema::Loader
-        - Added ->require for source classes, so that you can
-          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
-          generated MyApp::Model::Foo::Bar.
-
-0.06  Sat Feb 18 19:05:17 UTC 2006
-        - Fix simple pod-related bug introduced in last rev
-        - Added optional test that uses the helpers
-
-0.05  Fri Feb 17 20:52:21 UTC 2006
-        - Stop showing the template pod in pod tools and cpan,
-          per Gavin's email.
-        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
-          subtle issues under mod_perl engines.
-
-0.04  Mon Feb 13 04:22:49 UTC 2006
-        - First public release

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/Changes (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/Changes)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/Changes	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,41 @@
+Revision history for Perl extension Catalyst::Model::DBIC::Schema
+
+0.12
+        - SYNOPSIS improved substantially to help newbies get started
+
+0.11  Sun Mar 26 17:22:31 UTC 2006
+        - Removed on_connect_do config setting (it was only out
+          in public for 4 days...).
+        - Support for on_connect_do and sql_maker options as part
+          of connect_info
+
+0.10  Wed Mar 22 07:06:02 UTC 2006
+        - Added on_connect_do config setting
+        - Added convenience method for ->schema->storage from paulm
+
+0.08  Tue Feb 28 00:04:16 UTC 2006
+        - Bumped D::C::Schema::Loader recommendation to 0.02003
+          (should have been done last release)
+        - Removed the ->require stuff added in 0.07, it doesn't
+          do what it is supposed to do.  For now, users can layer
+          at the Schema::Loader level rather than at Model.
+
+0.07  Sun Feb 19 21:50:18 UTC 2006
+        - bugfix for ::SchemaLoader::Foo password argument, and
+          switch to connect_info argument of new Schema::Loader
+        - Added ->require for source classes, so that you can
+          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
+          generated MyApp::Model::Foo::Bar.
+
+0.06  Sat Feb 18 19:05:17 UTC 2006
+        - Fix simple pod-related bug introduced in last rev
+        - Added optional test that uses the helpers
+
+0.05  Fri Feb 17 20:52:21 UTC 2006
+        - Stop showing the template pod in pod tools and cpan,
+          per Gavin's email.
+        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
+          subtle issues under mod_perl engines.
+
+0.04  Mon Feb 13 04:22:49 UTC 2006
+        - First public release

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/MANIFEST.SKIP
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/MANIFEST.SKIP	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,28 +0,0 @@
-# Avoid version control files.
-\bRCS\b
-\bCVS\b
-,v$
-\B\.svn\b
-
-# Avoid Makemaker generated and utility files.
-\bMakefile$
-\bblib
-\bMakeMaker-\d
-\bpm_to_blib$
-\bblibdirs$
-^MANIFEST\.SKIP$
-
-# Avoid Module::Build generated and utility files.
-\bBuild$
-\b_build
-
-# Avoid temp and backup files.
-~$
-\.tmp$
-\.old$
-\.bak$
-\#$
-\b\.#
-
-# avoid dist files
-\.tar\.gz$

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/MANIFEST.SKIP (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/MANIFEST.SKIP)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/MANIFEST.SKIP	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,28 @@
+# Avoid version control files.
+\bRCS\b
+\bCVS\b
+,v$
+\B\.svn\b
+
+# Avoid Makemaker generated and utility files.
+\bMakefile$
+\bblib
+\bMakeMaker-\d
+\bpm_to_blib$
+\bblibdirs$
+^MANIFEST\.SKIP$
+
+# Avoid Module::Build generated and utility files.
+\bBuild$
+\b_build
+
+# Avoid temp and backup files.
+~$
+\.tmp$
+\.old$
+\.bak$
+\#$
+\b\.#
+
+# avoid dist files
+\.tar\.gz$

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/Makefile.PL
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/Makefile.PL	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,31 +0,0 @@
-# Note: this file was auto-generated by Module::Build::Compat version 0.03
-    
-    unless (eval "use Module::Build::Compat 0.02; 1" ) {
-      print "This module requires Module::Build to install itself.\n";
-      
-      require ExtUtils::MakeMaker;
-      my $yn = ExtUtils::MakeMaker::prompt
-	('  Install Module::Build now from CPAN?', 'y');
-      
-      unless ($yn =~ /^y/i) {
-	die " *** Cannot install without Module::Build.  Exiting ...\n";
-      }
-      
-      require Cwd;
-      require File::Spec;
-      require CPAN;
-      
-      # Save this 'cause CPAN will chdir all over the place.
-      my $cwd = Cwd::cwd();
-      my $makefile = File::Spec->rel2abs($0);
-      
-      CPAN::Shell->install('Module::Build::Compat')
-	or die " *** Cannot install without Module::Build.  Exiting ...\n";
-      
-      chdir $cwd or die "Cannot chdir() back to $cwd: $!";
-    }
-    eval "use Module::Build::Compat 0.02; 1" or die $@;
-    use lib '_build/lib';
-    Module::Build::Compat->run_build_pl(args => \@ARGV);
-    require Module::Build;
-    Module::Build::Compat->write_makefile(build_class => 'Module::Build');

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/Makefile.PL (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/Makefile.PL)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/Makefile.PL	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,31 @@
+# Note: this file was auto-generated by Module::Build::Compat version 0.03
+    
+    unless (eval "use Module::Build::Compat 0.02; 1" ) {
+      print "This module requires Module::Build to install itself.\n";
+      
+      require ExtUtils::MakeMaker;
+      my $yn = ExtUtils::MakeMaker::prompt
+	('  Install Module::Build now from CPAN?', 'y');
+      
+      unless ($yn =~ /^y/i) {
+	die " *** Cannot install without Module::Build.  Exiting ...\n";
+      }
+      
+      require Cwd;
+      require File::Spec;
+      require CPAN;
+      
+      # Save this 'cause CPAN will chdir all over the place.
+      my $cwd = Cwd::cwd();
+      my $makefile = File::Spec->rel2abs($0);
+      
+      CPAN::Shell->install('Module::Build::Compat')
+	or die " *** Cannot install without Module::Build.  Exiting ...\n";
+      
+      chdir $cwd or die "Cannot chdir() back to $cwd: $!";
+    }
+    eval "use Module::Build::Compat 0.02; 1" or die $@;
+    use lib '_build/lib';
+    Module::Build::Compat->run_build_pl(args => \@ARGV);
+    require Module::Build;
+    Module::Build::Compat->write_makefile(build_class => 'Module::Build');

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib)

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst)

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper)

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,126 +0,0 @@
-package Catalyst::Helper::Model::DBIC::Schema;
-
-use strict;
-use warnings;
-use Carp;
-
-=head1 NAME
-
-Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
-
-=head1 SYNOPSIS
-
-  script/create.pl model Foo DBIC::Schema Foo::SchemaClass [ connect_info arguments ]
-
-  Where:
-    Foo is the short name for the Model class being generated
-    Foo::SchemaClass is the fully qualified classname of your Schema,
-      which isa DBIx::Class::Schema defined elsewhere.
-    connect_info arguments are the same as what DBIx::Class::Schema::connect
-      expects, and are storage_type-specific.  For DBI-based storage, these
-      arguments are the dsn, username, password, and connect options,
-      respectively.
-
-=head1 TYPICAL EXAMPLES
-
-  script/myapp_create.pl model Foo DBIC::Schema FooSchema dbi:mysql:foodb myuname mypass '{ AutoCommit => 1 }'
-
-  # -or, if the schema already has connection info and you want to re-use that:
-  script/myapp_create.pl model Foo DBIC::Schema FooSchema
-
-=head1 DESCRIPTION
-
-Helper for the DBIC Schema Models.
-
-=head2 METHODS
-
-=head3 mk_compclass
-
-=cut
-
-sub mk_compclass {
-    my ( $self, $helper, $schema_class, @connect_info) = @_;
-
-    $helper->{schema_class} = $schema_class || '';
-
-    if(@connect_info) {
-        $helper->{setup_connect_info} = 1;
-        for(@connect_info) {
-            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
-        }
-        $helper->{connect_info} = \@connect_info;
-    }
-
-    my $file = $helper->{file};
-    $helper->render_file( 'compclass', $file );
-}
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>,
-L<Catalyst::Helper::Model::DBIC::SchemaLoader>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__DATA__
-
-=begin pod_to_ignore
-
-__compclass__
-package [% class %];
-
-use strict;
-use base 'Catalyst::Model::DBIC::Schema';
-
-__PACKAGE__->config(
-    schema_class => '[% schema_class %]',
-    [% IF setup_connect_info %]connect_info => [
-        [% FOREACH arg = connect_info %][% arg %],
-        [% END %]
-    ],[% END %]
-);
-
-=head1 NAME
-
-[% class %] - Catalyst DBIC Schema Model
-
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-L<Catalyst::Model::DBIC::Schema> Model using schema
-L<[% schema_class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,126 @@
+package Catalyst::Helper::Model::DBIC::Schema;
+
+use strict;
+use warnings;
+use Carp;
+
+=head1 NAME
+
+Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
+
+=head1 SYNOPSIS
+
+  script/create.pl model Foo DBIC::Schema Foo::SchemaClass [ connect_info arguments ]
+
+  Where:
+    Foo is the short name for the Model class being generated
+    Foo::SchemaClass is the fully qualified classname of your Schema,
+      which isa DBIx::Class::Schema defined elsewhere.
+    connect_info arguments are the same as what DBIx::Class::Schema::connect
+      expects, and are storage_type-specific.  For DBI-based storage, these
+      arguments are the dsn, username, password, and connect options,
+      respectively.
+
+=head1 TYPICAL EXAMPLES
+
+  script/myapp_create.pl model Foo DBIC::Schema FooSchema dbi:mysql:foodb myuname mypass '{ AutoCommit => 1 }'
+
+  # -or, if the schema already has connection info and you want to re-use that:
+  script/myapp_create.pl model Foo DBIC::Schema FooSchema
+
+=head1 DESCRIPTION
+
+Helper for the DBIC Schema Models.
+
+=head2 METHODS
+
+=head3 mk_compclass
+
+=cut
+
+sub mk_compclass {
+    my ( $self, $helper, $schema_class, @connect_info) = @_;
+
+    $helper->{schema_class} = $schema_class || '';
+
+    if(@connect_info) {
+        $helper->{setup_connect_info} = 1;
+        for(@connect_info) {
+            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
+        }
+        $helper->{connect_info} = \@connect_info;
+    }
+
+    my $file = $helper->{file};
+    $helper->render_file( 'compclass', $file );
+}
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>,
+L<Catalyst::Helper::Model::DBIC::SchemaLoader>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__DATA__
+
+=begin pod_to_ignore
+
+__compclass__
+package [% class %];
+
+use strict;
+use base 'Catalyst::Model::DBIC::Schema';
+
+__PACKAGE__->config(
+    schema_class => '[% schema_class %]',
+    [% IF setup_connect_info %]connect_info => [
+        [% FOREACH arg = connect_info %][% arg %],
+        [% END %]
+    ],[% END %]
+);
+
+=head1 NAME
+
+[% class %] - Catalyst DBIC Schema Model
+
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+L<Catalyst::Model::DBIC::Schema> Model using schema
+L<[% schema_class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/SchemaLoader.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/SchemaLoader.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/SchemaLoader.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,177 +0,0 @@
-package Catalyst::Helper::Model::DBIC::SchemaLoader;
-
-use strict;
-use warnings;
-use Carp;
-
-=head1 NAME
-
-Catalyst::Helper::Model::DBIC::SchemaLoader - Helper for AutoLoaded DBIC Schema Models
-
-=head1 SYNOPSIS
-
-  script/myapp_create.pl model Foo DBIC::SchemaLoader [ connect info arguments ]
-
-  Where:
-    Foo is the short name for the Model class being generated
-    connect_info arguments are the same as what DBIx::Class::Schema::connect
-      expects, and are storage_type-specific.  For DBI-based storage, these
-      arguments are the dsn, username, password, and connect options,
-      respectively.
-
-=head1 TYPICAL EXAMPLE
-
-  script/myapp_create.pl model Foo DBIC::SchemaLoader dbi:mysql:foodb myuname mypass '{ AutoCommit => 1 }'
-
-=head1 DESCRIPTION
-
-This helper generates two classes:
-
-First, it generates a L<DBIx::Class::Schema::Loader> class at
-F<lib/MyApp/SchemaLoader/Foo.pm> based on your supplied dsn/user/pass.
-
-Then, it generates a L<Catalyst::Model::DBIC::Schema> at
-F<lib/MyApp/M/Foo.pm>, which references the above-generated loader.
-
-Models generated by this Helper require the seperate package
-L<DBIx::Class::Schema::Loader> to be installed.  It is on the recommended
-list for this package, but is not required for installation.
-
-=head2 METHODS
-
-=head3 mk_compclass
-
-=cut
-
-sub mk_compclass {
-    my ($self, $helper, @connect_info) = @_;
-
-    for(@connect_info) {
-        $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
-    }
-
-    $helper->{loader_class} = $helper->{class};
-    $helper->{loader_class} =~ s/\:\:M(?:odel)?\:\:/::SchemaLoader::/;
-    my @loader_parts = split(/\:\:/, $helper->{loader_class});
-    my $loader_file_part = pop @loader_parts;
-
-    my $loader_dir  = File::Spec->catfile( $helper->{base}, 'lib', @loader_parts );
-    my $loader_file = File::Spec->catfile( $loader_dir, $loader_file_part . '.pm' );
-
-    $helper->mk_dir($loader_dir);
-    $helper->{connect_info} = \@connect_info;
-
-    $helper->mk_dir( $loader_dir );
-    $helper->render_file( 'loaderclass', $loader_file );
-
-
-    my $file = $helper->{file};
-    $helper->render_file( 'compclass', $file );
-}
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>,
-L<Catalyst::Helper::Model::DBIC::Schema>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__DATA__
-
-=begin pod_to_ignore
-
-__loaderclass__
-package [% loader_class %];
-
-use strict;
-use base qw/DBIx::Class::Schema::Loader/;
-
-__PACKAGE__->load_from_connection(
-    connect_info => [
-        [% FOREACH arg = connect_info %][% arg %],
-        [% END %]
-    ],
-    relationships => 1,
-    # debug => 1,
-);
-
-=head1 NAME
-
-[% loader_class %] - Loader-generated DBIx::Class::Schema class
-
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__compclass__
-package [% class %];
-
-use strict;
-use base 'Catalyst::Model::DBIC::Schema';
-
-__PACKAGE__->config(
-    schema_class => '[% loader_class %]',
-);
-
-=head1 NAME
-
-[% class %] - Catalyst DBIC Schema Model
-
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-L<Catalyst::Model::DBIC::Schema> Model using L<DBIx::Class::Schema::Loader>
-generated Schema: L<[% loader_class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/SchemaLoader.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/SchemaLoader.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/SchemaLoader.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Helper/Model/DBIC/SchemaLoader.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,177 @@
+package Catalyst::Helper::Model::DBIC::SchemaLoader;
+
+use strict;
+use warnings;
+use Carp;
+
+=head1 NAME
+
+Catalyst::Helper::Model::DBIC::SchemaLoader - Helper for AutoLoaded DBIC Schema Models
+
+=head1 SYNOPSIS
+
+  script/myapp_create.pl model Foo DBIC::SchemaLoader [ connect info arguments ]
+
+  Where:
+    Foo is the short name for the Model class being generated
+    connect_info arguments are the same as what DBIx::Class::Schema::connect
+      expects, and are storage_type-specific.  For DBI-based storage, these
+      arguments are the dsn, username, password, and connect options,
+      respectively.
+
+=head1 TYPICAL EXAMPLE
+
+  script/myapp_create.pl model Foo DBIC::SchemaLoader dbi:mysql:foodb myuname mypass '{ AutoCommit => 1 }'
+
+=head1 DESCRIPTION
+
+This helper generates two classes:
+
+First, it generates a L<DBIx::Class::Schema::Loader> class at
+F<lib/MyApp/SchemaLoader/Foo.pm> based on your supplied dsn/user/pass.
+
+Then, it generates a L<Catalyst::Model::DBIC::Schema> at
+F<lib/MyApp/M/Foo.pm>, which references the above-generated loader.
+
+Models generated by this Helper require the seperate package
+L<DBIx::Class::Schema::Loader> to be installed.  It is on the recommended
+list for this package, but is not required for installation.
+
+=head2 METHODS
+
+=head3 mk_compclass
+
+=cut
+
+sub mk_compclass {
+    my ($self, $helper, @connect_info) = @_;
+
+    for(@connect_info) {
+        $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
+    }
+
+    $helper->{loader_class} = $helper->{class};
+    $helper->{loader_class} =~ s/\:\:M(?:odel)?\:\:/::SchemaLoader::/;
+    my @loader_parts = split(/\:\:/, $helper->{loader_class});
+    my $loader_file_part = pop @loader_parts;
+
+    my $loader_dir  = File::Spec->catfile( $helper->{base}, 'lib', @loader_parts );
+    my $loader_file = File::Spec->catfile( $loader_dir, $loader_file_part . '.pm' );
+
+    $helper->mk_dir($loader_dir);
+    $helper->{connect_info} = \@connect_info;
+
+    $helper->mk_dir( $loader_dir );
+    $helper->render_file( 'loaderclass', $loader_file );
+
+
+    my $file = $helper->{file};
+    $helper->render_file( 'compclass', $file );
+}
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>,
+L<Catalyst::Helper::Model::DBIC::Schema>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__DATA__
+
+=begin pod_to_ignore
+
+__loaderclass__
+package [% loader_class %];
+
+use strict;
+use base qw/DBIx::Class::Schema::Loader/;
+
+__PACKAGE__->load_from_connection(
+    connect_info => [
+        [% FOREACH arg = connect_info %][% arg %],
+        [% END %]
+    ],
+    relationships => 1,
+    # debug => 1,
+);
+
+=head1 NAME
+
+[% loader_class %] - Loader-generated DBIx::Class::Schema class
+
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__compclass__
+package [% class %];
+
+use strict;
+use base 'Catalyst::Model::DBIC::Schema';
+
+__PACKAGE__->config(
+    schema_class => '[% loader_class %]',
+);
+
+=head1 NAME
+
+[% class %] - Catalyst DBIC Schema Model
+
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+L<Catalyst::Model::DBIC::Schema> Model using L<DBIx::Class::Schema::Loader>
+generated Schema: L<[% loader_class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,376 +0,0 @@
-package Catalyst::Model::DBIC::Schema;
-
-use strict;
-use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
-use NEXT;
-use UNIVERSAL::require;
-use Carp;
-require DBIx::Class;
-
-our $VERSION = '0.12';
-
-__PACKAGE__->mk_classaccessor('composed_schema');
-__PACKAGE__->mk_accessors('schema');
-
-=head1 NAME
-
-Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
-
-=head1 SYNOPSIS
-
-Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
-
-=over
-
-=item 1.
-
-Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
-
-  package MyApp::Schema::FilmDB;
-  use base qw/DBIx::Class::Schema/;
-
-  __PACKAGE__->load_classes(qw/Actor Role/);
-
-=item 2.
-
-Create some classes for the tables in the database, for example an 
-Actor in MyApp/Schema/FilmDB/Actor.pm:
-
-  package MyApp::Schema::FilmDB::Actor;
-  use base qw/DBIx::Class/
-  
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('actor');
-  
-  ...
-
-and a Role in MyApp/Schema/Role.pm:
-
-  package MyApp::Schema::FilmDB::Role;
-  use base qw/DBIx::Class/
-  
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('actor');
-  
-  ...    
-
-Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
-usable as a standalone module and you can test/run it without Catalyst. 
-
-=item 3.
-
-To expose it to Catalyst as a model, you should create a DBIC Model in
-MyApp/Model/FilmDB.pm:
-
-  package MyApp::Model::FilmDB;
-  use base qw/Catalyst::Model::DBIC::Schema/;
-  
-  __PACKAGE__->config(
-      schema_class => 'MyApp::Schema::FilmDB',
-      connect_info => [
-                        "DBI:...",
-                        "username",
-                        "password",
-                        {AutoCommit => 1}
-                      ]
-  );
-
-See below for a full list of the possible config parameters.
-
-=back
-
-Now you have a working Model, accessing your separate DBIC Schema. Which can
-be used/accessed in the normal Catalyst manner, via $c->model():
-
-  my $actor = $c->model('FilmDB::Actor')->find(1);
-
-You can also use it to set up DBIC authentication with 
-Authentication::Store::DBIC in MyApp.pm:
-
-  package MyApp;
-  
-  use Catalyst qw/... Authentication::Store::DBIC/;
-  
-  ...
-  
-  __PACKAGE__->config->{authentication}{dbic} = {
-      user_class      => 'FilmDB::Actor',
-      user_field      => 'name',
-      password_field  => 'password'
-  }
-
-C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
-parameter passed. To find out more about which methods can be called on a
-ResultSet, or how to add your own methods to it, please see the ResultSet
-documentation in the L<DBIx::Class> distribution.
-
-Some examples are given below:
-
-    # to access schema methods directly:
-    $c->model('FilmDB')->schema->source(...);
-
-    # to access the source object, resultset, and class:
-    $c->model('FilmDB')->source(...);
-    $c->model('FilmDB')->resultset(...);
-    $c->model('FilmDB')->class(...);
-
-    # For resultsets, there's an even quicker shortcut:
-    $c->model('FilmDB::Actor')
-    # is the same as $c->model('FilmDB')->resultset('Actor')
-
-    # To get the composed schema for making new connections:
-    my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
-
-    # Or the same thing via a convenience shortcut:
-    my $newconn = $c->model('FilmDB')->connect(...);
-
-    # or, if your schema works on different storage drivers:
-    my $newconn = $c->model('FilmDB')->composed_schema->clone();
-    $newconn->storage_type('::LDAP');
-    $newconn->connection(...);
-
-    # and again, a convenience shortcut
-    my $newconn = $c->model('FilmDB')->clone();
-    $newconn->storage_type('::LDAP');
-    $newconn->connection(...);
-
-=head1 DESCRIPTION
-
-This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
-the documentation for L<Catalyst::Helper::Model::DBIC::Schema> and
-L<Catalyst::Helper::Model::DBIC::SchemaLoader> for information
-on generating these Models via Helper scripts.  The latter of the two
-will also generated a L<DBIx::Class::Schema::Loader>-based Schema class
-for you.
-
-=head1 CONFIG PARAMETERS
-
-=over 4
-
-=item schema_class
-
-This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
-to be findable in C<@INC>, but it does not need to be inside the 
-C<Catalyst::Model::> namespace.  This parameter is required.
-
-=item connect_info
-
-This is an arrayref of connection parameters, which are specific to your
-C<storage_type> (see your storage type documentation for more details).
-
-This is not required if C<schema_class> already has connection information
-defined in itself (which would be the case for a Schema defined by
-L<DBIx::Class::Schema::Loader>, for instance).
-
-For L<DBIx::Class::Storage::DBI>, which is the only supported
-C<storage_type> in L<DBIx::Class> at the time of this writing, the
-parameters are your dsn, username, password, and connect options hashref.
-
-If you need to specify the L<DBIx::Class::Storage::DBI> specific parameter
-C<on_connect_do>, or the related C<sql_maker> options C<limit_dialect>,
-C<quote_char>, or C<name_sep>, you can place these options into a hashref
-as the final element of the C<connect_info> arrayref.  If in doubt, don't
-specify these options.  You would know it if you needed them.
-
-Examples:
-
-    connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
-
-    connect_info => [
-                      'dbi:SQLite:dbname=foo.db',
-                      {
-                        on_connect_do => [
-                          'PRAGMA synchronous = OFF',
-                        ],
-                      }
-                    ],
-
-    connect_info => [
-                      'dbi:Pg:dbname=mypgdb',
-                      'postgres',
-                      '',
-                      { AutoCommit => 0 },
-                      {
-                        on_connect_do => [
-                          'some SQL statement',
-                          'another SQL statement',
-                        ],
-                      }
-                    ],
-
-=item storage_type
-
-Allows the use of a different C<storage_type> than what is set in your
-C<schema_class> (which in turn defaults to C<::DBI> if not set in current
-L<DBIx::Class>).  Completely optional, and probably unnecessary for most
-people until other storage backends become available for L<DBIx::Class>.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new
-
-Instantiates the Model based on the above-documented ->config parameters.
-The only required parameter is C<schema_class>.  C<connect_info> is
-required in the case that C<schema_class> does not already have connection
-information defined for it.
-
-=item schema
-
-Accessor which returns the connected schema being used by the this model.
-There are direct shortcuts on the model class itself for
-schema->resultset, schema->source, and schema->class.
-
-=item composed_schema
-
-Accessor which returns the composed schema, which has no connection info,
-which was used in constructing the C<schema> above.  Useful for creating
-new connections based on the same schema/model.  There are direct shortcuts
-from the model object for composed_schema->clone and composed_schema->connect
-
-=item clone
-
-Shortcut for ->composed_schema->clone
-
-=item connect
-
-Shortcut for ->composed_schema->connect
-
-=item source
-
-Shortcut for ->schema->source
-
-=item class
-
-Shortcut for ->schema->class
-
-=item resultset
-
-Shortcut for ->schema->resultset
-
-=item storage
-
-Provides an accessor for the connected schema's storage object.
-Used often for debugging and controlling transactions.
-
-=back
-
-=cut
-
-sub new {
-    my $self = shift->NEXT::new(@_);
-    
-    my $class = ref($self);
-    my $model_name = $class;
-    $model_name =~ s/^[\w:]+::(?:Model|M):://;
-
-    croak "->config->{schema_class} must be defined for this model"
-        unless $self->{schema_class};
-
-    my $schema_class = $self->{schema_class};
-
-    $schema_class->require
-        or croak "Cannot load schema class '$schema_class': $@";
-
-    if( !$self->{connect_info} ) {
-        if($schema_class->storage && $schema_class->storage->connect_info) {
-            $self->{connect_info} = $schema_class->storage->connect_info;
-        }
-        else {
-            croak "Either ->config->{connect_info} must be defined for $class"
-                  . " or $schema_class must have connect info defined on it";
-        }
-    }
-
-    $self->composed_schema($schema_class->compose_namespace($class));
-    $self->schema($self->composed_schema->clone);
-
-    $self->schema->storage_type($self->{storage_type})
-        if $self->{storage_type};
-
-    # XXX This is temporary, until DBIx::Class::Storage::DBI supports the
-    #  same syntax and we switch our requisite to that version somewhere
-    #  down the line.  This syntax is already committed into DBIx::Class
-    #  dev branch post-0.06.
-    # At that time, this whole block can revert back to just being:
-    #  $self->schema->connection(@{$self->{connect_info}});
-    
-    my $connect_info = [ @{$self->{connect_info}} ];
-    my ($on_connect_do, %sql_maker_opts);
-    if($DBIx::Class::VERSION < 0.069) {
-        my $used;
-        my $last_info = $self->{connect_info}->[-1];
-        if(ref $last_info eq 'HASH') {
-            if($on_connect_do = $last_info->{on_connect_do}) {
-              $used = 1;
-            }
-            for my $sql_maker_opt (qw/limit_dialect quote_char name_sep/) {
-              if(my $opt_val = $last_info->{$sql_maker_opt}) {
-                $used = 1;
-                $sql_maker_opts{$sql_maker_opt} = $opt_val;
-              }
-            }
-            pop(@$connect_info) if $used;
-        }
-    }
-
-    $self->schema->connection(@$connect_info);
-
-    if($DBIx::Class::VERSION < 0.069) {
-        $self->schema->storage->on_connect_do($on_connect_do)
-            if $on_connect_do;
-        foreach my $sql_maker_opt (keys %sql_maker_opts) {
-            $self->schema->storage->sql_maker->$sql_maker_opt(
-                $sql_maker_opts{$sql_maker_opt}
-            );
-        }
-    }
-
-    # XXX end of compatibility block referenced above
-
-    no strict 'refs';
-    foreach my $moniker ($self->schema->sources) {
-        my $classname = "${class}::$moniker";
-        *{"${classname}::ACCEPT_CONTEXT"} = sub {
-            shift;
-            shift->model($model_name)->resultset($moniker);
-        }
-    }
-
-    return $self;
-}
-
-sub clone { shift->composed_schema->clone(@_); }
-
-sub connect { shift->composed_schema->connect(@_); }
-
-sub storage { shift->schema->storage(@_); }
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>,
-L<Catalyst::Helper::Model::DBIC::SchemaLoader>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 COPYRIGHT
-
-This program is free software, you can redistribute it and/or modify it
-under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,376 @@
+package Catalyst::Model::DBIC::Schema;
+
+use strict;
+use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
+use NEXT;
+use UNIVERSAL::require;
+use Carp;
+require DBIx::Class;
+
+our $VERSION = '0.12';
+
+__PACKAGE__->mk_classaccessor('composed_schema');
+__PACKAGE__->mk_accessors('schema');
+
+=head1 NAME
+
+Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
+
+=head1 SYNOPSIS
+
+Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
+
+=over
+
+=item 1.
+
+Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
+
+  package MyApp::Schema::FilmDB;
+  use base qw/DBIx::Class::Schema/;
+
+  __PACKAGE__->load_classes(qw/Actor Role/);
+
+=item 2.
+
+Create some classes for the tables in the database, for example an 
+Actor in MyApp/Schema/FilmDB/Actor.pm:
+
+  package MyApp::Schema::FilmDB::Actor;
+  use base qw/DBIx::Class/
+  
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('actor');
+  
+  ...
+
+and a Role in MyApp/Schema/Role.pm:
+
+  package MyApp::Schema::FilmDB::Role;
+  use base qw/DBIx::Class/
+  
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('actor');
+  
+  ...    
+
+Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
+usable as a standalone module and you can test/run it without Catalyst. 
+
+=item 3.
+
+To expose it to Catalyst as a model, you should create a DBIC Model in
+MyApp/Model/FilmDB.pm:
+
+  package MyApp::Model::FilmDB;
+  use base qw/Catalyst::Model::DBIC::Schema/;
+  
+  __PACKAGE__->config(
+      schema_class => 'MyApp::Schema::FilmDB',
+      connect_info => [
+                        "DBI:...",
+                        "username",
+                        "password",
+                        {AutoCommit => 1}
+                      ]
+  );
+
+See below for a full list of the possible config parameters.
+
+=back
+
+Now you have a working Model, accessing your separate DBIC Schema. Which can
+be used/accessed in the normal Catalyst manner, via $c->model():
+
+  my $actor = $c->model('FilmDB::Actor')->find(1);
+
+You can also use it to set up DBIC authentication with 
+Authentication::Store::DBIC in MyApp.pm:
+
+  package MyApp;
+  
+  use Catalyst qw/... Authentication::Store::DBIC/;
+  
+  ...
+  
+  __PACKAGE__->config->{authentication}{dbic} = {
+      user_class      => 'FilmDB::Actor',
+      user_field      => 'name',
+      password_field  => 'password'
+  }
+
+C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
+parameter passed. To find out more about which methods can be called on a
+ResultSet, or how to add your own methods to it, please see the ResultSet
+documentation in the L<DBIx::Class> distribution.
+
+Some examples are given below:
+
+    # to access schema methods directly:
+    $c->model('FilmDB')->schema->source(...);
+
+    # to access the source object, resultset, and class:
+    $c->model('FilmDB')->source(...);
+    $c->model('FilmDB')->resultset(...);
+    $c->model('FilmDB')->class(...);
+
+    # For resultsets, there's an even quicker shortcut:
+    $c->model('FilmDB::Actor')
+    # is the same as $c->model('FilmDB')->resultset('Actor')
+
+    # To get the composed schema for making new connections:
+    my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
+
+    # Or the same thing via a convenience shortcut:
+    my $newconn = $c->model('FilmDB')->connect(...);
+
+    # or, if your schema works on different storage drivers:
+    my $newconn = $c->model('FilmDB')->composed_schema->clone();
+    $newconn->storage_type('::LDAP');
+    $newconn->connection(...);
+
+    # and again, a convenience shortcut
+    my $newconn = $c->model('FilmDB')->clone();
+    $newconn->storage_type('::LDAP');
+    $newconn->connection(...);
+
+=head1 DESCRIPTION
+
+This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
+the documentation for L<Catalyst::Helper::Model::DBIC::Schema> and
+L<Catalyst::Helper::Model::DBIC::SchemaLoader> for information
+on generating these Models via Helper scripts.  The latter of the two
+will also generated a L<DBIx::Class::Schema::Loader>-based Schema class
+for you.
+
+=head1 CONFIG PARAMETERS
+
+=over 4
+
+=item schema_class
+
+This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
+to be findable in C<@INC>, but it does not need to be inside the 
+C<Catalyst::Model::> namespace.  This parameter is required.
+
+=item connect_info
+
+This is an arrayref of connection parameters, which are specific to your
+C<storage_type> (see your storage type documentation for more details).
+
+This is not required if C<schema_class> already has connection information
+defined in itself (which would be the case for a Schema defined by
+L<DBIx::Class::Schema::Loader>, for instance).
+
+For L<DBIx::Class::Storage::DBI>, which is the only supported
+C<storage_type> in L<DBIx::Class> at the time of this writing, the
+parameters are your dsn, username, password, and connect options hashref.
+
+If you need to specify the L<DBIx::Class::Storage::DBI> specific parameter
+C<on_connect_do>, or the related C<sql_maker> options C<limit_dialect>,
+C<quote_char>, or C<name_sep>, you can place these options into a hashref
+as the final element of the C<connect_info> arrayref.  If in doubt, don't
+specify these options.  You would know it if you needed them.
+
+Examples:
+
+    connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
+
+    connect_info => [
+                      'dbi:SQLite:dbname=foo.db',
+                      {
+                        on_connect_do => [
+                          'PRAGMA synchronous = OFF',
+                        ],
+                      }
+                    ],
+
+    connect_info => [
+                      'dbi:Pg:dbname=mypgdb',
+                      'postgres',
+                      '',
+                      { AutoCommit => 0 },
+                      {
+                        on_connect_do => [
+                          'some SQL statement',
+                          'another SQL statement',
+                        ],
+                      }
+                    ],
+
+=item storage_type
+
+Allows the use of a different C<storage_type> than what is set in your
+C<schema_class> (which in turn defaults to C<::DBI> if not set in current
+L<DBIx::Class>).  Completely optional, and probably unnecessary for most
+people until other storage backends become available for L<DBIx::Class>.
+
+=back
+
+=head1 METHODS
+
+=over 4
+
+=item new
+
+Instantiates the Model based on the above-documented ->config parameters.
+The only required parameter is C<schema_class>.  C<connect_info> is
+required in the case that C<schema_class> does not already have connection
+information defined for it.
+
+=item schema
+
+Accessor which returns the connected schema being used by the this model.
+There are direct shortcuts on the model class itself for
+schema->resultset, schema->source, and schema->class.
+
+=item composed_schema
+
+Accessor which returns the composed schema, which has no connection info,
+which was used in constructing the C<schema> above.  Useful for creating
+new connections based on the same schema/model.  There are direct shortcuts
+from the model object for composed_schema->clone and composed_schema->connect
+
+=item clone
+
+Shortcut for ->composed_schema->clone
+
+=item connect
+
+Shortcut for ->composed_schema->connect
+
+=item source
+
+Shortcut for ->schema->source
+
+=item class
+
+Shortcut for ->schema->class
+
+=item resultset
+
+Shortcut for ->schema->resultset
+
+=item storage
+
+Provides an accessor for the connected schema's storage object.
+Used often for debugging and controlling transactions.
+
+=back
+
+=cut
+
+sub new {
+    my $self = shift->NEXT::new(@_);
+    
+    my $class = ref($self);
+    my $model_name = $class;
+    $model_name =~ s/^[\w:]+::(?:Model|M):://;
+
+    croak "->config->{schema_class} must be defined for this model"
+        unless $self->{schema_class};
+
+    my $schema_class = $self->{schema_class};
+
+    $schema_class->require
+        or croak "Cannot load schema class '$schema_class': $@";
+
+    if( !$self->{connect_info} ) {
+        if($schema_class->storage && $schema_class->storage->connect_info) {
+            $self->{connect_info} = $schema_class->storage->connect_info;
+        }
+        else {
+            croak "Either ->config->{connect_info} must be defined for $class"
+                  . " or $schema_class must have connect info defined on it";
+        }
+    }
+
+    $self->composed_schema($schema_class->compose_namespace($class));
+    $self->schema($self->composed_schema->clone);
+
+    $self->schema->storage_type($self->{storage_type})
+        if $self->{storage_type};
+
+    # XXX This is temporary, until DBIx::Class::Storage::DBI supports the
+    #  same syntax and we switch our requisite to that version somewhere
+    #  down the line.  This syntax is already committed into DBIx::Class
+    #  dev branch post-0.06.
+    # At that time, this whole block can revert back to just being:
+    #  $self->schema->connection(@{$self->{connect_info}});
+    
+    my $connect_info = [ @{$self->{connect_info}} ];
+    my ($on_connect_do, %sql_maker_opts);
+    if($DBIx::Class::VERSION < 0.069) {
+        my $used;
+        my $last_info = $self->{connect_info}->[-1];
+        if(ref $last_info eq 'HASH') {
+            if($on_connect_do = $last_info->{on_connect_do}) {
+              $used = 1;
+            }
+            for my $sql_maker_opt (qw/limit_dialect quote_char name_sep/) {
+              if(my $opt_val = $last_info->{$sql_maker_opt}) {
+                $used = 1;
+                $sql_maker_opts{$sql_maker_opt} = $opt_val;
+              }
+            }
+            pop(@$connect_info) if $used;
+        }
+    }
+
+    $self->schema->connection(@$connect_info);
+
+    if($DBIx::Class::VERSION < 0.069) {
+        $self->schema->storage->on_connect_do($on_connect_do)
+            if $on_connect_do;
+        foreach my $sql_maker_opt (keys %sql_maker_opts) {
+            $self->schema->storage->sql_maker->$sql_maker_opt(
+                $sql_maker_opts{$sql_maker_opt}
+            );
+        }
+    }
+
+    # XXX end of compatibility block referenced above
+
+    no strict 'refs';
+    foreach my $moniker ($self->schema->sources) {
+        my $classname = "${class}::$moniker";
+        *{"${classname}::ACCEPT_CONTEXT"} = sub {
+            shift;
+            shift->model($model_name)->resultset($moniker);
+        }
+    }
+
+    return $self;
+}
+
+sub clone { shift->composed_schema->clone(@_); }
+
+sub connect { shift->composed_schema->connect(@_); }
+
+sub storage { shift->schema->storage(@_); }
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>,
+L<Catalyst::Helper::Model::DBIC::SchemaLoader>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 COPYRIGHT
+
+This program is free software, you can redistribute it and/or modify it
+under the same terms as Perl itself.
+
+=cut
+
+1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/t)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/t/01use.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/01use.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,6 +0,0 @@
-use strict;
-use Test::More tests => 3;
-
-BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
-BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }
-BEGIN { use_ok('Catalyst::Helper::Model::DBIC::SchemaLoader') }

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/t/01use.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/t/01use.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/01use.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,6 @@
+use strict;
+use Test::More tests => 3;
+
+BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
+BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }
+BEGIN { use_ok('Catalyst::Helper::Model::DBIC::SchemaLoader') }

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/t/02pod.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/02pod.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,8 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod 1.14";
-plan skip_all => 'Test::Pod 1.14 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_files_ok();
-

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/t/02pod.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/t/02pod.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/02pod.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,8 @@
+use Test::More;
+
+eval "use Test::Pod 1.14";
+plan skip_all => 'Test::Pod 1.14 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_files_ok();
+

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/t/03podcoverage.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/03podcoverage.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,7 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod::Coverage 1.04";
-plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_coverage_ok();

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/t/03podcoverage.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/t/03podcoverage.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/03podcoverage.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,7 @@
+use Test::More;
+
+eval "use Test::Pod::Coverage 1.04";
+plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_coverage_ok();

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/t/04kwalitee.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/04kwalitee.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,5 +0,0 @@
-use Test::More;
-
-eval { require Test::Kwalitee; Test::Kwalitee->import() };
-
-plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/t/04kwalitee.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/t/04kwalitee.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/04kwalitee.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,5 @@
+use Test::More;
+
+eval { require Test::Kwalitee; Test::Kwalitee->import() };
+
+plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.12/t/05testapp.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/05testapp.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,49 +0,0 @@
-use strict;
-use Test::More;
-use FindBin;
-use File::Spec;
-use File::Find;
-
-plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
-    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
-
-my $test_params = [
-    [ 'TestSchema', 'DBIC::Schema', '' ],
-    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
-    [ 'TestSchemaLoader', 'DBIC::SchemaLoader', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
-];
-
-plan tests => (2 * @$test_params);
-
-my $test_dir   = $FindBin::Bin;
-my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
-my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
-my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
-my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
-my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
-
-chdir($test_dir);
-system("catalyst.pl TestApp");
-chdir($cat_dir);
-
-foreach my $tparam (@$test_params) {
-   my ($model, $helper, $args) = @$tparam;
-   my $model_two = $model;
-   if($helper =~ /Loader/) {
-       $model_two = '';
-   }
-   system("$^X -I$blib_dir $creator model $model $helper $model_two $args");
-   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
-   ok( -f $model_path, "$model_path is a file" );
-   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
-   ok($compile_rv == 0, "perl -c $model_path");
-}
-
-chdir($test_dir);
-
-sub rm_rf {
-    my $name = $File::Find::name;
-    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
-    else { unlink $name or die "Cannot unlink $name: $!" }
-}
-finddepth(\&rm_rf, $cat_dir);

Copied: tags/Catalyst-Model-DBIC-Schema/0.12/t/05testapp.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.12/t/05testapp.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.12/t/05testapp.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.12/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,49 @@
+use strict;
+use Test::More;
+use FindBin;
+use File::Spec;
+use File::Find;
+
+plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
+    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
+
+my $test_params = [
+    [ 'TestSchema', 'DBIC::Schema', '' ],
+    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
+    [ 'TestSchemaLoader', 'DBIC::SchemaLoader', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
+];
+
+plan tests => (2 * @$test_params);
+
+my $test_dir   = $FindBin::Bin;
+my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
+my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
+my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
+my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
+my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
+
+chdir($test_dir);
+system("catalyst.pl TestApp");
+chdir($cat_dir);
+
+foreach my $tparam (@$test_params) {
+   my ($model, $helper, $args) = @$tparam;
+   my $model_two = $model;
+   if($helper =~ /Loader/) {
+       $model_two = '';
+   }
+   system("$^X -I$blib_dir $creator model $model $helper $model_two $args");
+   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
+   ok( -f $model_path, "$model_path is a file" );
+   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
+   ok($compile_rv == 0, "perl -c $model_path");
+}
+
+chdir($test_dir);
+
+sub rm_rf {
+    my $name = $File::Find::name;
+    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
+    else { unlink $name or die "Cannot unlink $name: $!" }
+}
+finddepth(\&rm_rf, $cat_dir);

Copied: tags/Catalyst-Model-DBIC-Schema/0.16 (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/Build.PL
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/Build.PL	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/Build.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,24 +0,0 @@
-use strict;
-use Module::Build;
-
-my %arguments = (
-    license            => 'perl',
-    module_name        => 'Catalyst::Model::DBIC::Schema',
-    requires           => {
-        'DBIx::Class'           => 0.06,
-        'Catalyst'              => 5.64,
-        'UNIVERSAL::require'    => 0.10,
-        'Class::Data::Accessor' => 0.02,
-        'Class::Accessor::Fast' => 0.22,
-    },
-    recommends         => {
-        'DBIx::Class::Schema::Loader' => 0.03003,
-    },
-    build_requires     => {
-        'Test::More'            => 0.32,
-    },
-    create_makefile_pl => 'passthrough',
-    create_readme      => 1,
-);
-
-Module::Build->new(%arguments)->create_build_script;

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/Build.PL (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/Build.PL)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/Build.PL	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/Build.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,24 @@
+use strict;
+use Module::Build;
+
+my %arguments = (
+    license            => 'perl',
+    module_name        => 'Catalyst::Model::DBIC::Schema',
+    requires           => {
+        'DBIx::Class'           => 0.06,
+        'Catalyst'              => 5.64,
+        'UNIVERSAL::require'    => 0.10,
+        'Class::Data::Accessor' => 0.02,
+        'Class::Accessor::Fast' => 0.22,
+    },
+    recommends         => {
+        'DBIx::Class::Schema::Loader' => 0.03003,
+    },
+    build_requires     => {
+        'Test::More'            => 0.32,
+    },
+    create_makefile_pl => 'passthrough',
+    create_readme      => 1,
+);
+
+Module::Build->new(%arguments)->create_build_script;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/Changes
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/Changes	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,61 +0,0 @@
-Revision history for Perl extension Catalyst::Model::DBIC::Schema
-
-0.16  Thu Jul  6 13:28:45 UTC 2006
-        - Bugfix for create=static and connect_info coderef snippets
-	- Be more verbose when connection_info is not set.
-
-0.15  Tue Jun  6 01:33:57 UTC 2006
-        - Fixed a serious bug in create=static usage
-        - Re-arranged output generation so that the more likely
-          failure to generate Schemas via create= will cause the
-          helper to abort before generating the Model class itself
-
-0.14  Mon Jun  5 23:34:35 UTC 2006
-        - Helpers merged, helper syntax changed
-        - Everything updated for Schema::Loader 0.03001 support, including
-          what amounts to using Loader in one-shot mode to generate
-          a manual Schema with matching Model.
-        - fixed stupid typo in docs
-
-0.13  Wed Apr 26 2006
-        - noted support via mailing lists
-
-0.12  Tue Apr 25 2006
-        - SYNOPSIS improved substantially to help newbies get started
-
-0.11  Sun Mar 26 17:22:31 UTC 2006
-        - Removed on_connect_do config setting (it was only out
-          in public for 4 days...).
-        - Support for on_connect_do and sql_maker options as part
-          of connect_info
-
-0.10  Wed Mar 22 07:06:02 UTC 2006
-        - Added on_connect_do config setting
-        - Added convenience method for ->schema->storage from paulm
-
-0.08  Tue Feb 28 00:04:16 UTC 2006
-        - Bumped D::C::Schema::Loader recommendation to 0.02003
-          (should have been done last release)
-        - Removed the ->require stuff added in 0.07, it doesn't
-          do what it is supposed to do.  For now, users can layer
-          at the Schema::Loader level rather than at Model.
-
-0.07  Sun Feb 19 21:50:18 UTC 2006
-        - bugfix for ::SchemaLoader::Foo password argument, and
-          switch to connect_info argument of new Schema::Loader
-        - Added ->require for source classes, so that you can
-          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
-          generated MyApp::Model::Foo::Bar.
-
-0.06  Sat Feb 18 19:05:17 UTC 2006
-        - Fix simple pod-related bug introduced in last rev
-        - Added optional test that uses the helpers
-
-0.05  Fri Feb 17 20:52:21 UTC 2006
-        - Stop showing the template pod in pod tools and cpan,
-          per Gavin's email.
-        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
-          subtle issues under mod_perl engines.
-
-0.04  Mon Feb 13 04:22:49 UTC 2006
-        - First public release

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/Changes (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/Changes)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/Changes	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,61 @@
+Revision history for Perl extension Catalyst::Model::DBIC::Schema
+
+0.16  Thu Jul  6 13:28:45 UTC 2006
+        - Bugfix for create=static and connect_info coderef snippets
+	- Be more verbose when connection_info is not set.
+
+0.15  Tue Jun  6 01:33:57 UTC 2006
+        - Fixed a serious bug in create=static usage
+        - Re-arranged output generation so that the more likely
+          failure to generate Schemas via create= will cause the
+          helper to abort before generating the Model class itself
+
+0.14  Mon Jun  5 23:34:35 UTC 2006
+        - Helpers merged, helper syntax changed
+        - Everything updated for Schema::Loader 0.03001 support, including
+          what amounts to using Loader in one-shot mode to generate
+          a manual Schema with matching Model.
+        - fixed stupid typo in docs
+
+0.13  Wed Apr 26 2006
+        - noted support via mailing lists
+
+0.12  Tue Apr 25 2006
+        - SYNOPSIS improved substantially to help newbies get started
+
+0.11  Sun Mar 26 17:22:31 UTC 2006
+        - Removed on_connect_do config setting (it was only out
+          in public for 4 days...).
+        - Support for on_connect_do and sql_maker options as part
+          of connect_info
+
+0.10  Wed Mar 22 07:06:02 UTC 2006
+        - Added on_connect_do config setting
+        - Added convenience method for ->schema->storage from paulm
+
+0.08  Tue Feb 28 00:04:16 UTC 2006
+        - Bumped D::C::Schema::Loader recommendation to 0.02003
+          (should have been done last release)
+        - Removed the ->require stuff added in 0.07, it doesn't
+          do what it is supposed to do.  For now, users can layer
+          at the Schema::Loader level rather than at Model.
+
+0.07  Sun Feb 19 21:50:18 UTC 2006
+        - bugfix for ::SchemaLoader::Foo password argument, and
+          switch to connect_info argument of new Schema::Loader
+        - Added ->require for source classes, so that you can
+          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
+          generated MyApp::Model::Foo::Bar.
+
+0.06  Sat Feb 18 19:05:17 UTC 2006
+        - Fix simple pod-related bug introduced in last rev
+        - Added optional test that uses the helpers
+
+0.05  Fri Feb 17 20:52:21 UTC 2006
+        - Stop showing the template pod in pod tools and cpan,
+          per Gavin's email.
+        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
+          subtle issues under mod_perl engines.
+
+0.04  Mon Feb 13 04:22:49 UTC 2006
+        - First public release

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/MANIFEST.SKIP
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/MANIFEST.SKIP	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,28 +0,0 @@
-# Avoid version control files.
-\bRCS\b
-\bCVS\b
-,v$
-\B\.svn\b
-
-# Avoid Makemaker generated and utility files.
-\bMakefile$
-\bblib
-\bMakeMaker-\d
-\bpm_to_blib$
-\bblibdirs$
-^MANIFEST\.SKIP$
-
-# Avoid Module::Build generated and utility files.
-\bBuild$
-\b_build
-
-# Avoid temp and backup files.
-~$
-\.tmp$
-\.old$
-\.bak$
-\#$
-\b\.#
-
-# avoid dist files
-\.tar\.gz$

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/MANIFEST.SKIP (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/MANIFEST.SKIP)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/MANIFEST.SKIP	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,28 @@
+# Avoid version control files.
+\bRCS\b
+\bCVS\b
+,v$
+\B\.svn\b
+
+# Avoid Makemaker generated and utility files.
+\bMakefile$
+\bblib
+\bMakeMaker-\d
+\bpm_to_blib$
+\bblibdirs$
+^MANIFEST\.SKIP$
+
+# Avoid Module::Build generated and utility files.
+\bBuild$
+\b_build
+
+# Avoid temp and backup files.
+~$
+\.tmp$
+\.old$
+\.bak$
+\#$
+\b\.#
+
+# avoid dist files
+\.tar\.gz$

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/Makefile.PL
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/Makefile.PL	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,31 +0,0 @@
-# Note: this file was auto-generated by Module::Build::Compat version 0.03
-    
-    unless (eval "use Module::Build::Compat 0.02; 1" ) {
-      print "This module requires Module::Build to install itself.\n";
-      
-      require ExtUtils::MakeMaker;
-      my $yn = ExtUtils::MakeMaker::prompt
-	('  Install Module::Build now from CPAN?', 'y');
-      
-      unless ($yn =~ /^y/i) {
-	die " *** Cannot install without Module::Build.  Exiting ...\n";
-      }
-      
-      require Cwd;
-      require File::Spec;
-      require CPAN;
-      
-      # Save this 'cause CPAN will chdir all over the place.
-      my $cwd = Cwd::cwd();
-      
-      CPAN::Shell->install('Module::Build::Compat');
-      CPAN::Shell->expand("Module", "Module::Build::Compat")->uptodate
-	or die "Couldn't install Module::Build, giving up.\n";
-      
-      chdir $cwd or die "Cannot chdir() back to $cwd: $!";
-    }
-    eval "use Module::Build::Compat 0.02; 1" or die $@;
-    
-    Module::Build::Compat->run_build_pl(args => \@ARGV);
-    require Module::Build;
-    Module::Build::Compat->write_makefile(build_class => 'Module::Build');

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/Makefile.PL (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/Makefile.PL)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/Makefile.PL	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,31 @@
+# Note: this file was auto-generated by Module::Build::Compat version 0.03
+    
+    unless (eval "use Module::Build::Compat 0.02; 1" ) {
+      print "This module requires Module::Build to install itself.\n";
+      
+      require ExtUtils::MakeMaker;
+      my $yn = ExtUtils::MakeMaker::prompt
+	('  Install Module::Build now from CPAN?', 'y');
+      
+      unless ($yn =~ /^y/i) {
+	die " *** Cannot install without Module::Build.  Exiting ...\n";
+      }
+      
+      require Cwd;
+      require File::Spec;
+      require CPAN;
+      
+      # Save this 'cause CPAN will chdir all over the place.
+      my $cwd = Cwd::cwd();
+      
+      CPAN::Shell->install('Module::Build::Compat');
+      CPAN::Shell->expand("Module", "Module::Build::Compat")->uptodate
+	or die "Couldn't install Module::Build, giving up.\n";
+      
+      chdir $cwd or die "Cannot chdir() back to $cwd: $!";
+    }
+    eval "use Module::Build::Compat 0.02; 1" or die $@;
+    
+    Module::Build::Compat->run_build_pl(args => \@ARGV);
+    require Module::Build;
+    Module::Build::Compat->write_makefile(build_class => 'Module::Build');

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/lib (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/lib)

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst)

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper)

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,230 +0,0 @@
-package Catalyst::Helper::Model::DBIC::Schema;
-
-use strict;
-use warnings;
-use Carp;
-use UNIVERSAL::require;
-
-=head1 NAME
-
-Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
-
-=head1 SYNOPSIS
-
-  script/create.pl model ModelName DBIC::Schema My::SchemaClass [ create=dynamic | create=static ] [ connect_info arguments ]
-
-=head1 DESCRIPTION
-
-Helper for the DBIC Schema Models.
-
-=head2 Arguments:
-
-    ModelName is the short name for the Model class being generated
-
-    My::SchemaClass is the fully qualified classname of your Schema,
-      which might or might not yet exist.
-
-    create=dynamic instructs this Helper to generate the named Schema
-      class for you, basing it on L<DBIx::Class::Schema::Loader> (which
-      means the table information will always be dynamically loaded at
-      runtime from the database).
-
-    create=static instructs this Helper to generate the named Schema
-      class for you, using L<DBIx::Class::Schema::Loader> in "one shot"
-      mode to create a standard, manually-defined L<DBIx::Class::Schema>
-      setup, based on what the Loader sees in your database at this moment.
-      A Schema/Model pair generated this way will not require
-      L<DBIx::Class::Schema::Loader> at runtime, and will not automatically
-      adapt itself to changes in your database structure.  You can edit
-      the generated classes by hand to refine them.
-
-    connect_info arguments are the same as what DBIx::Class::Schema::connect
-      expects, and are storage_type-specific.  For DBI-based storage, these
-      arguments are the dsn, username, password, and connect options,
-      respectively.  These are optional for existing Schemas, but required
-      if you use either of the C<create=> options.
-
-Use of either of the C<create=> options requires L<DBIx::Class::Schema::Loader>.
-
-=head1 TYPICAL EXAMPLES
-
-  # Use DBIx::Class::Schema::Loader to create a static DBIx::Class::Schema,
-  #  and a Model which references it:
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=static dbi:mysql:foodb myuname mypass
-
-  # Create a dynamic DBIx::Class::Schema::Loader-based Schema,
-  #  and a Model which references it:
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=dynamic dbi:mysql:foodb myuname mypass
-
-  # Reference an existing Schema of any kind, and provide some connection information for ->config:
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass dbi:mysql:foodb myuname mypass
-
-  # Same, but don't supply connect information yet (you'll need to do this
-  #  in your app config, or [not recommended] in the schema itself).
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass
-
-=head2 METHODS
-
-=head3 mk_compclass
-
-=cut
-
-sub mk_compclass {
-    my ( $self, $helper, $schema_class, @connect_info) = @_;
-
-    $helper->{schema_class} = $schema_class
-        or croak "Must supply schema class name";
-
-    my $create = '';
-    if($connect_info[0] && $connect_info[0] =~ /^create=(dynamic|static)$/) {
-        $create = $1;
-        shift @connect_info;
-    }
-
-    if(@connect_info) {
-        $helper->{setup_connect_info} = 1;
-        my @helper_connect_info = @connect_info;
-        for(@helper_connect_info) {
-            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
-        }
-        $helper->{connect_info} = \@helper_connect_info;
-    }
-
-    if($create eq 'dynamic') {
-        my @schema_parts = split(/\:\:/, $helper->{schema_class});
-        my $schema_file_part = pop @schema_parts;
-
-        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib', @schema_parts );
-        my $schema_file = File::Spec->catfile( $schema_dir, $schema_file_part . '.pm' );
-
-        $helper->mk_dir($schema_dir);
-        $helper->render_file( 'schemaclass', $schema_file );
-    }
-    elsif($create eq 'static') {
-        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib' );
-        DBIx::Class::Schema::Loader->use("dump_to_dir:$schema_dir", 'make_schema_at')
-            or croak "Cannot load DBIx::Class::Schema::Loader: $@";
-
-        my @loader_connect_info = @connect_info;
-        my $num = 6; # argument number on the commandline for "dbi:..."
-        for(@loader_connect_info) {
-            if(/^\s*[[{]/) {
-                $_ = eval "$_";
-                croak "Perl syntax error in commandline argument $num: $@" if $@;
-            }
-            $num++;
-        }
-
-        make_schema_at(
-            $schema_class,
-            { relationships => 1 },
-            \@loader_connect_info,
-        );
-    }
-
-    my $file = $helper->{file};
-    $helper->render_file( 'compclass', $file );
-}
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__DATA__
-
-=begin pod_to_ignore
-
-__schemaclass__
-package [% schema_class %];
-
-use strict;
-use base qw/DBIx::Class::Schema::Loader/;
-
-__PACKAGE__->loader_options(
-    relationships => 1,
-    # debug => 1,
-);
-
-=head1 NAME
-
-[% schema_class %] - DBIx::Class::Schema::Loader class
-
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__compclass__
-package [% class %];
-
-use strict;
-use base 'Catalyst::Model::DBIC::Schema';
-
-__PACKAGE__->config(
-    schema_class => '[% schema_class %]',
-    [% IF setup_connect_info %]connect_info => [
-        [% FOREACH arg = connect_info %][% arg %],
-        [% END %]
-    ],[% END %]
-);
-
-=head1 NAME
-
-[% class %] - Catalyst DBIC Schema Model
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-L<Catalyst::Model::DBIC::Schema> Model using schema L<[% schema_class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,230 @@
+package Catalyst::Helper::Model::DBIC::Schema;
+
+use strict;
+use warnings;
+use Carp;
+use UNIVERSAL::require;
+
+=head1 NAME
+
+Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
+
+=head1 SYNOPSIS
+
+  script/create.pl model ModelName DBIC::Schema My::SchemaClass [ create=dynamic | create=static ] [ connect_info arguments ]
+
+=head1 DESCRIPTION
+
+Helper for the DBIC Schema Models.
+
+=head2 Arguments:
+
+    ModelName is the short name for the Model class being generated
+
+    My::SchemaClass is the fully qualified classname of your Schema,
+      which might or might not yet exist.
+
+    create=dynamic instructs this Helper to generate the named Schema
+      class for you, basing it on L<DBIx::Class::Schema::Loader> (which
+      means the table information will always be dynamically loaded at
+      runtime from the database).
+
+    create=static instructs this Helper to generate the named Schema
+      class for you, using L<DBIx::Class::Schema::Loader> in "one shot"
+      mode to create a standard, manually-defined L<DBIx::Class::Schema>
+      setup, based on what the Loader sees in your database at this moment.
+      A Schema/Model pair generated this way will not require
+      L<DBIx::Class::Schema::Loader> at runtime, and will not automatically
+      adapt itself to changes in your database structure.  You can edit
+      the generated classes by hand to refine them.
+
+    connect_info arguments are the same as what DBIx::Class::Schema::connect
+      expects, and are storage_type-specific.  For DBI-based storage, these
+      arguments are the dsn, username, password, and connect options,
+      respectively.  These are optional for existing Schemas, but required
+      if you use either of the C<create=> options.
+
+Use of either of the C<create=> options requires L<DBIx::Class::Schema::Loader>.
+
+=head1 TYPICAL EXAMPLES
+
+  # Use DBIx::Class::Schema::Loader to create a static DBIx::Class::Schema,
+  #  and a Model which references it:
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=static dbi:mysql:foodb myuname mypass
+
+  # Create a dynamic DBIx::Class::Schema::Loader-based Schema,
+  #  and a Model which references it:
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=dynamic dbi:mysql:foodb myuname mypass
+
+  # Reference an existing Schema of any kind, and provide some connection information for ->config:
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass dbi:mysql:foodb myuname mypass
+
+  # Same, but don't supply connect information yet (you'll need to do this
+  #  in your app config, or [not recommended] in the schema itself).
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass
+
+=head2 METHODS
+
+=head3 mk_compclass
+
+=cut
+
+sub mk_compclass {
+    my ( $self, $helper, $schema_class, @connect_info) = @_;
+
+    $helper->{schema_class} = $schema_class
+        or croak "Must supply schema class name";
+
+    my $create = '';
+    if($connect_info[0] && $connect_info[0] =~ /^create=(dynamic|static)$/) {
+        $create = $1;
+        shift @connect_info;
+    }
+
+    if(@connect_info) {
+        $helper->{setup_connect_info} = 1;
+        my @helper_connect_info = @connect_info;
+        for(@helper_connect_info) {
+            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
+        }
+        $helper->{connect_info} = \@helper_connect_info;
+    }
+
+    if($create eq 'dynamic') {
+        my @schema_parts = split(/\:\:/, $helper->{schema_class});
+        my $schema_file_part = pop @schema_parts;
+
+        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib', @schema_parts );
+        my $schema_file = File::Spec->catfile( $schema_dir, $schema_file_part . '.pm' );
+
+        $helper->mk_dir($schema_dir);
+        $helper->render_file( 'schemaclass', $schema_file );
+    }
+    elsif($create eq 'static') {
+        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib' );
+        DBIx::Class::Schema::Loader->use("dump_to_dir:$schema_dir", 'make_schema_at')
+            or croak "Cannot load DBIx::Class::Schema::Loader: $@";
+
+        my @loader_connect_info = @connect_info;
+        my $num = 6; # argument number on the commandline for "dbi:..."
+        for(@loader_connect_info) {
+            if(/^\s*[[{]/) {
+                $_ = eval "$_";
+                croak "Perl syntax error in commandline argument $num: $@" if $@;
+            }
+            $num++;
+        }
+
+        make_schema_at(
+            $schema_class,
+            { relationships => 1 },
+            \@loader_connect_info,
+        );
+    }
+
+    my $file = $helper->{file};
+    $helper->render_file( 'compclass', $file );
+}
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__DATA__
+
+=begin pod_to_ignore
+
+__schemaclass__
+package [% schema_class %];
+
+use strict;
+use base qw/DBIx::Class::Schema::Loader/;
+
+__PACKAGE__->loader_options(
+    relationships => 1,
+    # debug => 1,
+);
+
+=head1 NAME
+
+[% schema_class %] - DBIx::Class::Schema::Loader class
+
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__compclass__
+package [% class %];
+
+use strict;
+use base 'Catalyst::Model::DBIC::Schema';
+
+__PACKAGE__->config(
+    schema_class => '[% schema_class %]',
+    [% IF setup_connect_info %]connect_info => [
+        [% FOREACH arg = connect_info %][% arg %],
+        [% END %]
+    ],[% END %]
+);
+
+=head1 NAME
+
+[% class %] - Catalyst DBIC Schema Model
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+L<Catalyst::Model::DBIC::Schema> Model using schema L<[% schema_class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,374 +0,0 @@
-package Catalyst::Model::DBIC::Schema;
-
-use strict;
-use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
-use NEXT;
-use UNIVERSAL::require;
-use Carp;
-use Data::Dumper;
-require DBIx::Class;
-
-our $VERSION = '0.16';
-
-__PACKAGE__->mk_classaccessor('composed_schema');
-__PACKAGE__->mk_accessors('schema');
-
-=head1 NAME
-
-Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
-
-=head1 SYNOPSIS
-
-Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
-
-=over
-
-=item 1.
-
-Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
-
-  package MyApp::Schema::FilmDB;
-  use base qw/DBIx::Class::Schema/;
-
-  __PACKAGE__->load_classes(qw/Actor Role/);
-
-=item 2.
-
-Create some classes for the tables in the database, for example an 
-Actor in MyApp/Schema/FilmDB/Actor.pm:
-
-  package MyApp::Schema::FilmDB::Actor;
-  use base qw/DBIx::Class/
-
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('actor');
-
-  ...
-
-and a Role in MyApp/Schema/Role.pm:
-
-  package MyApp::Schema::FilmDB::Role;
-  use base qw/DBIx::Class/
-
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('role');
-
-  ...    
-
-Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
-usable as a standalone module and you can test/run it without Catalyst. 
-
-=item 3.
-
-To expose it to Catalyst as a model, you should create a DBIC Model in
-MyApp/Model/FilmDB.pm:
-
-  package MyApp::Model::FilmDB;
-  use base qw/Catalyst::Model::DBIC::Schema/;
-
-  __PACKAGE__->config(
-      schema_class => 'MyApp::Schema::FilmDB',
-      connect_info => [
-                        "DBI:...",
-                        "username",
-                        "password",
-                        {AutoCommit => 1}
-                      ]
-  );
-
-See below for a full list of the possible config parameters.
-
-=back
-
-Now you have a working Model, accessing your separate DBIC Schema. Which can
-be used/accessed in the normal Catalyst manner, via $c->model():
-
-  my $actor = $c->model('FilmDB::Actor')->find(1);
-
-You can also use it to set up DBIC authentication with 
-Authentication::Store::DBIC in MyApp.pm:
-
-  package MyApp;
-
-  use Catalyst qw/... Authentication::Store::DBIC/;
-
-  ...
-
-  __PACKAGE__->config->{authentication}{dbic} = {
-      user_class      => 'FilmDB::Actor',
-      user_field      => 'name',
-      password_field  => 'password'
-  }
-
-C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
-parameter passed. To find out more about which methods can be called on a
-ResultSet, or how to add your own methods to it, please see the ResultSet
-documentation in the L<DBIx::Class> distribution.
-
-Some examples are given below:
-
-  # to access schema methods directly:
-  $c->model('FilmDB')->schema->source(...);
-
-  # to access the source object, resultset, and class:
-  $c->model('FilmDB')->source(...);
-  $c->model('FilmDB')->resultset(...);
-  $c->model('FilmDB')->class(...);
-
-  # For resultsets, there's an even quicker shortcut:
-  $c->model('FilmDB::Actor')
-  # is the same as $c->model('FilmDB')->resultset('Actor')
-
-  # To get the composed schema for making new connections:
-  my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
-
-  # Or the same thing via a convenience shortcut:
-  my $newconn = $c->model('FilmDB')->connect(...);
-
-  # or, if your schema works on different storage drivers:
-  my $newconn = $c->model('FilmDB')->composed_schema->clone();
-  $newconn->storage_type('::LDAP');
-  $newconn->connection(...);
-
-  # and again, a convenience shortcut
-  my $newconn = $c->model('FilmDB')->clone();
-  $newconn->storage_type('::LDAP');
-  $newconn->connection(...);
-
-=head1 DESCRIPTION
-
-This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
-the documentation for L<Catalyst::Helper::Model::DBIC::Schema> for
-information on generating these Models via Helper scripts.
-
-=head1 CONFIG PARAMETERS
-
-=over 4
-
-=item schema_class
-
-This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
-to be findable in C<@INC>, but it does not need to be inside the 
-C<Catalyst::Model::> namespace.  This parameter is required.
-
-=item connect_info
-
-This is an arrayref of connection parameters, which are specific to your
-C<storage_type> (see your storage type documentation for more details).
-
-This is not required if C<schema_class> already has connection information
-defined inside itself (which isn't highly recommended, but can be done)
-
-For L<DBIx::Class::Storage::DBI>, which is the only supported
-C<storage_type> in L<DBIx::Class> at the time of this writing, the
-parameters are your dsn, username, password, and connect options hashref.
-
-If you need to specify the L<DBIx::Class::Storage::DBI> specific parameter
-C<on_connect_do>, or the related C<sql_maker> options C<limit_dialect>,
-C<quote_char>, or C<name_sep>, you can place these options into a hashref
-as the final element of the C<connect_info> arrayref.  If in doubt, don't
-specify these options.  You would know it if you needed them.
-
-Examples:
-
-  connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
-
-  connect_info => [
-                    'dbi:SQLite:dbname=foo.db',
-                    {
-                      on_connect_do => [
-                        'PRAGMA synchronous = OFF',
-                      ],
-                    }
-                  ],
-
-  connect_info => [
-                    'dbi:Pg:dbname=mypgdb',
-                    'postgres',
-                    '',
-                    { AutoCommit => 0 },
-                    {
-                      on_connect_do => [
-                        'some SQL statement',
-                        'another SQL statement',
-                      ],
-                    }
-                  ],
-
-=item storage_type
-
-Allows the use of a different C<storage_type> than what is set in your
-C<schema_class> (which in turn defaults to C<::DBI> if not set in current
-L<DBIx::Class>).  Completely optional, and probably unnecessary for most
-people until other storage backends become available for L<DBIx::Class>.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new
-
-Instantiates the Model based on the above-documented ->config parameters.
-The only required parameter is C<schema_class>.  C<connect_info> is
-required in the case that C<schema_class> does not already have connection
-information defined for it.
-
-=item schema
-
-Accessor which returns the connected schema being used by the this model.
-There are direct shortcuts on the model class itself for
-schema->resultset, schema->source, and schema->class.
-
-=item composed_schema
-
-Accessor which returns the composed schema, which has no connection info,
-which was used in constructing the C<schema> above.  Useful for creating
-new connections based on the same schema/model.  There are direct shortcuts
-from the model object for composed_schema->clone and composed_schema->connect
-
-=item clone
-
-Shortcut for ->composed_schema->clone
-
-=item connect
-
-Shortcut for ->composed_schema->connect
-
-=item source
-
-Shortcut for ->schema->source
-
-=item class
-
-Shortcut for ->schema->class
-
-=item resultset
-
-Shortcut for ->schema->resultset
-
-=item storage
-
-Provides an accessor for the connected schema's storage object.
-Used often for debugging and controlling transactions.
-
-=back
-
-=cut
-
-sub new {
-    my $self = shift->NEXT::new(@_);
-    
-    my $class = ref($self);
-    my $model_name = $class;
-    $model_name =~ s/^[\w:]+::(?:Model|M):://;
-
-    croak "->config->{schema_class} must be defined for this model"
-        unless $self->{schema_class};
-
-    my $schema_class = $self->{schema_class};
-
-    $schema_class->require
-        or croak "Cannot load schema class '$schema_class': $@";
-
-    if( !$self->{connect_info} ) {
-        if($schema_class->storage && $schema_class->storage->connect_info) {
-            $self->{connect_info} = $schema_class->storage->connect_info;
-        }
-        else {
-            croak "Either ->config->{connect_info} must be defined for $class"
-                  . " or $schema_class must have connect info defined on it"
-		  . "Here's what we got:\n"
-		  . Dumper($self);
-        }
-    }
-
-    $self->composed_schema($schema_class->compose_namespace($class));
-    $self->schema($self->composed_schema->clone);
-
-    $self->schema->storage_type($self->{storage_type})
-        if $self->{storage_type};
-
-    # XXX This is temporary, until DBIx::Class::Storage::DBI supports the
-    #  same syntax and we switch our requisite to that version somewhere
-    #  down the line.  This syntax is already committed into DBIx::Class
-    #  -current branch post-0.06.
-    # At that time, this whole block can revert back to just being:
-    #  $self->schema->connection(@{$self->{connect_info}});
-    
-    my $connect_info = [ @{$self->{connect_info}} ];
-    my ($on_connect_do, %sql_maker_opts);
-    if($DBIx::Class::VERSION < 0.069) {
-        my $used;
-        my $last_info = $self->{connect_info}->[-1];
-        if(ref $last_info eq 'HASH') {
-            if($on_connect_do = $last_info->{on_connect_do}) {
-              $used = 1;
-            }
-            for my $sql_maker_opt (qw/limit_dialect quote_char name_sep/) {
-              if(my $opt_val = $last_info->{$sql_maker_opt}) {
-                $used = 1;
-                $sql_maker_opts{$sql_maker_opt} = $opt_val;
-              }
-            }
-            pop(@$connect_info) if $used;
-        }
-    }
-
-    $self->schema->connection(@$connect_info);
-
-    if($DBIx::Class::VERSION < 0.069) {
-        $self->schema->storage->on_connect_do($on_connect_do)
-            if $on_connect_do;
-        foreach my $sql_maker_opt (keys %sql_maker_opts) {
-            $self->schema->storage->sql_maker->$sql_maker_opt(
-                $sql_maker_opts{$sql_maker_opt}
-            );
-        }
-    }
-
-    # XXX end of compatibility block referenced above
-
-    no strict 'refs';
-    foreach my $moniker ($self->schema->sources) {
-        my $classname = "${class}::$moniker";
-        *{"${classname}::ACCEPT_CONTEXT"} = sub {
-            shift;
-            shift->model($model_name)->resultset($moniker);
-        }
-    }
-
-    return $self;
-}
-
-sub clone { shift->composed_schema->clone(@_); }
-
-sub connect { shift->composed_schema->connect(@_); }
-
-sub storage { shift->schema->storage(@_); }
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 COPYRIGHT
-
-This program is free software, you can redistribute it and/or modify it
-under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,374 @@
+package Catalyst::Model::DBIC::Schema;
+
+use strict;
+use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
+use NEXT;
+use UNIVERSAL::require;
+use Carp;
+use Data::Dumper;
+require DBIx::Class;
+
+our $VERSION = '0.16';
+
+__PACKAGE__->mk_classaccessor('composed_schema');
+__PACKAGE__->mk_accessors('schema');
+
+=head1 NAME
+
+Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
+
+=head1 SYNOPSIS
+
+Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
+
+=over
+
+=item 1.
+
+Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
+
+  package MyApp::Schema::FilmDB;
+  use base qw/DBIx::Class::Schema/;
+
+  __PACKAGE__->load_classes(qw/Actor Role/);
+
+=item 2.
+
+Create some classes for the tables in the database, for example an 
+Actor in MyApp/Schema/FilmDB/Actor.pm:
+
+  package MyApp::Schema::FilmDB::Actor;
+  use base qw/DBIx::Class/
+
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('actor');
+
+  ...
+
+and a Role in MyApp/Schema/Role.pm:
+
+  package MyApp::Schema::FilmDB::Role;
+  use base qw/DBIx::Class/
+
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('role');
+
+  ...    
+
+Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
+usable as a standalone module and you can test/run it without Catalyst. 
+
+=item 3.
+
+To expose it to Catalyst as a model, you should create a DBIC Model in
+MyApp/Model/FilmDB.pm:
+
+  package MyApp::Model::FilmDB;
+  use base qw/Catalyst::Model::DBIC::Schema/;
+
+  __PACKAGE__->config(
+      schema_class => 'MyApp::Schema::FilmDB',
+      connect_info => [
+                        "DBI:...",
+                        "username",
+                        "password",
+                        {AutoCommit => 1}
+                      ]
+  );
+
+See below for a full list of the possible config parameters.
+
+=back
+
+Now you have a working Model, accessing your separate DBIC Schema. Which can
+be used/accessed in the normal Catalyst manner, via $c->model():
+
+  my $actor = $c->model('FilmDB::Actor')->find(1);
+
+You can also use it to set up DBIC authentication with 
+Authentication::Store::DBIC in MyApp.pm:
+
+  package MyApp;
+
+  use Catalyst qw/... Authentication::Store::DBIC/;
+
+  ...
+
+  __PACKAGE__->config->{authentication}{dbic} = {
+      user_class      => 'FilmDB::Actor',
+      user_field      => 'name',
+      password_field  => 'password'
+  }
+
+C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
+parameter passed. To find out more about which methods can be called on a
+ResultSet, or how to add your own methods to it, please see the ResultSet
+documentation in the L<DBIx::Class> distribution.
+
+Some examples are given below:
+
+  # to access schema methods directly:
+  $c->model('FilmDB')->schema->source(...);
+
+  # to access the source object, resultset, and class:
+  $c->model('FilmDB')->source(...);
+  $c->model('FilmDB')->resultset(...);
+  $c->model('FilmDB')->class(...);
+
+  # For resultsets, there's an even quicker shortcut:
+  $c->model('FilmDB::Actor')
+  # is the same as $c->model('FilmDB')->resultset('Actor')
+
+  # To get the composed schema for making new connections:
+  my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
+
+  # Or the same thing via a convenience shortcut:
+  my $newconn = $c->model('FilmDB')->connect(...);
+
+  # or, if your schema works on different storage drivers:
+  my $newconn = $c->model('FilmDB')->composed_schema->clone();
+  $newconn->storage_type('::LDAP');
+  $newconn->connection(...);
+
+  # and again, a convenience shortcut
+  my $newconn = $c->model('FilmDB')->clone();
+  $newconn->storage_type('::LDAP');
+  $newconn->connection(...);
+
+=head1 DESCRIPTION
+
+This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
+the documentation for L<Catalyst::Helper::Model::DBIC::Schema> for
+information on generating these Models via Helper scripts.
+
+=head1 CONFIG PARAMETERS
+
+=over 4
+
+=item schema_class
+
+This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
+to be findable in C<@INC>, but it does not need to be inside the 
+C<Catalyst::Model::> namespace.  This parameter is required.
+
+=item connect_info
+
+This is an arrayref of connection parameters, which are specific to your
+C<storage_type> (see your storage type documentation for more details).
+
+This is not required if C<schema_class> already has connection information
+defined inside itself (which isn't highly recommended, but can be done)
+
+For L<DBIx::Class::Storage::DBI>, which is the only supported
+C<storage_type> in L<DBIx::Class> at the time of this writing, the
+parameters are your dsn, username, password, and connect options hashref.
+
+If you need to specify the L<DBIx::Class::Storage::DBI> specific parameter
+C<on_connect_do>, or the related C<sql_maker> options C<limit_dialect>,
+C<quote_char>, or C<name_sep>, you can place these options into a hashref
+as the final element of the C<connect_info> arrayref.  If in doubt, don't
+specify these options.  You would know it if you needed them.
+
+Examples:
+
+  connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
+
+  connect_info => [
+                    'dbi:SQLite:dbname=foo.db',
+                    {
+                      on_connect_do => [
+                        'PRAGMA synchronous = OFF',
+                      ],
+                    }
+                  ],
+
+  connect_info => [
+                    'dbi:Pg:dbname=mypgdb',
+                    'postgres',
+                    '',
+                    { AutoCommit => 0 },
+                    {
+                      on_connect_do => [
+                        'some SQL statement',
+                        'another SQL statement',
+                      ],
+                    }
+                  ],
+
+=item storage_type
+
+Allows the use of a different C<storage_type> than what is set in your
+C<schema_class> (which in turn defaults to C<::DBI> if not set in current
+L<DBIx::Class>).  Completely optional, and probably unnecessary for most
+people until other storage backends become available for L<DBIx::Class>.
+
+=back
+
+=head1 METHODS
+
+=over 4
+
+=item new
+
+Instantiates the Model based on the above-documented ->config parameters.
+The only required parameter is C<schema_class>.  C<connect_info> is
+required in the case that C<schema_class> does not already have connection
+information defined for it.
+
+=item schema
+
+Accessor which returns the connected schema being used by the this model.
+There are direct shortcuts on the model class itself for
+schema->resultset, schema->source, and schema->class.
+
+=item composed_schema
+
+Accessor which returns the composed schema, which has no connection info,
+which was used in constructing the C<schema> above.  Useful for creating
+new connections based on the same schema/model.  There are direct shortcuts
+from the model object for composed_schema->clone and composed_schema->connect
+
+=item clone
+
+Shortcut for ->composed_schema->clone
+
+=item connect
+
+Shortcut for ->composed_schema->connect
+
+=item source
+
+Shortcut for ->schema->source
+
+=item class
+
+Shortcut for ->schema->class
+
+=item resultset
+
+Shortcut for ->schema->resultset
+
+=item storage
+
+Provides an accessor for the connected schema's storage object.
+Used often for debugging and controlling transactions.
+
+=back
+
+=cut
+
+sub new {
+    my $self = shift->NEXT::new(@_);
+    
+    my $class = ref($self);
+    my $model_name = $class;
+    $model_name =~ s/^[\w:]+::(?:Model|M):://;
+
+    croak "->config->{schema_class} must be defined for this model"
+        unless $self->{schema_class};
+
+    my $schema_class = $self->{schema_class};
+
+    $schema_class->require
+        or croak "Cannot load schema class '$schema_class': $@";
+
+    if( !$self->{connect_info} ) {
+        if($schema_class->storage && $schema_class->storage->connect_info) {
+            $self->{connect_info} = $schema_class->storage->connect_info;
+        }
+        else {
+            croak "Either ->config->{connect_info} must be defined for $class"
+                  . " or $schema_class must have connect info defined on it"
+		  . "Here's what we got:\n"
+		  . Dumper($self);
+        }
+    }
+
+    $self->composed_schema($schema_class->compose_namespace($class));
+    $self->schema($self->composed_schema->clone);
+
+    $self->schema->storage_type($self->{storage_type})
+        if $self->{storage_type};
+
+    # XXX This is temporary, until DBIx::Class::Storage::DBI supports the
+    #  same syntax and we switch our requisite to that version somewhere
+    #  down the line.  This syntax is already committed into DBIx::Class
+    #  -current branch post-0.06.
+    # At that time, this whole block can revert back to just being:
+    #  $self->schema->connection(@{$self->{connect_info}});
+    
+    my $connect_info = [ @{$self->{connect_info}} ];
+    my ($on_connect_do, %sql_maker_opts);
+    if($DBIx::Class::VERSION < 0.069) {
+        my $used;
+        my $last_info = $self->{connect_info}->[-1];
+        if(ref $last_info eq 'HASH') {
+            if($on_connect_do = $last_info->{on_connect_do}) {
+              $used = 1;
+            }
+            for my $sql_maker_opt (qw/limit_dialect quote_char name_sep/) {
+              if(my $opt_val = $last_info->{$sql_maker_opt}) {
+                $used = 1;
+                $sql_maker_opts{$sql_maker_opt} = $opt_val;
+              }
+            }
+            pop(@$connect_info) if $used;
+        }
+    }
+
+    $self->schema->connection(@$connect_info);
+
+    if($DBIx::Class::VERSION < 0.069) {
+        $self->schema->storage->on_connect_do($on_connect_do)
+            if $on_connect_do;
+        foreach my $sql_maker_opt (keys %sql_maker_opts) {
+            $self->schema->storage->sql_maker->$sql_maker_opt(
+                $sql_maker_opts{$sql_maker_opt}
+            );
+        }
+    }
+
+    # XXX end of compatibility block referenced above
+
+    no strict 'refs';
+    foreach my $moniker ($self->schema->sources) {
+        my $classname = "${class}::$moniker";
+        *{"${classname}::ACCEPT_CONTEXT"} = sub {
+            shift;
+            shift->model($model_name)->resultset($moniker);
+        }
+    }
+
+    return $self;
+}
+
+sub clone { shift->composed_schema->clone(@_); }
+
+sub connect { shift->composed_schema->connect(@_); }
+
+sub storage { shift->schema->storage(@_); }
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 COPYRIGHT
+
+This program is free software, you can redistribute it and/or modify it
+under the same terms as Perl itself.
+
+=cut
+
+1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/t)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/t/01use.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/01use.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,5 +0,0 @@
-use strict;
-use Test::More tests => 2;
-
-BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
-BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/t/01use.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/t/01use.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/01use.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,5 @@
+use strict;
+use Test::More tests => 2;
+
+BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
+BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/t/02pod.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/02pod.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,8 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod 1.14";
-plan skip_all => 'Test::Pod 1.14 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_files_ok();
-

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/t/02pod.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/t/02pod.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/02pod.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,8 @@
+use Test::More;
+
+eval "use Test::Pod 1.14";
+plan skip_all => 'Test::Pod 1.14 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_files_ok();
+

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/t/03podcoverage.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/03podcoverage.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,7 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod::Coverage 1.04";
-plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_coverage_ok();

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/t/03podcoverage.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/t/03podcoverage.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/03podcoverage.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,7 @@
+use Test::More;
+
+eval "use Test::Pod::Coverage 1.04";
+plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_coverage_ok();

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/t/04kwalitee.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/04kwalitee.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,5 +0,0 @@
-use Test::More;
-
-eval { require Test::Kwalitee; Test::Kwalitee->import() };
-
-plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/t/04kwalitee.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/t/04kwalitee.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/04kwalitee.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,5 @@
+use Test::More;
+
+eval { require Test::Kwalitee; Test::Kwalitee->import() };
+
+plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.16/t/05testapp.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/05testapp.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,46 +0,0 @@
-use strict;
-use Test::More;
-use FindBin;
-use File::Spec;
-use File::Find;
-
-plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
-    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
-
-# XXX this test needs a re-write to fully test the current set of capabilities...
-
-my $test_params = [
-    [ 'TestSchema', 'DBIC::Schema', '' ],
-    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
-];
-
-plan tests => (2 * @$test_params);
-
-my $test_dir   = $FindBin::Bin;
-my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
-my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
-my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
-my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
-my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
-
-chdir($test_dir);
-system("catalyst.pl TestApp");
-chdir($cat_dir);
-
-foreach my $tparam (@$test_params) {
-   my ($model, $helper, $args) = @$tparam;
-   system("$^X -I$blib_dir $creator model $model $helper $model $args");
-   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
-   ok( -f $model_path, "$model_path is a file" );
-   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
-   ok($compile_rv == 0, "perl -c $model_path");
-}
-
-chdir($test_dir);
-
-sub rm_rf {
-    my $name = $File::Find::name;
-    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
-    else { unlink $name or die "Cannot unlink $name: $!" }
-}
-finddepth(\&rm_rf, $cat_dir);

Copied: tags/Catalyst-Model-DBIC-Schema/0.16/t/05testapp.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.16/t/05testapp.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.16/t/05testapp.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.16/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,46 @@
+use strict;
+use Test::More;
+use FindBin;
+use File::Spec;
+use File::Find;
+
+plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
+    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
+
+# XXX this test needs a re-write to fully test the current set of capabilities...
+
+my $test_params = [
+    [ 'TestSchema', 'DBIC::Schema', '' ],
+    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
+];
+
+plan tests => (2 * @$test_params);
+
+my $test_dir   = $FindBin::Bin;
+my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
+my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
+my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
+my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
+my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
+
+chdir($test_dir);
+system("catalyst.pl TestApp");
+chdir($cat_dir);
+
+foreach my $tparam (@$test_params) {
+   my ($model, $helper, $args) = @$tparam;
+   system("$^X -I$blib_dir $creator model $model $helper $model $args");
+   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
+   ok( -f $model_path, "$model_path is a file" );
+   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
+   ok($compile_rv == 0, "perl -c $model_path");
+}
+
+chdir($test_dir);
+
+sub rm_rf {
+    my $name = $File::Find::name;
+    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
+    else { unlink $name or die "Cannot unlink $name: $!" }
+}
+finddepth(\&rm_rf, $cat_dir);

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01 (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/Build.PL
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/Build.PL	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/Build.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,25 +0,0 @@
-use strict;
-use Module::Build;
-
-my %arguments = (
-    license            => 'perl',
-    module_name        => 'Catalyst::Model::DBIC::Schema',
-    requires           => {
-        'DBIx::Class'           => 0.07000,
-        'Catalyst'              => 5.64,
-        'UNIVERSAL::require'    => 0.10,
-        'Class::Data::Accessor' => 0.02,
-        'Class::Accessor::Fast' => 0.22,
-    },
-    recommends         => {
-        'Catalyst::Devel'             => 1.0,
-        'DBIx::Class::Schema::Loader' => 0.03006,
-    },
-    build_requires     => {
-        'Test::More'            => 0.32,
-    },
-    create_makefile_pl => 'passthrough',
-    create_readme      => 1,
-);
-
-Module::Build->new(%arguments)->create_build_script;

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/Build.PL (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/Build.PL)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/Build.PL	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/Build.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,25 @@
+use strict;
+use Module::Build;
+
+my %arguments = (
+    license            => 'perl',
+    module_name        => 'Catalyst::Model::DBIC::Schema',
+    requires           => {
+        'DBIx::Class'           => 0.07000,
+        'Catalyst'              => 5.64,
+        'UNIVERSAL::require'    => 0.10,
+        'Class::Data::Accessor' => 0.02,
+        'Class::Accessor::Fast' => 0.22,
+    },
+    recommends         => {
+        'Catalyst::Devel'             => 1.0,
+        'DBIx::Class::Schema::Loader' => 0.03006,
+    },
+    build_requires     => {
+        'Test::More'            => 0.32,
+    },
+    create_makefile_pl => 'passthrough',
+    create_readme      => 1,
+);
+
+Module::Build->new(%arguments)->create_build_script;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/Changes
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/Changes	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,64 +0,0 @@
-Revision history for Perl extension Catalyst::Model::DBIC::Schema
-
-0.17_01 Thu Jul 27 01:06:13 UTC 2006
-        - Updated for DBIC 0.07
-
-0.16  Thu Jul  6 13:28:45 UTC 2006
-        - Bugfix for create=static and connect_info coderef snippets
-	- Be more verbose when connection_info is not set.
-
-0.15  Tue Jun  6 01:33:57 UTC 2006
-        - Fixed a serious bug in create=static usage
-        - Re-arranged output generation so that the more likely
-          failure to generate Schemas via create= will cause the
-          helper to abort before generating the Model class itself
-
-0.14  Mon Jun  5 23:34:35 UTC 2006
-        - Helpers merged, helper syntax changed
-        - Everything updated for Schema::Loader 0.03001 support, including
-          what amounts to using Loader in one-shot mode to generate
-          a manual Schema with matching Model.
-        - fixed stupid typo in docs
-
-0.13  Wed Apr 26 2006
-        - noted support via mailing lists
-
-0.12  Tue Apr 25 2006
-        - SYNOPSIS improved substantially to help newbies get started
-
-0.11  Sun Mar 26 17:22:31 UTC 2006
-        - Removed on_connect_do config setting (it was only out
-          in public for 4 days...).
-        - Support for on_connect_do and sql_maker options as part
-          of connect_info
-
-0.10  Wed Mar 22 07:06:02 UTC 2006
-        - Added on_connect_do config setting
-        - Added convenience method for ->schema->storage from paulm
-
-0.08  Tue Feb 28 00:04:16 UTC 2006
-        - Bumped D::C::Schema::Loader recommendation to 0.02003
-          (should have been done last release)
-        - Removed the ->require stuff added in 0.07, it doesn't
-          do what it is supposed to do.  For now, users can layer
-          at the Schema::Loader level rather than at Model.
-
-0.07  Sun Feb 19 21:50:18 UTC 2006
-        - bugfix for ::SchemaLoader::Foo password argument, and
-          switch to connect_info argument of new Schema::Loader
-        - Added ->require for source classes, so that you can
-          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
-          generated MyApp::Model::Foo::Bar.
-
-0.06  Sat Feb 18 19:05:17 UTC 2006
-        - Fix simple pod-related bug introduced in last rev
-        - Added optional test that uses the helpers
-
-0.05  Fri Feb 17 20:52:21 UTC 2006
-        - Stop showing the template pod in pod tools and cpan,
-          per Gavin's email.
-        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
-          subtle issues under mod_perl engines.
-
-0.04  Mon Feb 13 04:22:49 UTC 2006
-        - First public release

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/Changes (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/Changes)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/Changes	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,64 @@
+Revision history for Perl extension Catalyst::Model::DBIC::Schema
+
+0.17_01 Thu Jul 27 01:06:13 UTC 2006
+        - Updated for DBIC 0.07
+
+0.16  Thu Jul  6 13:28:45 UTC 2006
+        - Bugfix for create=static and connect_info coderef snippets
+	- Be more verbose when connection_info is not set.
+
+0.15  Tue Jun  6 01:33:57 UTC 2006
+        - Fixed a serious bug in create=static usage
+        - Re-arranged output generation so that the more likely
+          failure to generate Schemas via create= will cause the
+          helper to abort before generating the Model class itself
+
+0.14  Mon Jun  5 23:34:35 UTC 2006
+        - Helpers merged, helper syntax changed
+        - Everything updated for Schema::Loader 0.03001 support, including
+          what amounts to using Loader in one-shot mode to generate
+          a manual Schema with matching Model.
+        - fixed stupid typo in docs
+
+0.13  Wed Apr 26 2006
+        - noted support via mailing lists
+
+0.12  Tue Apr 25 2006
+        - SYNOPSIS improved substantially to help newbies get started
+
+0.11  Sun Mar 26 17:22:31 UTC 2006
+        - Removed on_connect_do config setting (it was only out
+          in public for 4 days...).
+        - Support for on_connect_do and sql_maker options as part
+          of connect_info
+
+0.10  Wed Mar 22 07:06:02 UTC 2006
+        - Added on_connect_do config setting
+        - Added convenience method for ->schema->storage from paulm
+
+0.08  Tue Feb 28 00:04:16 UTC 2006
+        - Bumped D::C::Schema::Loader recommendation to 0.02003
+          (should have been done last release)
+        - Removed the ->require stuff added in 0.07, it doesn't
+          do what it is supposed to do.  For now, users can layer
+          at the Schema::Loader level rather than at Model.
+
+0.07  Sun Feb 19 21:50:18 UTC 2006
+        - bugfix for ::SchemaLoader::Foo password argument, and
+          switch to connect_info argument of new Schema::Loader
+        - Added ->require for source classes, so that you can
+          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
+          generated MyApp::Model::Foo::Bar.
+
+0.06  Sat Feb 18 19:05:17 UTC 2006
+        - Fix simple pod-related bug introduced in last rev
+        - Added optional test that uses the helpers
+
+0.05  Fri Feb 17 20:52:21 UTC 2006
+        - Stop showing the template pod in pod tools and cpan,
+          per Gavin's email.
+        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
+          subtle issues under mod_perl engines.
+
+0.04  Mon Feb 13 04:22:49 UTC 2006
+        - First public release

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/MANIFEST.SKIP
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/MANIFEST.SKIP	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,28 +0,0 @@
-# Avoid version control files.
-\bRCS\b
-\bCVS\b
-,v$
-\B\.svn\b
-
-# Avoid Makemaker generated and utility files.
-\bMakefile$
-\bblib
-\bMakeMaker-\d
-\bpm_to_blib$
-\bblibdirs$
-^MANIFEST\.SKIP$
-
-# Avoid Module::Build generated and utility files.
-\bBuild$
-\b_build
-
-# Avoid temp and backup files.
-~$
-\.tmp$
-\.old$
-\.bak$
-\#$
-\b\.#
-
-# avoid dist files
-\.tar\.gz$

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/MANIFEST.SKIP (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/MANIFEST.SKIP)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/MANIFEST.SKIP	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,28 @@
+# Avoid version control files.
+\bRCS\b
+\bCVS\b
+,v$
+\B\.svn\b
+
+# Avoid Makemaker generated and utility files.
+\bMakefile$
+\bblib
+\bMakeMaker-\d
+\bpm_to_blib$
+\bblibdirs$
+^MANIFEST\.SKIP$
+
+# Avoid Module::Build generated and utility files.
+\bBuild$
+\b_build
+
+# Avoid temp and backup files.
+~$
+\.tmp$
+\.old$
+\.bak$
+\#$
+\b\.#
+
+# avoid dist files
+\.tar\.gz$

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/Makefile.PL
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/Makefile.PL	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,31 +0,0 @@
-# Note: this file was auto-generated by Module::Build::Compat version 0.03
-    
-    unless (eval "use Module::Build::Compat 0.02; 1" ) {
-      print "This module requires Module::Build to install itself.\n";
-      
-      require ExtUtils::MakeMaker;
-      my $yn = ExtUtils::MakeMaker::prompt
-	('  Install Module::Build now from CPAN?', 'y');
-      
-      unless ($yn =~ /^y/i) {
-	die " *** Cannot install without Module::Build.  Exiting ...\n";
-      }
-      
-      require Cwd;
-      require File::Spec;
-      require CPAN;
-      
-      # Save this 'cause CPAN will chdir all over the place.
-      my $cwd = Cwd::cwd();
-      
-      CPAN::Shell->install('Module::Build::Compat');
-      CPAN::Shell->expand("Module", "Module::Build::Compat")->uptodate
-	or die "Couldn't install Module::Build, giving up.\n";
-      
-      chdir $cwd or die "Cannot chdir() back to $cwd: $!";
-    }
-    eval "use Module::Build::Compat 0.02; 1" or die $@;
-    
-    Module::Build::Compat->run_build_pl(args => \@ARGV);
-    require Module::Build;
-    Module::Build::Compat->write_makefile(build_class => 'Module::Build');

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/Makefile.PL (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/Makefile.PL)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/Makefile.PL	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,31 @@
+# Note: this file was auto-generated by Module::Build::Compat version 0.03
+    
+    unless (eval "use Module::Build::Compat 0.02; 1" ) {
+      print "This module requires Module::Build to install itself.\n";
+      
+      require ExtUtils::MakeMaker;
+      my $yn = ExtUtils::MakeMaker::prompt
+	('  Install Module::Build now from CPAN?', 'y');
+      
+      unless ($yn =~ /^y/i) {
+	die " *** Cannot install without Module::Build.  Exiting ...\n";
+      }
+      
+      require Cwd;
+      require File::Spec;
+      require CPAN;
+      
+      # Save this 'cause CPAN will chdir all over the place.
+      my $cwd = Cwd::cwd();
+      
+      CPAN::Shell->install('Module::Build::Compat');
+      CPAN::Shell->expand("Module", "Module::Build::Compat")->uptodate
+	or die "Couldn't install Module::Build, giving up.\n";
+      
+      chdir $cwd or die "Cannot chdir() back to $cwd: $!";
+    }
+    eval "use Module::Build::Compat 0.02; 1" or die $@;
+    
+    Module::Build::Compat->run_build_pl(args => \@ARGV);
+    require Module::Build;
+    Module::Build::Compat->write_makefile(build_class => 'Module::Build');

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/lib)

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst)

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper)

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,230 +0,0 @@
-package Catalyst::Helper::Model::DBIC::Schema;
-
-use strict;
-use warnings;
-use Carp;
-use UNIVERSAL::require;
-
-=head1 NAME
-
-Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
-
-=head1 SYNOPSIS
-
-  script/create.pl model ModelName DBIC::Schema My::SchemaClass [ create=dynamic | create=static ] [ connect_info arguments ]
-
-=head1 DESCRIPTION
-
-Helper for the DBIC Schema Models.
-
-=head2 Arguments:
-
-    ModelName is the short name for the Model class being generated
-
-    My::SchemaClass is the fully qualified classname of your Schema,
-      which might or might not yet exist.
-
-    create=dynamic instructs this Helper to generate the named Schema
-      class for you, basing it on L<DBIx::Class::Schema::Loader> (which
-      means the table information will always be dynamically loaded at
-      runtime from the database).
-
-    create=static instructs this Helper to generate the named Schema
-      class for you, using L<DBIx::Class::Schema::Loader> in "one shot"
-      mode to create a standard, manually-defined L<DBIx::Class::Schema>
-      setup, based on what the Loader sees in your database at this moment.
-      A Schema/Model pair generated this way will not require
-      L<DBIx::Class::Schema::Loader> at runtime, and will not automatically
-      adapt itself to changes in your database structure.  You can edit
-      the generated classes by hand to refine them.
-
-    connect_info arguments are the same as what DBIx::Class::Schema::connect
-      expects, and are storage_type-specific.  For DBI-based storage, these
-      arguments are the dsn, username, password, and connect options,
-      respectively.  These are optional for existing Schemas, but required
-      if you use either of the C<create=> options.
-
-Use of either of the C<create=> options requires L<DBIx::Class::Schema::Loader>.
-
-=head1 TYPICAL EXAMPLES
-
-  # Use DBIx::Class::Schema::Loader to create a static DBIx::Class::Schema,
-  #  and a Model which references it:
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=static dbi:mysql:foodb myuname mypass
-
-  # Create a dynamic DBIx::Class::Schema::Loader-based Schema,
-  #  and a Model which references it:
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=dynamic dbi:mysql:foodb myuname mypass
-
-  # Reference an existing Schema of any kind, and provide some connection information for ->config:
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass dbi:mysql:foodb myuname mypass
-
-  # Same, but don't supply connect information yet (you'll need to do this
-  #  in your app config, or [not recommended] in the schema itself).
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass
-
-=head2 METHODS
-
-=head3 mk_compclass
-
-=cut
-
-sub mk_compclass {
-    my ( $self, $helper, $schema_class, @connect_info) = @_;
-
-    $helper->{schema_class} = $schema_class
-        or croak "Must supply schema class name";
-
-    my $create = '';
-    if($connect_info[0] && $connect_info[0] =~ /^create=(dynamic|static)$/) {
-        $create = $1;
-        shift @connect_info;
-    }
-
-    if(@connect_info) {
-        $helper->{setup_connect_info} = 1;
-        my @helper_connect_info = @connect_info;
-        for(@helper_connect_info) {
-            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
-        }
-        $helper->{connect_info} = \@helper_connect_info;
-    }
-
-    if($create eq 'dynamic') {
-        my @schema_parts = split(/\:\:/, $helper->{schema_class});
-        my $schema_file_part = pop @schema_parts;
-
-        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib', @schema_parts );
-        my $schema_file = File::Spec->catfile( $schema_dir, $schema_file_part . '.pm' );
-
-        $helper->mk_dir($schema_dir);
-        $helper->render_file( 'schemaclass', $schema_file );
-    }
-    elsif($create eq 'static') {
-        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib' );
-        DBIx::Class::Schema::Loader->use("dump_to_dir:$schema_dir", 'make_schema_at')
-            or croak "Cannot load DBIx::Class::Schema::Loader: $@";
-
-        my @loader_connect_info = @connect_info;
-        my $num = 6; # argument number on the commandline for "dbi:..."
-        for(@loader_connect_info) {
-            if(/^\s*[[{]/) {
-                $_ = eval "$_";
-                croak "Perl syntax error in commandline argument $num: $@" if $@;
-            }
-            $num++;
-        }
-
-        make_schema_at(
-            $schema_class,
-            { relationships => 1 },
-            \@loader_connect_info,
-        );
-    }
-
-    my $file = $helper->{file};
-    $helper->render_file( 'compclass', $file );
-}
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__DATA__
-
-=begin pod_to_ignore
-
-__schemaclass__
-package [% schema_class %];
-
-use strict;
-use base qw/DBIx::Class::Schema::Loader/;
-
-__PACKAGE__->loader_options(
-    relationships => 1,
-    # debug => 1,
-);
-
-=head1 NAME
-
-[% schema_class %] - DBIx::Class::Schema::Loader class
-
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__compclass__
-package [% class %];
-
-use strict;
-use base 'Catalyst::Model::DBIC::Schema';
-
-__PACKAGE__->config(
-    schema_class => '[% schema_class %]',
-    [% IF setup_connect_info %]connect_info => [
-        [% FOREACH arg = connect_info %][% arg %],
-        [% END %]
-    ],[% END %]
-);
-
-=head1 NAME
-
-[% class %] - Catalyst DBIC Schema Model
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-L<Catalyst::Model::DBIC::Schema> Model using schema L<[% schema_class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,230 @@
+package Catalyst::Helper::Model::DBIC::Schema;
+
+use strict;
+use warnings;
+use Carp;
+use UNIVERSAL::require;
+
+=head1 NAME
+
+Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
+
+=head1 SYNOPSIS
+
+  script/create.pl model ModelName DBIC::Schema My::SchemaClass [ create=dynamic | create=static ] [ connect_info arguments ]
+
+=head1 DESCRIPTION
+
+Helper for the DBIC Schema Models.
+
+=head2 Arguments:
+
+    ModelName is the short name for the Model class being generated
+
+    My::SchemaClass is the fully qualified classname of your Schema,
+      which might or might not yet exist.
+
+    create=dynamic instructs this Helper to generate the named Schema
+      class for you, basing it on L<DBIx::Class::Schema::Loader> (which
+      means the table information will always be dynamically loaded at
+      runtime from the database).
+
+    create=static instructs this Helper to generate the named Schema
+      class for you, using L<DBIx::Class::Schema::Loader> in "one shot"
+      mode to create a standard, manually-defined L<DBIx::Class::Schema>
+      setup, based on what the Loader sees in your database at this moment.
+      A Schema/Model pair generated this way will not require
+      L<DBIx::Class::Schema::Loader> at runtime, and will not automatically
+      adapt itself to changes in your database structure.  You can edit
+      the generated classes by hand to refine them.
+
+    connect_info arguments are the same as what DBIx::Class::Schema::connect
+      expects, and are storage_type-specific.  For DBI-based storage, these
+      arguments are the dsn, username, password, and connect options,
+      respectively.  These are optional for existing Schemas, but required
+      if you use either of the C<create=> options.
+
+Use of either of the C<create=> options requires L<DBIx::Class::Schema::Loader>.
+
+=head1 TYPICAL EXAMPLES
+
+  # Use DBIx::Class::Schema::Loader to create a static DBIx::Class::Schema,
+  #  and a Model which references it:
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=static dbi:mysql:foodb myuname mypass
+
+  # Create a dynamic DBIx::Class::Schema::Loader-based Schema,
+  #  and a Model which references it:
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=dynamic dbi:mysql:foodb myuname mypass
+
+  # Reference an existing Schema of any kind, and provide some connection information for ->config:
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass dbi:mysql:foodb myuname mypass
+
+  # Same, but don't supply connect information yet (you'll need to do this
+  #  in your app config, or [not recommended] in the schema itself).
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass
+
+=head2 METHODS
+
+=head3 mk_compclass
+
+=cut
+
+sub mk_compclass {
+    my ( $self, $helper, $schema_class, @connect_info) = @_;
+
+    $helper->{schema_class} = $schema_class
+        or croak "Must supply schema class name";
+
+    my $create = '';
+    if($connect_info[0] && $connect_info[0] =~ /^create=(dynamic|static)$/) {
+        $create = $1;
+        shift @connect_info;
+    }
+
+    if(@connect_info) {
+        $helper->{setup_connect_info} = 1;
+        my @helper_connect_info = @connect_info;
+        for(@helper_connect_info) {
+            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
+        }
+        $helper->{connect_info} = \@helper_connect_info;
+    }
+
+    if($create eq 'dynamic') {
+        my @schema_parts = split(/\:\:/, $helper->{schema_class});
+        my $schema_file_part = pop @schema_parts;
+
+        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib', @schema_parts );
+        my $schema_file = File::Spec->catfile( $schema_dir, $schema_file_part . '.pm' );
+
+        $helper->mk_dir($schema_dir);
+        $helper->render_file( 'schemaclass', $schema_file );
+    }
+    elsif($create eq 'static') {
+        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib' );
+        DBIx::Class::Schema::Loader->use("dump_to_dir:$schema_dir", 'make_schema_at')
+            or croak "Cannot load DBIx::Class::Schema::Loader: $@";
+
+        my @loader_connect_info = @connect_info;
+        my $num = 6; # argument number on the commandline for "dbi:..."
+        for(@loader_connect_info) {
+            if(/^\s*[[{]/) {
+                $_ = eval "$_";
+                croak "Perl syntax error in commandline argument $num: $@" if $@;
+            }
+            $num++;
+        }
+
+        make_schema_at(
+            $schema_class,
+            { relationships => 1 },
+            \@loader_connect_info,
+        );
+    }
+
+    my $file = $helper->{file};
+    $helper->render_file( 'compclass', $file );
+}
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__DATA__
+
+=begin pod_to_ignore
+
+__schemaclass__
+package [% schema_class %];
+
+use strict;
+use base qw/DBIx::Class::Schema::Loader/;
+
+__PACKAGE__->loader_options(
+    relationships => 1,
+    # debug => 1,
+);
+
+=head1 NAME
+
+[% schema_class %] - DBIx::Class::Schema::Loader class
+
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__compclass__
+package [% class %];
+
+use strict;
+use base 'Catalyst::Model::DBIC::Schema';
+
+__PACKAGE__->config(
+    schema_class => '[% schema_class %]',
+    [% IF setup_connect_info %]connect_info => [
+        [% FOREACH arg = connect_info %][% arg %],
+        [% END %]
+    ],[% END %]
+);
+
+=head1 NAME
+
+[% class %] - Catalyst DBIC Schema Model
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+L<Catalyst::Model::DBIC::Schema> Model using schema L<[% schema_class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,336 +0,0 @@
-package Catalyst::Model::DBIC::Schema;
-
-use strict;
-use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
-use NEXT;
-use UNIVERSAL::require;
-use Carp;
-use Data::Dumper;
-require DBIx::Class;
-
-our $VERSION = '0.17_01';
-
-__PACKAGE__->mk_classaccessor('composed_schema');
-__PACKAGE__->mk_accessors('schema');
-
-=head1 NAME
-
-Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
-
-=head1 SYNOPSIS
-
-Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
-
-=over
-
-=item 1.
-
-Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
-
-  package MyApp::Schema::FilmDB;
-  use base qw/DBIx::Class::Schema/;
-
-  __PACKAGE__->load_classes(qw/Actor Role/);
-
-=item 2.
-
-Create some classes for the tables in the database, for example an 
-Actor in MyApp/Schema/FilmDB/Actor.pm:
-
-  package MyApp::Schema::FilmDB::Actor;
-  use base qw/DBIx::Class/
-
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('actor');
-
-  ...
-
-and a Role in MyApp/Schema/Role.pm:
-
-  package MyApp::Schema::FilmDB::Role;
-  use base qw/DBIx::Class/
-
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('role');
-
-  ...    
-
-Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
-usable as a standalone module and you can test/run it without Catalyst. 
-
-=item 3.
-
-To expose it to Catalyst as a model, you should create a DBIC Model in
-MyApp/Model/FilmDB.pm:
-
-  package MyApp::Model::FilmDB;
-  use base qw/Catalyst::Model::DBIC::Schema/;
-
-  __PACKAGE__->config(
-      schema_class => 'MyApp::Schema::FilmDB',
-      connect_info => [
-                        "DBI:...",
-                        "username",
-                        "password",
-                        {AutoCommit => 1}
-                      ]
-  );
-
-See below for a full list of the possible config parameters.
-
-=back
-
-Now you have a working Model, accessing your separate DBIC Schema. Which can
-be used/accessed in the normal Catalyst manner, via $c->model():
-
-  my $actor = $c->model('FilmDB::Actor')->find(1);
-
-You can also use it to set up DBIC authentication with 
-Authentication::Store::DBIC in MyApp.pm:
-
-  package MyApp;
-
-  use Catalyst qw/... Authentication::Store::DBIC/;
-
-  ...
-
-  __PACKAGE__->config->{authentication}{dbic} = {
-      user_class      => 'FilmDB::Actor',
-      user_field      => 'name',
-      password_field  => 'password'
-  }
-
-C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
-parameter passed. To find out more about which methods can be called on a
-ResultSet, or how to add your own methods to it, please see the ResultSet
-documentation in the L<DBIx::Class> distribution.
-
-Some examples are given below:
-
-  # to access schema methods directly:
-  $c->model('FilmDB')->schema->source(...);
-
-  # to access the source object, resultset, and class:
-  $c->model('FilmDB')->source(...);
-  $c->model('FilmDB')->resultset(...);
-  $c->model('FilmDB')->class(...);
-
-  # For resultsets, there's an even quicker shortcut:
-  $c->model('FilmDB::Actor')
-  # is the same as $c->model('FilmDB')->resultset('Actor')
-
-  # To get the composed schema for making new connections:
-  my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
-
-  # Or the same thing via a convenience shortcut:
-  my $newconn = $c->model('FilmDB')->connect(...);
-
-  # or, if your schema works on different storage drivers:
-  my $newconn = $c->model('FilmDB')->composed_schema->clone();
-  $newconn->storage_type('::LDAP');
-  $newconn->connection(...);
-
-  # and again, a convenience shortcut
-  my $newconn = $c->model('FilmDB')->clone();
-  $newconn->storage_type('::LDAP');
-  $newconn->connection(...);
-
-=head1 DESCRIPTION
-
-This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
-the documentation for L<Catalyst::Helper::Model::DBIC::Schema> for
-information on generating these Models via Helper scripts.
-
-=head1 CONFIG PARAMETERS
-
-=over 4
-
-=item schema_class
-
-This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
-to be findable in C<@INC>, but it does not need to be inside the 
-C<Catalyst::Model::> namespace.  This parameter is required.
-
-=item connect_info
-
-This is an arrayref of connection parameters, which are specific to your
-C<storage_type> (see your storage type documentation for more details).
-
-This is not required if C<schema_class> already has connection information
-defined inside itself (which isn't highly recommended, but can be done)
-
-For L<DBIx::Class::Storage::DBI>, which is the only supported
-C<storage_type> in L<DBIx::Class> at the time of this writing, the
-parameters are your dsn, username, password, and connect options hashref.
-
-If you need to specify the L<DBIx::Class::Storage::DBI> specific parameter
-C<on_connect_do>, or the related C<sql_maker> options C<limit_dialect>,
-C<quote_char>, or C<name_sep>, you can place these options into a hashref
-as the final element of the C<connect_info> arrayref.  If in doubt, don't
-specify these options.  You would know it if you needed them.
-
-Examples:
-
-  connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
-
-  connect_info => [
-                    'dbi:SQLite:dbname=foo.db',
-                    {
-                      on_connect_do => [
-                        'PRAGMA synchronous = OFF',
-                      ],
-                    }
-                  ],
-
-  connect_info => [
-                    'dbi:Pg:dbname=mypgdb',
-                    'postgres',
-                    '',
-                    { AutoCommit => 0 },
-                    {
-                      on_connect_do => [
-                        'some SQL statement',
-                        'another SQL statement',
-                      ],
-                    }
-                  ],
-
-=item storage_type
-
-Allows the use of a different C<storage_type> than what is set in your
-C<schema_class> (which in turn defaults to C<::DBI> if not set in current
-L<DBIx::Class>).  Completely optional, and probably unnecessary for most
-people until other storage backends become available for L<DBIx::Class>.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new
-
-Instantiates the Model based on the above-documented ->config parameters.
-The only required parameter is C<schema_class>.  C<connect_info> is
-required in the case that C<schema_class> does not already have connection
-information defined for it.
-
-=item schema
-
-Accessor which returns the connected schema being used by the this model.
-There are direct shortcuts on the model class itself for
-schema->resultset, schema->source, and schema->class.
-
-=item composed_schema
-
-Accessor which returns the composed schema, which has no connection info,
-which was used in constructing the C<schema> above.  Useful for creating
-new connections based on the same schema/model.  There are direct shortcuts
-from the model object for composed_schema->clone and composed_schema->connect
-
-=item clone
-
-Shortcut for ->composed_schema->clone
-
-=item connect
-
-Shortcut for ->composed_schema->connect
-
-=item source
-
-Shortcut for ->schema->source
-
-=item class
-
-Shortcut for ->schema->class
-
-=item resultset
-
-Shortcut for ->schema->resultset
-
-=item storage
-
-Provides an accessor for the connected schema's storage object.
-Used often for debugging and controlling transactions.
-
-=back
-
-=cut
-
-sub new {
-    my $self = shift->NEXT::new(@_);
-    
-    my $class = ref($self);
-    my $model_name = $class;
-    $model_name =~ s/^[\w:]+::(?:Model|M):://;
-
-    croak "->config->{schema_class} must be defined for this model"
-        unless $self->{schema_class};
-
-    my $schema_class = $self->{schema_class};
-
-    $schema_class->require
-        or croak "Cannot load schema class '$schema_class': $@";
-
-    if( !$self->{connect_info} ) {
-        if($schema_class->storage && $schema_class->storage->connect_info) {
-            $self->{connect_info} = $schema_class->storage->connect_info;
-        }
-        else {
-            croak "Either ->config->{connect_info} must be defined for $class"
-                  . " or $schema_class must have connect info defined on it"
-		  . "Here's what we got:\n"
-		  . Dumper($self);
-        }
-    }
-
-    $self->composed_schema($schema_class->compose_namespace($class));
-    $self->schema($self->composed_schema->clone);
-
-    $self->schema->storage_type($self->{storage_type})
-        if $self->{storage_type};
-
-    $self->schema->connection(@{$self->{connect_info}});
-    
-    no strict 'refs';
-    foreach my $moniker ($self->schema->sources) {
-        my $classname = "${class}::$moniker";
-        *{"${classname}::ACCEPT_CONTEXT"} = sub {
-            shift;
-            shift->model($model_name)->resultset($moniker);
-        }
-    }
-
-    return $self;
-}
-
-sub clone { shift->composed_schema->clone(@_); }
-
-sub connect { shift->composed_schema->connect(@_); }
-
-sub storage { shift->schema->storage(@_); }
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 COPYRIGHT
-
-This program is free software, you can redistribute it and/or modify it
-under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,336 @@
+package Catalyst::Model::DBIC::Schema;
+
+use strict;
+use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
+use NEXT;
+use UNIVERSAL::require;
+use Carp;
+use Data::Dumper;
+require DBIx::Class;
+
+our $VERSION = '0.17_01';
+
+__PACKAGE__->mk_classaccessor('composed_schema');
+__PACKAGE__->mk_accessors('schema');
+
+=head1 NAME
+
+Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
+
+=head1 SYNOPSIS
+
+Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
+
+=over
+
+=item 1.
+
+Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
+
+  package MyApp::Schema::FilmDB;
+  use base qw/DBIx::Class::Schema/;
+
+  __PACKAGE__->load_classes(qw/Actor Role/);
+
+=item 2.
+
+Create some classes for the tables in the database, for example an 
+Actor in MyApp/Schema/FilmDB/Actor.pm:
+
+  package MyApp::Schema::FilmDB::Actor;
+  use base qw/DBIx::Class/
+
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('actor');
+
+  ...
+
+and a Role in MyApp/Schema/Role.pm:
+
+  package MyApp::Schema::FilmDB::Role;
+  use base qw/DBIx::Class/
+
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('role');
+
+  ...    
+
+Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
+usable as a standalone module and you can test/run it without Catalyst. 
+
+=item 3.
+
+To expose it to Catalyst as a model, you should create a DBIC Model in
+MyApp/Model/FilmDB.pm:
+
+  package MyApp::Model::FilmDB;
+  use base qw/Catalyst::Model::DBIC::Schema/;
+
+  __PACKAGE__->config(
+      schema_class => 'MyApp::Schema::FilmDB',
+      connect_info => [
+                        "DBI:...",
+                        "username",
+                        "password",
+                        {AutoCommit => 1}
+                      ]
+  );
+
+See below for a full list of the possible config parameters.
+
+=back
+
+Now you have a working Model, accessing your separate DBIC Schema. Which can
+be used/accessed in the normal Catalyst manner, via $c->model():
+
+  my $actor = $c->model('FilmDB::Actor')->find(1);
+
+You can also use it to set up DBIC authentication with 
+Authentication::Store::DBIC in MyApp.pm:
+
+  package MyApp;
+
+  use Catalyst qw/... Authentication::Store::DBIC/;
+
+  ...
+
+  __PACKAGE__->config->{authentication}{dbic} = {
+      user_class      => 'FilmDB::Actor',
+      user_field      => 'name',
+      password_field  => 'password'
+  }
+
+C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
+parameter passed. To find out more about which methods can be called on a
+ResultSet, or how to add your own methods to it, please see the ResultSet
+documentation in the L<DBIx::Class> distribution.
+
+Some examples are given below:
+
+  # to access schema methods directly:
+  $c->model('FilmDB')->schema->source(...);
+
+  # to access the source object, resultset, and class:
+  $c->model('FilmDB')->source(...);
+  $c->model('FilmDB')->resultset(...);
+  $c->model('FilmDB')->class(...);
+
+  # For resultsets, there's an even quicker shortcut:
+  $c->model('FilmDB::Actor')
+  # is the same as $c->model('FilmDB')->resultset('Actor')
+
+  # To get the composed schema for making new connections:
+  my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
+
+  # Or the same thing via a convenience shortcut:
+  my $newconn = $c->model('FilmDB')->connect(...);
+
+  # or, if your schema works on different storage drivers:
+  my $newconn = $c->model('FilmDB')->composed_schema->clone();
+  $newconn->storage_type('::LDAP');
+  $newconn->connection(...);
+
+  # and again, a convenience shortcut
+  my $newconn = $c->model('FilmDB')->clone();
+  $newconn->storage_type('::LDAP');
+  $newconn->connection(...);
+
+=head1 DESCRIPTION
+
+This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
+the documentation for L<Catalyst::Helper::Model::DBIC::Schema> for
+information on generating these Models via Helper scripts.
+
+=head1 CONFIG PARAMETERS
+
+=over 4
+
+=item schema_class
+
+This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
+to be findable in C<@INC>, but it does not need to be inside the 
+C<Catalyst::Model::> namespace.  This parameter is required.
+
+=item connect_info
+
+This is an arrayref of connection parameters, which are specific to your
+C<storage_type> (see your storage type documentation for more details).
+
+This is not required if C<schema_class> already has connection information
+defined inside itself (which isn't highly recommended, but can be done)
+
+For L<DBIx::Class::Storage::DBI>, which is the only supported
+C<storage_type> in L<DBIx::Class> at the time of this writing, the
+parameters are your dsn, username, password, and connect options hashref.
+
+If you need to specify the L<DBIx::Class::Storage::DBI> specific parameter
+C<on_connect_do>, or the related C<sql_maker> options C<limit_dialect>,
+C<quote_char>, or C<name_sep>, you can place these options into a hashref
+as the final element of the C<connect_info> arrayref.  If in doubt, don't
+specify these options.  You would know it if you needed them.
+
+Examples:
+
+  connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
+
+  connect_info => [
+                    'dbi:SQLite:dbname=foo.db',
+                    {
+                      on_connect_do => [
+                        'PRAGMA synchronous = OFF',
+                      ],
+                    }
+                  ],
+
+  connect_info => [
+                    'dbi:Pg:dbname=mypgdb',
+                    'postgres',
+                    '',
+                    { AutoCommit => 0 },
+                    {
+                      on_connect_do => [
+                        'some SQL statement',
+                        'another SQL statement',
+                      ],
+                    }
+                  ],
+
+=item storage_type
+
+Allows the use of a different C<storage_type> than what is set in your
+C<schema_class> (which in turn defaults to C<::DBI> if not set in current
+L<DBIx::Class>).  Completely optional, and probably unnecessary for most
+people until other storage backends become available for L<DBIx::Class>.
+
+=back
+
+=head1 METHODS
+
+=over 4
+
+=item new
+
+Instantiates the Model based on the above-documented ->config parameters.
+The only required parameter is C<schema_class>.  C<connect_info> is
+required in the case that C<schema_class> does not already have connection
+information defined for it.
+
+=item schema
+
+Accessor which returns the connected schema being used by the this model.
+There are direct shortcuts on the model class itself for
+schema->resultset, schema->source, and schema->class.
+
+=item composed_schema
+
+Accessor which returns the composed schema, which has no connection info,
+which was used in constructing the C<schema> above.  Useful for creating
+new connections based on the same schema/model.  There are direct shortcuts
+from the model object for composed_schema->clone and composed_schema->connect
+
+=item clone
+
+Shortcut for ->composed_schema->clone
+
+=item connect
+
+Shortcut for ->composed_schema->connect
+
+=item source
+
+Shortcut for ->schema->source
+
+=item class
+
+Shortcut for ->schema->class
+
+=item resultset
+
+Shortcut for ->schema->resultset
+
+=item storage
+
+Provides an accessor for the connected schema's storage object.
+Used often for debugging and controlling transactions.
+
+=back
+
+=cut
+
+sub new {
+    my $self = shift->NEXT::new(@_);
+    
+    my $class = ref($self);
+    my $model_name = $class;
+    $model_name =~ s/^[\w:]+::(?:Model|M):://;
+
+    croak "->config->{schema_class} must be defined for this model"
+        unless $self->{schema_class};
+
+    my $schema_class = $self->{schema_class};
+
+    $schema_class->require
+        or croak "Cannot load schema class '$schema_class': $@";
+
+    if( !$self->{connect_info} ) {
+        if($schema_class->storage && $schema_class->storage->connect_info) {
+            $self->{connect_info} = $schema_class->storage->connect_info;
+        }
+        else {
+            croak "Either ->config->{connect_info} must be defined for $class"
+                  . " or $schema_class must have connect info defined on it"
+		  . "Here's what we got:\n"
+		  . Dumper($self);
+        }
+    }
+
+    $self->composed_schema($schema_class->compose_namespace($class));
+    $self->schema($self->composed_schema->clone);
+
+    $self->schema->storage_type($self->{storage_type})
+        if $self->{storage_type};
+
+    $self->schema->connection(@{$self->{connect_info}});
+    
+    no strict 'refs';
+    foreach my $moniker ($self->schema->sources) {
+        my $classname = "${class}::$moniker";
+        *{"${classname}::ACCEPT_CONTEXT"} = sub {
+            shift;
+            shift->model($model_name)->resultset($moniker);
+        }
+    }
+
+    return $self;
+}
+
+sub clone { shift->composed_schema->clone(@_); }
+
+sub connect { shift->composed_schema->connect(@_); }
+
+sub storage { shift->schema->storage(@_); }
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 COPYRIGHT
+
+This program is free software, you can redistribute it and/or modify it
+under the same terms as Perl itself.
+
+=cut
+
+1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/t)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/01use.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/01use.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,5 +0,0 @@
-use strict;
-use Test::More tests => 2;
-
-BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
-BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/01use.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/t/01use.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/01use.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,5 @@
+use strict;
+use Test::More tests => 2;
+
+BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
+BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/02pod.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/02pod.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,8 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod 1.14";
-plan skip_all => 'Test::Pod 1.14 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_files_ok();
-

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/02pod.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/t/02pod.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/02pod.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,8 @@
+use Test::More;
+
+eval "use Test::Pod 1.14";
+plan skip_all => 'Test::Pod 1.14 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_files_ok();
+

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/03podcoverage.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/03podcoverage.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,7 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod::Coverage 1.04";
-plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_coverage_ok();

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/03podcoverage.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/t/03podcoverage.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/03podcoverage.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,7 @@
+use Test::More;
+
+eval "use Test::Pod::Coverage 1.04";
+plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_coverage_ok();

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/04kwalitee.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/04kwalitee.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,5 +0,0 @@
-use Test::More;
-
-eval { require Test::Kwalitee; Test::Kwalitee->import() };
-
-plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/04kwalitee.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/t/04kwalitee.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/04kwalitee.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,5 @@
+use Test::More;
+
+eval { require Test::Kwalitee; Test::Kwalitee->import() };
+
+plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/05testapp.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/05testapp.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,46 +0,0 @@
-use strict;
-use Test::More;
-use FindBin;
-use File::Spec;
-use File::Find;
-
-plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
-    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
-
-# XXX this test needs a re-write to fully test the current set of capabilities...
-
-my $test_params = [
-    [ 'TestSchema', 'DBIC::Schema', '' ],
-    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
-];
-
-plan tests => (2 * @$test_params);
-
-my $test_dir   = $FindBin::Bin;
-my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
-my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
-my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
-my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
-my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
-
-chdir($test_dir);
-system("catalyst.pl TestApp");
-chdir($cat_dir);
-
-foreach my $tparam (@$test_params) {
-   my ($model, $helper, $args) = @$tparam;
-   system("$^X -I$blib_dir $creator model $model $helper $model $args");
-   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
-   ok( -f $model_path, "$model_path is a file" );
-   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
-   ok($compile_rv == 0, "perl -c $model_path");
-}
-
-chdir($test_dir);
-
-sub rm_rf {
-    my $name = $File::Find::name;
-    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
-    else { unlink $name or die "Cannot unlink $name: $!" }
-}
-finddepth(\&rm_rf, $cat_dir);

Copied: tags/Catalyst-Model-DBIC-Schema/0.17_01/t/05testapp.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.17_01/t/05testapp.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.17_01/t/05testapp.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.17_01/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,46 @@
+use strict;
+use Test::More;
+use FindBin;
+use File::Spec;
+use File::Find;
+
+plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
+    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
+
+# XXX this test needs a re-write to fully test the current set of capabilities...
+
+my $test_params = [
+    [ 'TestSchema', 'DBIC::Schema', '' ],
+    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
+];
+
+plan tests => (2 * @$test_params);
+
+my $test_dir   = $FindBin::Bin;
+my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
+my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
+my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
+my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
+my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
+
+chdir($test_dir);
+system("catalyst.pl TestApp");
+chdir($cat_dir);
+
+foreach my $tparam (@$test_params) {
+   my ($model, $helper, $args) = @$tparam;
+   system("$^X -I$blib_dir $creator model $model $helper $model $args");
+   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
+   ok( -f $model_path, "$model_path is a file" );
+   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
+   ok($compile_rv == 0, "perl -c $model_path");
+}
+
+chdir($test_dir);
+
+sub rm_rf {
+    my $name = $File::Find::name;
+    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
+    else { unlink $name or die "Cannot unlink $name: $!" }
+}
+finddepth(\&rm_rf, $cat_dir);

Copied: tags/Catalyst-Model-DBIC-Schema/0.18 (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/Build.PL
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/Build.PL	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/Build.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,25 +0,0 @@
-use strict;
-use Module::Build;
-
-my %arguments = (
-    license            => 'perl',
-    module_name        => 'Catalyst::Model::DBIC::Schema',
-    requires           => {
-        'DBIx::Class'           => 0.07000,
-        'Catalyst'              => 5.64,
-        'UNIVERSAL::require'    => 0.10,
-        'Class::Data::Accessor' => 0.02,
-        'Class::Accessor::Fast' => 0.22,
-    },
-    recommends         => {
-        'Catalyst::Devel'             => 1.0,
-        'DBIx::Class::Schema::Loader' => 0.03006,
-    },
-    build_requires     => {
-        'Test::More'            => 0.32,
-    },
-    create_makefile_pl => 'passthrough',
-    create_readme      => 1,
-);
-
-Module::Build->new(%arguments)->create_build_script;

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/Build.PL (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/Build.PL)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/Build.PL	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/Build.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,25 @@
+use strict;
+use Module::Build;
+
+my %arguments = (
+    license            => 'perl',
+    module_name        => 'Catalyst::Model::DBIC::Schema',
+    requires           => {
+        'DBIx::Class'           => 0.07000,
+        'Catalyst'              => 5.64,
+        'UNIVERSAL::require'    => 0.10,
+        'Class::Data::Accessor' => 0.02,
+        'Class::Accessor::Fast' => 0.22,
+    },
+    recommends         => {
+        'Catalyst::Devel'             => 1.0,
+        'DBIx::Class::Schema::Loader' => 0.03006,
+    },
+    build_requires     => {
+        'Test::More'            => 0.32,
+    },
+    create_makefile_pl => 'passthrough',
+    create_readme      => 1,
+);
+
+Module::Build->new(%arguments)->create_build_script;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/Changes
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/Changes	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,67 +0,0 @@
-Revision history for Perl extension Catalyst::Model::DBIC::Schema
-
-0.18  Tue Aug  8 04:34:42 UTC 2006
-        - Version bump for public release, no functional change
-
-0.17_01 Thu Jul 27 01:06:13 UTC 2006
-        - Updated for DBIC 0.07
-
-0.16  Thu Jul  6 13:28:45 UTC 2006
-        - Bugfix for create=static and connect_info coderef snippets
-	- Be more verbose when connection_info is not set.
-
-0.15  Tue Jun  6 01:33:57 UTC 2006
-        - Fixed a serious bug in create=static usage
-        - Re-arranged output generation so that the more likely
-          failure to generate Schemas via create= will cause the
-          helper to abort before generating the Model class itself
-
-0.14  Mon Jun  5 23:34:35 UTC 2006
-        - Helpers merged, helper syntax changed
-        - Everything updated for Schema::Loader 0.03001 support, including
-          what amounts to using Loader in one-shot mode to generate
-          a manual Schema with matching Model.
-        - fixed stupid typo in docs
-
-0.13  Wed Apr 26 2006
-        - noted support via mailing lists
-
-0.12  Tue Apr 25 2006
-        - SYNOPSIS improved substantially to help newbies get started
-
-0.11  Sun Mar 26 17:22:31 UTC 2006
-        - Removed on_connect_do config setting (it was only out
-          in public for 4 days...).
-        - Support for on_connect_do and sql_maker options as part
-          of connect_info
-
-0.10  Wed Mar 22 07:06:02 UTC 2006
-        - Added on_connect_do config setting
-        - Added convenience method for ->schema->storage from paulm
-
-0.08  Tue Feb 28 00:04:16 UTC 2006
-        - Bumped D::C::Schema::Loader recommendation to 0.02003
-          (should have been done last release)
-        - Removed the ->require stuff added in 0.07, it doesn't
-          do what it is supposed to do.  For now, users can layer
-          at the Schema::Loader level rather than at Model.
-
-0.07  Sun Feb 19 21:50:18 UTC 2006
-        - bugfix for ::SchemaLoader::Foo password argument, and
-          switch to connect_info argument of new Schema::Loader
-        - Added ->require for source classes, so that you can
-          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
-          generated MyApp::Model::Foo::Bar.
-
-0.06  Sat Feb 18 19:05:17 UTC 2006
-        - Fix simple pod-related bug introduced in last rev
-        - Added optional test that uses the helpers
-
-0.05  Fri Feb 17 20:52:21 UTC 2006
-        - Stop showing the template pod in pod tools and cpan,
-          per Gavin's email.
-        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
-          subtle issues under mod_perl engines.
-
-0.04  Mon Feb 13 04:22:49 UTC 2006
-        - First public release

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/Changes (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/Changes)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/Changes	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,67 @@
+Revision history for Perl extension Catalyst::Model::DBIC::Schema
+
+0.18  Tue Aug  8 04:34:42 UTC 2006
+        - Version bump for public release, no functional change
+
+0.17_01 Thu Jul 27 01:06:13 UTC 2006
+        - Updated for DBIC 0.07
+
+0.16  Thu Jul  6 13:28:45 UTC 2006
+        - Bugfix for create=static and connect_info coderef snippets
+	- Be more verbose when connection_info is not set.
+
+0.15  Tue Jun  6 01:33:57 UTC 2006
+        - Fixed a serious bug in create=static usage
+        - Re-arranged output generation so that the more likely
+          failure to generate Schemas via create= will cause the
+          helper to abort before generating the Model class itself
+
+0.14  Mon Jun  5 23:34:35 UTC 2006
+        - Helpers merged, helper syntax changed
+        - Everything updated for Schema::Loader 0.03001 support, including
+          what amounts to using Loader in one-shot mode to generate
+          a manual Schema with matching Model.
+        - fixed stupid typo in docs
+
+0.13  Wed Apr 26 2006
+        - noted support via mailing lists
+
+0.12  Tue Apr 25 2006
+        - SYNOPSIS improved substantially to help newbies get started
+
+0.11  Sun Mar 26 17:22:31 UTC 2006
+        - Removed on_connect_do config setting (it was only out
+          in public for 4 days...).
+        - Support for on_connect_do and sql_maker options as part
+          of connect_info
+
+0.10  Wed Mar 22 07:06:02 UTC 2006
+        - Added on_connect_do config setting
+        - Added convenience method for ->schema->storage from paulm
+
+0.08  Tue Feb 28 00:04:16 UTC 2006
+        - Bumped D::C::Schema::Loader recommendation to 0.02003
+          (should have been done last release)
+        - Removed the ->require stuff added in 0.07, it doesn't
+          do what it is supposed to do.  For now, users can layer
+          at the Schema::Loader level rather than at Model.
+
+0.07  Sun Feb 19 21:50:18 UTC 2006
+        - bugfix for ::SchemaLoader::Foo password argument, and
+          switch to connect_info argument of new Schema::Loader
+        - Added ->require for source classes, so that you can
+          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
+          generated MyApp::Model::Foo::Bar.
+
+0.06  Sat Feb 18 19:05:17 UTC 2006
+        - Fix simple pod-related bug introduced in last rev
+        - Added optional test that uses the helpers
+
+0.05  Fri Feb 17 20:52:21 UTC 2006
+        - Stop showing the template pod in pod tools and cpan,
+          per Gavin's email.
+        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
+          subtle issues under mod_perl engines.
+
+0.04  Mon Feb 13 04:22:49 UTC 2006
+        - First public release

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/MANIFEST.SKIP
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/MANIFEST.SKIP	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,28 +0,0 @@
-# Avoid version control files.
-\bRCS\b
-\bCVS\b
-,v$
-\B\.svn\b
-
-# Avoid Makemaker generated and utility files.
-\bMakefile$
-\bblib
-\bMakeMaker-\d
-\bpm_to_blib$
-\bblibdirs$
-^MANIFEST\.SKIP$
-
-# Avoid Module::Build generated and utility files.
-\bBuild$
-\b_build
-
-# Avoid temp and backup files.
-~$
-\.tmp$
-\.old$
-\.bak$
-\#$
-\b\.#
-
-# avoid dist files
-\.tar\.gz$

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/MANIFEST.SKIP (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/MANIFEST.SKIP)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/MANIFEST.SKIP	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,28 @@
+# Avoid version control files.
+\bRCS\b
+\bCVS\b
+,v$
+\B\.svn\b
+
+# Avoid Makemaker generated and utility files.
+\bMakefile$
+\bblib
+\bMakeMaker-\d
+\bpm_to_blib$
+\bblibdirs$
+^MANIFEST\.SKIP$
+
+# Avoid Module::Build generated and utility files.
+\bBuild$
+\b_build
+
+# Avoid temp and backup files.
+~$
+\.tmp$
+\.old$
+\.bak$
+\#$
+\b\.#
+
+# avoid dist files
+\.tar\.gz$

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/Makefile.PL
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/Makefile.PL	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,31 +0,0 @@
-# Note: this file was auto-generated by Module::Build::Compat version 0.03
-    
-    unless (eval "use Module::Build::Compat 0.02; 1" ) {
-      print "This module requires Module::Build to install itself.\n";
-      
-      require ExtUtils::MakeMaker;
-      my $yn = ExtUtils::MakeMaker::prompt
-	('  Install Module::Build now from CPAN?', 'y');
-      
-      unless ($yn =~ /^y/i) {
-	die " *** Cannot install without Module::Build.  Exiting ...\n";
-      }
-      
-      require Cwd;
-      require File::Spec;
-      require CPAN;
-      
-      # Save this 'cause CPAN will chdir all over the place.
-      my $cwd = Cwd::cwd();
-      
-      CPAN::Shell->install('Module::Build::Compat');
-      CPAN::Shell->expand("Module", "Module::Build::Compat")->uptodate
-	or die "Couldn't install Module::Build, giving up.\n";
-      
-      chdir $cwd or die "Cannot chdir() back to $cwd: $!";
-    }
-    eval "use Module::Build::Compat 0.02; 1" or die $@;
-    
-    Module::Build::Compat->run_build_pl(args => \@ARGV);
-    require Module::Build;
-    Module::Build::Compat->write_makefile(build_class => 'Module::Build');

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/Makefile.PL (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/Makefile.PL)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/Makefile.PL	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,31 @@
+# Note: this file was auto-generated by Module::Build::Compat version 0.03
+    
+    unless (eval "use Module::Build::Compat 0.02; 1" ) {
+      print "This module requires Module::Build to install itself.\n";
+      
+      require ExtUtils::MakeMaker;
+      my $yn = ExtUtils::MakeMaker::prompt
+	('  Install Module::Build now from CPAN?', 'y');
+      
+      unless ($yn =~ /^y/i) {
+	die " *** Cannot install without Module::Build.  Exiting ...\n";
+      }
+      
+      require Cwd;
+      require File::Spec;
+      require CPAN;
+      
+      # Save this 'cause CPAN will chdir all over the place.
+      my $cwd = Cwd::cwd();
+      
+      CPAN::Shell->install('Module::Build::Compat');
+      CPAN::Shell->expand("Module", "Module::Build::Compat")->uptodate
+	or die "Couldn't install Module::Build, giving up.\n";
+      
+      chdir $cwd or die "Cannot chdir() back to $cwd: $!";
+    }
+    eval "use Module::Build::Compat 0.02; 1" or die $@;
+    
+    Module::Build::Compat->run_build_pl(args => \@ARGV);
+    require Module::Build;
+    Module::Build::Compat->write_makefile(build_class => 'Module::Build');

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/lib (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/lib)

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst)

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper)

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,230 +0,0 @@
-package Catalyst::Helper::Model::DBIC::Schema;
-
-use strict;
-use warnings;
-use Carp;
-use UNIVERSAL::require;
-
-=head1 NAME
-
-Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
-
-=head1 SYNOPSIS
-
-  script/create.pl model ModelName DBIC::Schema My::SchemaClass [ create=dynamic | create=static ] [ connect_info arguments ]
-
-=head1 DESCRIPTION
-
-Helper for the DBIC Schema Models.
-
-=head2 Arguments:
-
-    ModelName is the short name for the Model class being generated
-
-    My::SchemaClass is the fully qualified classname of your Schema,
-      which might or might not yet exist.
-
-    create=dynamic instructs this Helper to generate the named Schema
-      class for you, basing it on L<DBIx::Class::Schema::Loader> (which
-      means the table information will always be dynamically loaded at
-      runtime from the database).
-
-    create=static instructs this Helper to generate the named Schema
-      class for you, using L<DBIx::Class::Schema::Loader> in "one shot"
-      mode to create a standard, manually-defined L<DBIx::Class::Schema>
-      setup, based on what the Loader sees in your database at this moment.
-      A Schema/Model pair generated this way will not require
-      L<DBIx::Class::Schema::Loader> at runtime, and will not automatically
-      adapt itself to changes in your database structure.  You can edit
-      the generated classes by hand to refine them.
-
-    connect_info arguments are the same as what DBIx::Class::Schema::connect
-      expects, and are storage_type-specific.  For DBI-based storage, these
-      arguments are the dsn, username, password, and connect options,
-      respectively.  These are optional for existing Schemas, but required
-      if you use either of the C<create=> options.
-
-Use of either of the C<create=> options requires L<DBIx::Class::Schema::Loader>.
-
-=head1 TYPICAL EXAMPLES
-
-  # Use DBIx::Class::Schema::Loader to create a static DBIx::Class::Schema,
-  #  and a Model which references it:
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=static dbi:mysql:foodb myuname mypass
-
-  # Create a dynamic DBIx::Class::Schema::Loader-based Schema,
-  #  and a Model which references it:
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=dynamic dbi:mysql:foodb myuname mypass
-
-  # Reference an existing Schema of any kind, and provide some connection information for ->config:
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass dbi:mysql:foodb myuname mypass
-
-  # Same, but don't supply connect information yet (you'll need to do this
-  #  in your app config, or [not recommended] in the schema itself).
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass
-
-=head2 METHODS
-
-=head3 mk_compclass
-
-=cut
-
-sub mk_compclass {
-    my ( $self, $helper, $schema_class, @connect_info) = @_;
-
-    $helper->{schema_class} = $schema_class
-        or croak "Must supply schema class name";
-
-    my $create = '';
-    if($connect_info[0] && $connect_info[0] =~ /^create=(dynamic|static)$/) {
-        $create = $1;
-        shift @connect_info;
-    }
-
-    if(@connect_info) {
-        $helper->{setup_connect_info} = 1;
-        my @helper_connect_info = @connect_info;
-        for(@helper_connect_info) {
-            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
-        }
-        $helper->{connect_info} = \@helper_connect_info;
-    }
-
-    if($create eq 'dynamic') {
-        my @schema_parts = split(/\:\:/, $helper->{schema_class});
-        my $schema_file_part = pop @schema_parts;
-
-        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib', @schema_parts );
-        my $schema_file = File::Spec->catfile( $schema_dir, $schema_file_part . '.pm' );
-
-        $helper->mk_dir($schema_dir);
-        $helper->render_file( 'schemaclass', $schema_file );
-    }
-    elsif($create eq 'static') {
-        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib' );
-        DBIx::Class::Schema::Loader->use("dump_to_dir:$schema_dir", 'make_schema_at')
-            or croak "Cannot load DBIx::Class::Schema::Loader: $@";
-
-        my @loader_connect_info = @connect_info;
-        my $num = 6; # argument number on the commandline for "dbi:..."
-        for(@loader_connect_info) {
-            if(/^\s*[[{]/) {
-                $_ = eval "$_";
-                croak "Perl syntax error in commandline argument $num: $@" if $@;
-            }
-            $num++;
-        }
-
-        make_schema_at(
-            $schema_class,
-            { relationships => 1 },
-            \@loader_connect_info,
-        );
-    }
-
-    my $file = $helper->{file};
-    $helper->render_file( 'compclass', $file );
-}
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__DATA__
-
-=begin pod_to_ignore
-
-__schemaclass__
-package [% schema_class %];
-
-use strict;
-use base qw/DBIx::Class::Schema::Loader/;
-
-__PACKAGE__->loader_options(
-    relationships => 1,
-    # debug => 1,
-);
-
-=head1 NAME
-
-[% schema_class %] - DBIx::Class::Schema::Loader class
-
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__compclass__
-package [% class %];
-
-use strict;
-use base 'Catalyst::Model::DBIC::Schema';
-
-__PACKAGE__->config(
-    schema_class => '[% schema_class %]',
-    [% IF setup_connect_info %]connect_info => [
-        [% FOREACH arg = connect_info %][% arg %],
-        [% END %]
-    ],[% END %]
-);
-
-=head1 NAME
-
-[% class %] - Catalyst DBIC Schema Model
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-L<Catalyst::Model::DBIC::Schema> Model using schema L<[% schema_class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,230 @@
+package Catalyst::Helper::Model::DBIC::Schema;
+
+use strict;
+use warnings;
+use Carp;
+use UNIVERSAL::require;
+
+=head1 NAME
+
+Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
+
+=head1 SYNOPSIS
+
+  script/create.pl model ModelName DBIC::Schema My::SchemaClass [ create=dynamic | create=static ] [ connect_info arguments ]
+
+=head1 DESCRIPTION
+
+Helper for the DBIC Schema Models.
+
+=head2 Arguments:
+
+    ModelName is the short name for the Model class being generated
+
+    My::SchemaClass is the fully qualified classname of your Schema,
+      which might or might not yet exist.
+
+    create=dynamic instructs this Helper to generate the named Schema
+      class for you, basing it on L<DBIx::Class::Schema::Loader> (which
+      means the table information will always be dynamically loaded at
+      runtime from the database).
+
+    create=static instructs this Helper to generate the named Schema
+      class for you, using L<DBIx::Class::Schema::Loader> in "one shot"
+      mode to create a standard, manually-defined L<DBIx::Class::Schema>
+      setup, based on what the Loader sees in your database at this moment.
+      A Schema/Model pair generated this way will not require
+      L<DBIx::Class::Schema::Loader> at runtime, and will not automatically
+      adapt itself to changes in your database structure.  You can edit
+      the generated classes by hand to refine them.
+
+    connect_info arguments are the same as what DBIx::Class::Schema::connect
+      expects, and are storage_type-specific.  For DBI-based storage, these
+      arguments are the dsn, username, password, and connect options,
+      respectively.  These are optional for existing Schemas, but required
+      if you use either of the C<create=> options.
+
+Use of either of the C<create=> options requires L<DBIx::Class::Schema::Loader>.
+
+=head1 TYPICAL EXAMPLES
+
+  # Use DBIx::Class::Schema::Loader to create a static DBIx::Class::Schema,
+  #  and a Model which references it:
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=static dbi:mysql:foodb myuname mypass
+
+  # Create a dynamic DBIx::Class::Schema::Loader-based Schema,
+  #  and a Model which references it:
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass create=dynamic dbi:mysql:foodb myuname mypass
+
+  # Reference an existing Schema of any kind, and provide some connection information for ->config:
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass dbi:mysql:foodb myuname mypass
+
+  # Same, but don't supply connect information yet (you'll need to do this
+  #  in your app config, or [not recommended] in the schema itself).
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass
+
+=head2 METHODS
+
+=head3 mk_compclass
+
+=cut
+
+sub mk_compclass {
+    my ( $self, $helper, $schema_class, @connect_info) = @_;
+
+    $helper->{schema_class} = $schema_class
+        or croak "Must supply schema class name";
+
+    my $create = '';
+    if($connect_info[0] && $connect_info[0] =~ /^create=(dynamic|static)$/) {
+        $create = $1;
+        shift @connect_info;
+    }
+
+    if(@connect_info) {
+        $helper->{setup_connect_info} = 1;
+        my @helper_connect_info = @connect_info;
+        for(@helper_connect_info) {
+            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
+        }
+        $helper->{connect_info} = \@helper_connect_info;
+    }
+
+    if($create eq 'dynamic') {
+        my @schema_parts = split(/\:\:/, $helper->{schema_class});
+        my $schema_file_part = pop @schema_parts;
+
+        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib', @schema_parts );
+        my $schema_file = File::Spec->catfile( $schema_dir, $schema_file_part . '.pm' );
+
+        $helper->mk_dir($schema_dir);
+        $helper->render_file( 'schemaclass', $schema_file );
+    }
+    elsif($create eq 'static') {
+        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib' );
+        DBIx::Class::Schema::Loader->use("dump_to_dir:$schema_dir", 'make_schema_at')
+            or croak "Cannot load DBIx::Class::Schema::Loader: $@";
+
+        my @loader_connect_info = @connect_info;
+        my $num = 6; # argument number on the commandline for "dbi:..."
+        for(@loader_connect_info) {
+            if(/^\s*[[{]/) {
+                $_ = eval "$_";
+                croak "Perl syntax error in commandline argument $num: $@" if $@;
+            }
+            $num++;
+        }
+
+        make_schema_at(
+            $schema_class,
+            { relationships => 1 },
+            \@loader_connect_info,
+        );
+    }
+
+    my $file = $helper->{file};
+    $helper->render_file( 'compclass', $file );
+}
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__DATA__
+
+=begin pod_to_ignore
+
+__schemaclass__
+package [% schema_class %];
+
+use strict;
+use base qw/DBIx::Class::Schema::Loader/;
+
+__PACKAGE__->loader_options(
+    relationships => 1,
+    # debug => 1,
+);
+
+=head1 NAME
+
+[% schema_class %] - DBIx::Class::Schema::Loader class
+
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__compclass__
+package [% class %];
+
+use strict;
+use base 'Catalyst::Model::DBIC::Schema';
+
+__PACKAGE__->config(
+    schema_class => '[% schema_class %]',
+    [% IF setup_connect_info %]connect_info => [
+        [% FOREACH arg = connect_info %][% arg %],
+        [% END %]
+    ],[% END %]
+);
+
+=head1 NAME
+
+[% class %] - Catalyst DBIC Schema Model
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+L<Catalyst::Model::DBIC::Schema> Model using schema L<[% schema_class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,336 +0,0 @@
-package Catalyst::Model::DBIC::Schema;
-
-use strict;
-use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
-use NEXT;
-use UNIVERSAL::require;
-use Carp;
-use Data::Dumper;
-require DBIx::Class;
-
-our $VERSION = '0.18';
-
-__PACKAGE__->mk_classaccessor('composed_schema');
-__PACKAGE__->mk_accessors('schema');
-
-=head1 NAME
-
-Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
-
-=head1 SYNOPSIS
-
-Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
-
-=over
-
-=item 1.
-
-Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
-
-  package MyApp::Schema::FilmDB;
-  use base qw/DBIx::Class::Schema/;
-
-  __PACKAGE__->load_classes(qw/Actor Role/);
-
-=item 2.
-
-Create some classes for the tables in the database, for example an 
-Actor in MyApp/Schema/FilmDB/Actor.pm:
-
-  package MyApp::Schema::FilmDB::Actor;
-  use base qw/DBIx::Class/
-
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('actor');
-
-  ...
-
-and a Role in MyApp/Schema/Role.pm:
-
-  package MyApp::Schema::FilmDB::Role;
-  use base qw/DBIx::Class/
-
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('role');
-
-  ...    
-
-Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
-usable as a standalone module and you can test/run it without Catalyst. 
-
-=item 3.
-
-To expose it to Catalyst as a model, you should create a DBIC Model in
-MyApp/Model/FilmDB.pm:
-
-  package MyApp::Model::FilmDB;
-  use base qw/Catalyst::Model::DBIC::Schema/;
-
-  __PACKAGE__->config(
-      schema_class => 'MyApp::Schema::FilmDB',
-      connect_info => [
-                        "DBI:...",
-                        "username",
-                        "password",
-                        {AutoCommit => 1}
-                      ]
-  );
-
-See below for a full list of the possible config parameters.
-
-=back
-
-Now you have a working Model, accessing your separate DBIC Schema. Which can
-be used/accessed in the normal Catalyst manner, via $c->model():
-
-  my $actor = $c->model('FilmDB::Actor')->find(1);
-
-You can also use it to set up DBIC authentication with 
-Authentication::Store::DBIC in MyApp.pm:
-
-  package MyApp;
-
-  use Catalyst qw/... Authentication::Store::DBIC/;
-
-  ...
-
-  __PACKAGE__->config->{authentication}{dbic} = {
-      user_class      => 'FilmDB::Actor',
-      user_field      => 'name',
-      password_field  => 'password'
-  }
-
-C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
-parameter passed. To find out more about which methods can be called on a
-ResultSet, or how to add your own methods to it, please see the ResultSet
-documentation in the L<DBIx::Class> distribution.
-
-Some examples are given below:
-
-  # to access schema methods directly:
-  $c->model('FilmDB')->schema->source(...);
-
-  # to access the source object, resultset, and class:
-  $c->model('FilmDB')->source(...);
-  $c->model('FilmDB')->resultset(...);
-  $c->model('FilmDB')->class(...);
-
-  # For resultsets, there's an even quicker shortcut:
-  $c->model('FilmDB::Actor')
-  # is the same as $c->model('FilmDB')->resultset('Actor')
-
-  # To get the composed schema for making new connections:
-  my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
-
-  # Or the same thing via a convenience shortcut:
-  my $newconn = $c->model('FilmDB')->connect(...);
-
-  # or, if your schema works on different storage drivers:
-  my $newconn = $c->model('FilmDB')->composed_schema->clone();
-  $newconn->storage_type('::LDAP');
-  $newconn->connection(...);
-
-  # and again, a convenience shortcut
-  my $newconn = $c->model('FilmDB')->clone();
-  $newconn->storage_type('::LDAP');
-  $newconn->connection(...);
-
-=head1 DESCRIPTION
-
-This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
-the documentation for L<Catalyst::Helper::Model::DBIC::Schema> for
-information on generating these Models via Helper scripts.
-
-=head1 CONFIG PARAMETERS
-
-=over 4
-
-=item schema_class
-
-This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
-to be findable in C<@INC>, but it does not need to be inside the 
-C<Catalyst::Model::> namespace.  This parameter is required.
-
-=item connect_info
-
-This is an arrayref of connection parameters, which are specific to your
-C<storage_type> (see your storage type documentation for more details).
-
-This is not required if C<schema_class> already has connection information
-defined inside itself (which isn't highly recommended, but can be done)
-
-For L<DBIx::Class::Storage::DBI>, which is the only supported
-C<storage_type> in L<DBIx::Class> at the time of this writing, the
-parameters are your dsn, username, password, and connect options hashref.
-
-If you need to specify the L<DBIx::Class::Storage::DBI> specific parameter
-C<on_connect_do>, or the related C<sql_maker> options C<limit_dialect>,
-C<quote_char>, or C<name_sep>, you can place these options into a hashref
-as the final element of the C<connect_info> arrayref.  If in doubt, don't
-specify these options.  You would know it if you needed them.
-
-Examples:
-
-  connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
-
-  connect_info => [
-                    'dbi:SQLite:dbname=foo.db',
-                    {
-                      on_connect_do => [
-                        'PRAGMA synchronous = OFF',
-                      ],
-                    }
-                  ],
-
-  connect_info => [
-                    'dbi:Pg:dbname=mypgdb',
-                    'postgres',
-                    '',
-                    { AutoCommit => 0 },
-                    {
-                      on_connect_do => [
-                        'some SQL statement',
-                        'another SQL statement',
-                      ],
-                    }
-                  ],
-
-=item storage_type
-
-Allows the use of a different C<storage_type> than what is set in your
-C<schema_class> (which in turn defaults to C<::DBI> if not set in current
-L<DBIx::Class>).  Completely optional, and probably unnecessary for most
-people until other storage backends become available for L<DBIx::Class>.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new
-
-Instantiates the Model based on the above-documented ->config parameters.
-The only required parameter is C<schema_class>.  C<connect_info> is
-required in the case that C<schema_class> does not already have connection
-information defined for it.
-
-=item schema
-
-Accessor which returns the connected schema being used by the this model.
-There are direct shortcuts on the model class itself for
-schema->resultset, schema->source, and schema->class.
-
-=item composed_schema
-
-Accessor which returns the composed schema, which has no connection info,
-which was used in constructing the C<schema> above.  Useful for creating
-new connections based on the same schema/model.  There are direct shortcuts
-from the model object for composed_schema->clone and composed_schema->connect
-
-=item clone
-
-Shortcut for ->composed_schema->clone
-
-=item connect
-
-Shortcut for ->composed_schema->connect
-
-=item source
-
-Shortcut for ->schema->source
-
-=item class
-
-Shortcut for ->schema->class
-
-=item resultset
-
-Shortcut for ->schema->resultset
-
-=item storage
-
-Provides an accessor for the connected schema's storage object.
-Used often for debugging and controlling transactions.
-
-=back
-
-=cut
-
-sub new {
-    my $self = shift->NEXT::new(@_);
-    
-    my $class = ref($self);
-    my $model_name = $class;
-    $model_name =~ s/^[\w:]+::(?:Model|M):://;
-
-    croak "->config->{schema_class} must be defined for this model"
-        unless $self->{schema_class};
-
-    my $schema_class = $self->{schema_class};
-
-    $schema_class->require
-        or croak "Cannot load schema class '$schema_class': $@";
-
-    if( !$self->{connect_info} ) {
-        if($schema_class->storage && $schema_class->storage->connect_info) {
-            $self->{connect_info} = $schema_class->storage->connect_info;
-        }
-        else {
-            croak "Either ->config->{connect_info} must be defined for $class"
-                  . " or $schema_class must have connect info defined on it"
-		  . "Here's what we got:\n"
-		  . Dumper($self);
-        }
-    }
-
-    $self->composed_schema($schema_class->compose_namespace($class));
-    $self->schema($self->composed_schema->clone);
-
-    $self->schema->storage_type($self->{storage_type})
-        if $self->{storage_type};
-
-    $self->schema->connection(@{$self->{connect_info}});
-    
-    no strict 'refs';
-    foreach my $moniker ($self->schema->sources) {
-        my $classname = "${class}::$moniker";
-        *{"${classname}::ACCEPT_CONTEXT"} = sub {
-            shift;
-            shift->model($model_name)->resultset($moniker);
-        }
-    }
-
-    return $self;
-}
-
-sub clone { shift->composed_schema->clone(@_); }
-
-sub connect { shift->composed_schema->connect(@_); }
-
-sub storage { shift->schema->storage(@_); }
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 COPYRIGHT
-
-This program is free software, you can redistribute it and/or modify it
-under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,336 @@
+package Catalyst::Model::DBIC::Schema;
+
+use strict;
+use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
+use NEXT;
+use UNIVERSAL::require;
+use Carp;
+use Data::Dumper;
+require DBIx::Class;
+
+our $VERSION = '0.18';
+
+__PACKAGE__->mk_classaccessor('composed_schema');
+__PACKAGE__->mk_accessors('schema');
+
+=head1 NAME
+
+Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
+
+=head1 SYNOPSIS
+
+Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
+
+=over
+
+=item 1.
+
+Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
+
+  package MyApp::Schema::FilmDB;
+  use base qw/DBIx::Class::Schema/;
+
+  __PACKAGE__->load_classes(qw/Actor Role/);
+
+=item 2.
+
+Create some classes for the tables in the database, for example an 
+Actor in MyApp/Schema/FilmDB/Actor.pm:
+
+  package MyApp::Schema::FilmDB::Actor;
+  use base qw/DBIx::Class/
+
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('actor');
+
+  ...
+
+and a Role in MyApp/Schema/Role.pm:
+
+  package MyApp::Schema::FilmDB::Role;
+  use base qw/DBIx::Class/
+
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('role');
+
+  ...    
+
+Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
+usable as a standalone module and you can test/run it without Catalyst. 
+
+=item 3.
+
+To expose it to Catalyst as a model, you should create a DBIC Model in
+MyApp/Model/FilmDB.pm:
+
+  package MyApp::Model::FilmDB;
+  use base qw/Catalyst::Model::DBIC::Schema/;
+
+  __PACKAGE__->config(
+      schema_class => 'MyApp::Schema::FilmDB',
+      connect_info => [
+                        "DBI:...",
+                        "username",
+                        "password",
+                        {AutoCommit => 1}
+                      ]
+  );
+
+See below for a full list of the possible config parameters.
+
+=back
+
+Now you have a working Model, accessing your separate DBIC Schema. Which can
+be used/accessed in the normal Catalyst manner, via $c->model():
+
+  my $actor = $c->model('FilmDB::Actor')->find(1);
+
+You can also use it to set up DBIC authentication with 
+Authentication::Store::DBIC in MyApp.pm:
+
+  package MyApp;
+
+  use Catalyst qw/... Authentication::Store::DBIC/;
+
+  ...
+
+  __PACKAGE__->config->{authentication}{dbic} = {
+      user_class      => 'FilmDB::Actor',
+      user_field      => 'name',
+      password_field  => 'password'
+  }
+
+C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
+parameter passed. To find out more about which methods can be called on a
+ResultSet, or how to add your own methods to it, please see the ResultSet
+documentation in the L<DBIx::Class> distribution.
+
+Some examples are given below:
+
+  # to access schema methods directly:
+  $c->model('FilmDB')->schema->source(...);
+
+  # to access the source object, resultset, and class:
+  $c->model('FilmDB')->source(...);
+  $c->model('FilmDB')->resultset(...);
+  $c->model('FilmDB')->class(...);
+
+  # For resultsets, there's an even quicker shortcut:
+  $c->model('FilmDB::Actor')
+  # is the same as $c->model('FilmDB')->resultset('Actor')
+
+  # To get the composed schema for making new connections:
+  my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
+
+  # Or the same thing via a convenience shortcut:
+  my $newconn = $c->model('FilmDB')->connect(...);
+
+  # or, if your schema works on different storage drivers:
+  my $newconn = $c->model('FilmDB')->composed_schema->clone();
+  $newconn->storage_type('::LDAP');
+  $newconn->connection(...);
+
+  # and again, a convenience shortcut
+  my $newconn = $c->model('FilmDB')->clone();
+  $newconn->storage_type('::LDAP');
+  $newconn->connection(...);
+
+=head1 DESCRIPTION
+
+This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
+the documentation for L<Catalyst::Helper::Model::DBIC::Schema> for
+information on generating these Models via Helper scripts.
+
+=head1 CONFIG PARAMETERS
+
+=over 4
+
+=item schema_class
+
+This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
+to be findable in C<@INC>, but it does not need to be inside the 
+C<Catalyst::Model::> namespace.  This parameter is required.
+
+=item connect_info
+
+This is an arrayref of connection parameters, which are specific to your
+C<storage_type> (see your storage type documentation for more details).
+
+This is not required if C<schema_class> already has connection information
+defined inside itself (which isn't highly recommended, but can be done)
+
+For L<DBIx::Class::Storage::DBI>, which is the only supported
+C<storage_type> in L<DBIx::Class> at the time of this writing, the
+parameters are your dsn, username, password, and connect options hashref.
+
+If you need to specify the L<DBIx::Class::Storage::DBI> specific parameter
+C<on_connect_do>, or the related C<sql_maker> options C<limit_dialect>,
+C<quote_char>, or C<name_sep>, you can place these options into a hashref
+as the final element of the C<connect_info> arrayref.  If in doubt, don't
+specify these options.  You would know it if you needed them.
+
+Examples:
+
+  connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
+
+  connect_info => [
+                    'dbi:SQLite:dbname=foo.db',
+                    {
+                      on_connect_do => [
+                        'PRAGMA synchronous = OFF',
+                      ],
+                    }
+                  ],
+
+  connect_info => [
+                    'dbi:Pg:dbname=mypgdb',
+                    'postgres',
+                    '',
+                    { AutoCommit => 0 },
+                    {
+                      on_connect_do => [
+                        'some SQL statement',
+                        'another SQL statement',
+                      ],
+                    }
+                  ],
+
+=item storage_type
+
+Allows the use of a different C<storage_type> than what is set in your
+C<schema_class> (which in turn defaults to C<::DBI> if not set in current
+L<DBIx::Class>).  Completely optional, and probably unnecessary for most
+people until other storage backends become available for L<DBIx::Class>.
+
+=back
+
+=head1 METHODS
+
+=over 4
+
+=item new
+
+Instantiates the Model based on the above-documented ->config parameters.
+The only required parameter is C<schema_class>.  C<connect_info> is
+required in the case that C<schema_class> does not already have connection
+information defined for it.
+
+=item schema
+
+Accessor which returns the connected schema being used by the this model.
+There are direct shortcuts on the model class itself for
+schema->resultset, schema->source, and schema->class.
+
+=item composed_schema
+
+Accessor which returns the composed schema, which has no connection info,
+which was used in constructing the C<schema> above.  Useful for creating
+new connections based on the same schema/model.  There are direct shortcuts
+from the model object for composed_schema->clone and composed_schema->connect
+
+=item clone
+
+Shortcut for ->composed_schema->clone
+
+=item connect
+
+Shortcut for ->composed_schema->connect
+
+=item source
+
+Shortcut for ->schema->source
+
+=item class
+
+Shortcut for ->schema->class
+
+=item resultset
+
+Shortcut for ->schema->resultset
+
+=item storage
+
+Provides an accessor for the connected schema's storage object.
+Used often for debugging and controlling transactions.
+
+=back
+
+=cut
+
+sub new {
+    my $self = shift->NEXT::new(@_);
+    
+    my $class = ref($self);
+    my $model_name = $class;
+    $model_name =~ s/^[\w:]+::(?:Model|M):://;
+
+    croak "->config->{schema_class} must be defined for this model"
+        unless $self->{schema_class};
+
+    my $schema_class = $self->{schema_class};
+
+    $schema_class->require
+        or croak "Cannot load schema class '$schema_class': $@";
+
+    if( !$self->{connect_info} ) {
+        if($schema_class->storage && $schema_class->storage->connect_info) {
+            $self->{connect_info} = $schema_class->storage->connect_info;
+        }
+        else {
+            croak "Either ->config->{connect_info} must be defined for $class"
+                  . " or $schema_class must have connect info defined on it"
+		  . "Here's what we got:\n"
+		  . Dumper($self);
+        }
+    }
+
+    $self->composed_schema($schema_class->compose_namespace($class));
+    $self->schema($self->composed_schema->clone);
+
+    $self->schema->storage_type($self->{storage_type})
+        if $self->{storage_type};
+
+    $self->schema->connection(@{$self->{connect_info}});
+    
+    no strict 'refs';
+    foreach my $moniker ($self->schema->sources) {
+        my $classname = "${class}::$moniker";
+        *{"${classname}::ACCEPT_CONTEXT"} = sub {
+            shift;
+            shift->model($model_name)->resultset($moniker);
+        }
+    }
+
+    return $self;
+}
+
+sub clone { shift->composed_schema->clone(@_); }
+
+sub connect { shift->composed_schema->connect(@_); }
+
+sub storage { shift->schema->storage(@_); }
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 COPYRIGHT
+
+This program is free software, you can redistribute it and/or modify it
+under the same terms as Perl itself.
+
+=cut
+
+1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/t)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/t/01use.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/01use.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,5 +0,0 @@
-use strict;
-use Test::More tests => 2;
-
-BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
-BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/t/01use.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/t/01use.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/01use.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,5 @@
+use strict;
+use Test::More tests => 2;
+
+BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
+BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/t/02pod.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/02pod.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,8 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod 1.14";
-plan skip_all => 'Test::Pod 1.14 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_files_ok();
-

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/t/02pod.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/t/02pod.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/02pod.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,8 @@
+use Test::More;
+
+eval "use Test::Pod 1.14";
+plan skip_all => 'Test::Pod 1.14 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_files_ok();
+

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/t/03podcoverage.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/03podcoverage.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,7 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod::Coverage 1.04";
-plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_coverage_ok();

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/t/03podcoverage.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/t/03podcoverage.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/03podcoverage.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,7 @@
+use Test::More;
+
+eval "use Test::Pod::Coverage 1.04";
+plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_coverage_ok();

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/t/04kwalitee.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/04kwalitee.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,5 +0,0 @@
-use Test::More;
-
-eval { require Test::Kwalitee; Test::Kwalitee->import() };
-
-plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/t/04kwalitee.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/t/04kwalitee.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/04kwalitee.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,5 @@
+use Test::More;
+
+eval { require Test::Kwalitee; Test::Kwalitee->import() };
+
+plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.18/t/05testapp.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/05testapp.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,46 +0,0 @@
-use strict;
-use Test::More;
-use FindBin;
-use File::Spec;
-use File::Find;
-
-plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
-    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
-
-# XXX this test needs a re-write to fully test the current set of capabilities...
-
-my $test_params = [
-    [ 'TestSchema', 'DBIC::Schema', '' ],
-    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
-];
-
-plan tests => (2 * @$test_params);
-
-my $test_dir   = $FindBin::Bin;
-my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
-my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
-my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
-my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
-my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
-
-chdir($test_dir);
-system("catalyst.pl TestApp");
-chdir($cat_dir);
-
-foreach my $tparam (@$test_params) {
-   my ($model, $helper, $args) = @$tparam;
-   system("$^X -I$blib_dir $creator model $model $helper $model $args");
-   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
-   ok( -f $model_path, "$model_path is a file" );
-   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
-   ok($compile_rv == 0, "perl -c $model_path");
-}
-
-chdir($test_dir);
-
-sub rm_rf {
-    my $name = $File::Find::name;
-    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
-    else { unlink $name or die "Cannot unlink $name: $!" }
-}
-finddepth(\&rm_rf, $cat_dir);

Copied: tags/Catalyst-Model-DBIC-Schema/0.18/t/05testapp.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.18/t/05testapp.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.18/t/05testapp.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.18/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,46 @@
+use strict;
+use Test::More;
+use FindBin;
+use File::Spec;
+use File::Find;
+
+plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
+    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
+
+# XXX this test needs a re-write to fully test the current set of capabilities...
+
+my $test_params = [
+    [ 'TestSchema', 'DBIC::Schema', '' ],
+    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass '{ AutoCommit => 1 }'} ],
+];
+
+plan tests => (2 * @$test_params);
+
+my $test_dir   = $FindBin::Bin;
+my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
+my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
+my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
+my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
+my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
+
+chdir($test_dir);
+system("catalyst.pl TestApp");
+chdir($cat_dir);
+
+foreach my $tparam (@$test_params) {
+   my ($model, $helper, $args) = @$tparam;
+   system("$^X -I$blib_dir $creator model $model $helper $model $args");
+   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
+   ok( -f $model_path, "$model_path is a file" );
+   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
+   ok($compile_rv == 0, "perl -c $model_path");
+}
+
+chdir($test_dir);
+
+sub rm_rf {
+    my $name = $File::Find::name;
+    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
+    else { unlink $name or die "Cannot unlink $name: $!" }
+}
+finddepth(\&rm_rf, $cat_dir);

Copied: tags/Catalyst-Model-DBIC-Schema/0.20 (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/Changes
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/Changes	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,74 +0,0 @@
-Revision history for Perl extension Catalyst::Model::DBIC::Schema
-
-0.20  Wed May 23, 2007
-        - Fix for rt.cpan.org #22426
-        - Switch to Module::Install
-        - Assorted small pod and cleanliness fixes
-        - Some requirements bumped to the latest maint
-          releases of the same major feature release
-
-0.18  Tue Aug  8 04:34:42 UTC 2006
-        - Version bump for public release, no functional change
-
-0.17_01 Thu Jul 27 01:06:13 UTC 2006
-        - Updated for DBIC 0.07
-
-0.16  Thu Jul  6 13:28:45 UTC 2006
-        - Bugfix for create=static and connect_info coderef snippets
-	- Be more verbose when connection_info is not set.
-
-0.15  Tue Jun  6 01:33:57 UTC 2006
-        - Fixed a serious bug in create=static usage
-        - Re-arranged output generation so that the more likely
-          failure to generate Schemas via create= will cause the
-          helper to abort before generating the Model class itself
-
-0.14  Mon Jun  5 23:34:35 UTC 2006
-        - Helpers merged, helper syntax changed
-        - Everything updated for Schema::Loader 0.03001 support, including
-          what amounts to using Loader in one-shot mode to generate
-          a manual Schema with matching Model.
-        - fixed stupid typo in docs
-
-0.13  Wed Apr 26 2006
-        - noted support via mailing lists
-
-0.12  Tue Apr 25 2006
-        - SYNOPSIS improved substantially to help newbies get started
-
-0.11  Sun Mar 26 17:22:31 UTC 2006
-        - Removed on_connect_do config setting (it was only out
-          in public for 4 days...).
-        - Support for on_connect_do and sql_maker options as part
-          of connect_info
-
-0.10  Wed Mar 22 07:06:02 UTC 2006
-        - Added on_connect_do config setting
-        - Added convenience method for ->schema->storage from paulm
-
-0.08  Tue Feb 28 00:04:16 UTC 2006
-        - Bumped D::C::Schema::Loader recommendation to 0.02003
-          (should have been done last release)
-        - Removed the ->require stuff added in 0.07, it doesn't
-          do what it is supposed to do.  For now, users can layer
-          at the Schema::Loader level rather than at Model.
-
-0.07  Sun Feb 19 21:50:18 UTC 2006
-        - bugfix for ::SchemaLoader::Foo password argument, and
-          switch to connect_info argument of new Schema::Loader
-        - Added ->require for source classes, so that you can
-          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
-          generated MyApp::Model::Foo::Bar.
-
-0.06  Sat Feb 18 19:05:17 UTC 2006
-        - Fix simple pod-related bug introduced in last rev
-        - Added optional test that uses the helpers
-
-0.05  Fri Feb 17 20:52:21 UTC 2006
-        - Stop showing the template pod in pod tools and cpan,
-          per Gavin's email.
-        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
-          subtle issues under mod_perl engines.
-
-0.04  Mon Feb 13 04:22:49 UTC 2006
-        - First public release

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/Changes (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/Changes)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/Changes	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/Changes	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,74 @@
+Revision history for Perl extension Catalyst::Model::DBIC::Schema
+
+0.20  Wed May 23, 2007
+        - Fix for rt.cpan.org #22426
+        - Switch to Module::Install
+        - Assorted small pod and cleanliness fixes
+        - Some requirements bumped to the latest maint
+          releases of the same major feature release
+
+0.18  Tue Aug  8 04:34:42 UTC 2006
+        - Version bump for public release, no functional change
+
+0.17_01 Thu Jul 27 01:06:13 UTC 2006
+        - Updated for DBIC 0.07
+
+0.16  Thu Jul  6 13:28:45 UTC 2006
+        - Bugfix for create=static and connect_info coderef snippets
+	- Be more verbose when connection_info is not set.
+
+0.15  Tue Jun  6 01:33:57 UTC 2006
+        - Fixed a serious bug in create=static usage
+        - Re-arranged output generation so that the more likely
+          failure to generate Schemas via create= will cause the
+          helper to abort before generating the Model class itself
+
+0.14  Mon Jun  5 23:34:35 UTC 2006
+        - Helpers merged, helper syntax changed
+        - Everything updated for Schema::Loader 0.03001 support, including
+          what amounts to using Loader in one-shot mode to generate
+          a manual Schema with matching Model.
+        - fixed stupid typo in docs
+
+0.13  Wed Apr 26 2006
+        - noted support via mailing lists
+
+0.12  Tue Apr 25 2006
+        - SYNOPSIS improved substantially to help newbies get started
+
+0.11  Sun Mar 26 17:22:31 UTC 2006
+        - Removed on_connect_do config setting (it was only out
+          in public for 4 days...).
+        - Support for on_connect_do and sql_maker options as part
+          of connect_info
+
+0.10  Wed Mar 22 07:06:02 UTC 2006
+        - Added on_connect_do config setting
+        - Added convenience method for ->schema->storage from paulm
+
+0.08  Tue Feb 28 00:04:16 UTC 2006
+        - Bumped D::C::Schema::Loader recommendation to 0.02003
+          (should have been done last release)
+        - Removed the ->require stuff added in 0.07, it doesn't
+          do what it is supposed to do.  For now, users can layer
+          at the Schema::Loader level rather than at Model.
+
+0.07  Sun Feb 19 21:50:18 UTC 2006
+        - bugfix for ::SchemaLoader::Foo password argument, and
+          switch to connect_info argument of new Schema::Loader
+        - Added ->require for source classes, so that you can
+          layer in lib/MyApp/Model/Foo/Bar.pm on top of the
+          generated MyApp::Model::Foo::Bar.
+
+0.06  Sat Feb 18 19:05:17 UTC 2006
+        - Fix simple pod-related bug introduced in last rev
+        - Added optional test that uses the helpers
+
+0.05  Fri Feb 17 20:52:21 UTC 2006
+        - Stop showing the template pod in pod tools and cpan,
+          per Gavin's email.
+        - Bump DBIx::Class pre-req to 0.05006, to prevent likely but
+          subtle issues under mod_perl engines.
+
+0.04  Mon Feb 13 04:22:49 UTC 2006
+        - First public release

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/MANIFEST.SKIP
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/MANIFEST.SKIP	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,28 +0,0 @@
-# Avoid version control files.
-\bRCS\b
-\bCVS\b
-,v$
-\B\.svn\b
-
-# Avoid Makemaker generated and utility files.
-\bMakefile$
-\bblib
-\bMakeMaker-\d
-\bpm_to_blib$
-\bblibdirs$
-^MANIFEST\.SKIP$
-
-# Avoid Module::Build generated and utility files.
-\bBuild$
-\b_build
-
-# Avoid temp and backup files.
-~$
-\.tmp$
-\.old$
-\.bak$
-\#$
-\b\.#
-
-# avoid dist files
-\.tar\.gz$

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/MANIFEST.SKIP (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/MANIFEST.SKIP)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/MANIFEST.SKIP	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/MANIFEST.SKIP	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,28 @@
+# Avoid version control files.
+\bRCS\b
+\bCVS\b
+,v$
+\B\.svn\b
+
+# Avoid Makemaker generated and utility files.
+\bMakefile$
+\bblib
+\bMakeMaker-\d
+\bpm_to_blib$
+\bblibdirs$
+^MANIFEST\.SKIP$
+
+# Avoid Module::Build generated and utility files.
+\bBuild$
+\b_build
+
+# Avoid temp and backup files.
+~$
+\.tmp$
+\.old$
+\.bak$
+\#$
+\b\.#
+
+# avoid dist files
+\.tar\.gz$

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/Makefile.PL
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/Makefile.PL	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,24 +0,0 @@
-use inc::Module::Install 0.65;
-
-name 'Catalyst-Model-DBIC-Schema';
-all_from 'lib/Catalyst/Model/DBIC/Schema.pm';
-
-requires 'DBIx::Class'           => '0.07006';
-requires 'Catalyst::Runtime'     => '5.70';
-requires 'UNIVERSAL::require'    => '0.10';
-requires 'Class::Data::Accessor' => '0.02';
-requires 'Class::Accessor::Fast' => '0.22';
-test_requires 'Test::More';
-
-feature 'Catalyst::Helper support',
-    -default                      => 0,
-    'Catalyst::Devel'             => '1.0',
-    'DBIx::Class::Schema::Loader' => '0.03012';
-
-if(-e 'MANIFEST.SKIP') {
-    system("pod2text lib/Catalyst/Model/DBIC/Schema.pm > README");
-}
-
-auto_provides;
-auto_install;
-WriteAll;

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/Makefile.PL (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/Makefile.PL)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/Makefile.PL	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/Makefile.PL	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,24 @@
+use inc::Module::Install 0.65;
+
+name 'Catalyst-Model-DBIC-Schema';
+all_from 'lib/Catalyst/Model/DBIC/Schema.pm';
+
+requires 'DBIx::Class'           => '0.07006';
+requires 'Catalyst::Runtime'     => '5.70';
+requires 'UNIVERSAL::require'    => '0.10';
+requires 'Class::Data::Accessor' => '0.02';
+requires 'Class::Accessor::Fast' => '0.22';
+test_requires 'Test::More';
+
+feature 'Catalyst::Helper support',
+    -default                      => 0,
+    'Catalyst::Devel'             => '1.0',
+    'DBIx::Class::Schema::Loader' => '0.03012';
+
+if(-e 'MANIFEST.SKIP') {
+    system("pod2text lib/Catalyst/Model/DBIC/Schema.pm > README");
+}
+
+auto_provides;
+auto_install;
+WriteAll;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/README
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/README	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/README	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,228 +0,0 @@
-NAME
-    Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
-
-SYNOPSIS
-    Manual creation of a DBIx::Class::Schema and a
-    Catalyst::Model::DBIC::Schema:
-
-    1.  Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
-
-          package MyApp::Schema::FilmDB;
-          use base qw/DBIx::Class::Schema/;
-
-          __PACKAGE__->load_classes(qw/Actor Role/);
-
-    2.  Create some classes for the tables in the database, for example an
-        Actor in MyApp/Schema/FilmDB/Actor.pm:
-
-          package MyApp::Schema::FilmDB::Actor;
-          use base qw/DBIx::Class/
-
-          __PACKAGE__->load_components(qw/Core/);
-          __PACKAGE__->table('actor');
-
-          ...
-
-        and a Role in MyApp/Schema/Role.pm:
-
-          package MyApp::Schema::FilmDB::Role;
-          use base qw/DBIx::Class/
-
-          __PACKAGE__->load_components(qw/Core/);
-          __PACKAGE__->table('role');
-
-          ...    
-
-        Notice that the schema is in MyApp::Schema, not in MyApp::Model.
-        This way it's usable as a standalone module and you can test/run it
-        without Catalyst.
-
-    3.  To expose it to Catalyst as a model, you should create a DBIC Model
-        in MyApp/Model/FilmDB.pm:
-
-          package MyApp::Model::FilmDB;
-          use base qw/Catalyst::Model::DBIC::Schema/;
-
-          __PACKAGE__->config(
-              schema_class => 'MyApp::Schema::FilmDB',
-              connect_info => [
-                                "DBI:...",
-                                "username",
-                                "password",
-                                {AutoCommit => 1}
-                              ]
-          );
-
-        See below for a full list of the possible config parameters.
-
-    Now you have a working Model, accessing your separate DBIC Schema. Which
-    can be used/accessed in the normal Catalyst manner, via $c->model():
-
-      my $actor = $c->model('FilmDB::Actor')->find(1);
-
-    You can also use it to set up DBIC authentication with
-    Authentication::Store::DBIC in MyApp.pm:
-
-      package MyApp;
-
-      use Catalyst qw/... Authentication::Store::DBIC/;
-
-      ...
-
-      __PACKAGE__->config->{authentication}{dbic} = {
-          user_class      => 'FilmDB::Actor',
-          user_field      => 'name',
-          password_field  => 'password'
-      }
-
-    "$c->model()" returns a DBIx::Class::ResultSet for the source name
-    parameter passed. To find out more about which methods can be called on
-    a ResultSet, or how to add your own methods to it, please see the
-    ResultSet documentation in the DBIx::Class distribution.
-
-    Some examples are given below:
-
-      # to access schema methods directly:
-      $c->model('FilmDB')->schema->source(...);
-
-      # to access the source object, resultset, and class:
-      $c->model('FilmDB')->source(...);
-      $c->model('FilmDB')->resultset(...);
-      $c->model('FilmDB')->class(...);
-
-      # For resultsets, there's an even quicker shortcut:
-      $c->model('FilmDB::Actor')
-      # is the same as $c->model('FilmDB')->resultset('Actor')
-
-      # To get the composed schema for making new connections:
-      my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
-
-      # Or the same thing via a convenience shortcut:
-      my $newconn = $c->model('FilmDB')->connect(...);
-
-      # or, if your schema works on different storage drivers:
-      my $newconn = $c->model('FilmDB')->composed_schema->clone();
-      $newconn->storage_type('::LDAP');
-      $newconn->connection(...);
-
-      # and again, a convenience shortcut
-      my $newconn = $c->model('FilmDB')->clone();
-      $newconn->storage_type('::LDAP');
-      $newconn->connection(...);
-
-DESCRIPTION
-    This is a Catalyst Model for DBIx::Class::Schema-based Models. See the
-    documentation for Catalyst::Helper::Model::DBIC::Schema for information
-    on generating these Models via Helper scripts.
-
-CONFIG PARAMETERS
-    schema_class
-        This is the classname of your DBIx::Class::Schema Schema. It needs
-        to be findable in @INC, but it does not need to be inside the
-        "Catalyst::Model::" namespace. This parameter is required.
-
-    connect_info
-        This is an arrayref of connection parameters, which are specific to
-        your "storage_type" (see your storage type documentation for more
-        details).
-
-        This is not required if "schema_class" already has connection
-        information defined inside itself (which isn't highly recommended,
-        but can be done)
-
-        For DBIx::Class::Storage::DBI, which is the only supported
-        "storage_type" in DBIx::Class at the time of this writing, the
-        parameters are your dsn, username, password, and connect options
-        hashref.
-
-        See "connect_info" in DBIx::Class::Storage::DBI for a detailed
-        explanation of the arguments supported.
-
-        Examples:
-
-          connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
-
-          connect_info => [
-                            'dbi:SQLite:dbname=foo.db',
-                            {
-                              on_connect_do => [
-                                'PRAGMA synchronous = OFF',
-                              ],
-                            }
-                          ],
-
-          connect_info => [
-                            'dbi:Pg:dbname=mypgdb',
-                            'postgres',
-                            '',
-                            { AutoCommit => 0 },
-                            {
-                              on_connect_do => [
-                                'some SQL statement',
-                                'another SQL statement',
-                              ],
-                            }
-                          ],
-
-    storage_type
-        Allows the use of a different "storage_type" than what is set in
-        your "schema_class" (which in turn defaults to "::DBI" if not set in
-        current DBIx::Class). Completely optional, and probably unnecessary
-        for most people until other storage backends become available for
-        DBIx::Class.
-
-METHODS
-    new Instantiates the Model based on the above-documented ->config
-        parameters. The only required parameter is "schema_class".
-        "connect_info" is required in the case that "schema_class" does not
-        already have connection information defined for it.
-
-    schema
-        Accessor which returns the connected schema being used by the this
-        model. There are direct shortcuts on the model class itself for
-        schema->resultset, schema->source, and schema->class.
-
-    composed_schema
-        Accessor which returns the composed schema, which has no connection
-        info, which was used in constructing the "schema" above. Useful for
-        creating new connections based on the same schema/model. There are
-        direct shortcuts from the model object for composed_schema->clone
-        and composed_schema->connect
-
-    clone
-        Shortcut for ->composed_schema->clone
-
-    connect
-        Shortcut for ->composed_schema->connect
-
-    source
-        Shortcut for ->schema->source
-
-    class
-        Shortcut for ->schema->class
-
-    resultset
-        Shortcut for ->schema->resultset
-
-    storage
-        Provides an accessor for the connected schema's storage object. Used
-        often for debugging and controlling transactions.
-
-SEE ALSO
-    General Catalyst Stuff:
-
-    Catalyst::Manual, Catalyst::Test, Catalyst::Request, Catalyst::Response,
-    Catalyst::Helper, Catalyst,
-
-    Stuff related to DBIC and this Model style:
-
-    DBIx::Class, DBIx::Class::Schema, DBIx::Class::Schema::Loader,
-    Catalyst::Helper::Model::DBIC::Schema
-
-AUTHOR
-    Brandon L Black, "blblack at gmail.com"
-
-COPYRIGHT
-    This program is free software, you can redistribute it and/or modify it
-    under the same terms as Perl itself.
-

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/README (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/README)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/README	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/README	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,228 @@
+NAME
+    Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
+
+SYNOPSIS
+    Manual creation of a DBIx::Class::Schema and a
+    Catalyst::Model::DBIC::Schema:
+
+    1.  Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
+
+          package MyApp::Schema::FilmDB;
+          use base qw/DBIx::Class::Schema/;
+
+          __PACKAGE__->load_classes(qw/Actor Role/);
+
+    2.  Create some classes for the tables in the database, for example an
+        Actor in MyApp/Schema/FilmDB/Actor.pm:
+
+          package MyApp::Schema::FilmDB::Actor;
+          use base qw/DBIx::Class/
+
+          __PACKAGE__->load_components(qw/Core/);
+          __PACKAGE__->table('actor');
+
+          ...
+
+        and a Role in MyApp/Schema/Role.pm:
+
+          package MyApp::Schema::FilmDB::Role;
+          use base qw/DBIx::Class/
+
+          __PACKAGE__->load_components(qw/Core/);
+          __PACKAGE__->table('role');
+
+          ...    
+
+        Notice that the schema is in MyApp::Schema, not in MyApp::Model.
+        This way it's usable as a standalone module and you can test/run it
+        without Catalyst.
+
+    3.  To expose it to Catalyst as a model, you should create a DBIC Model
+        in MyApp/Model/FilmDB.pm:
+
+          package MyApp::Model::FilmDB;
+          use base qw/Catalyst::Model::DBIC::Schema/;
+
+          __PACKAGE__->config(
+              schema_class => 'MyApp::Schema::FilmDB',
+              connect_info => [
+                                "DBI:...",
+                                "username",
+                                "password",
+                                {AutoCommit => 1}
+                              ]
+          );
+
+        See below for a full list of the possible config parameters.
+
+    Now you have a working Model, accessing your separate DBIC Schema. Which
+    can be used/accessed in the normal Catalyst manner, via $c->model():
+
+      my $actor = $c->model('FilmDB::Actor')->find(1);
+
+    You can also use it to set up DBIC authentication with
+    Authentication::Store::DBIC in MyApp.pm:
+
+      package MyApp;
+
+      use Catalyst qw/... Authentication::Store::DBIC/;
+
+      ...
+
+      __PACKAGE__->config->{authentication}{dbic} = {
+          user_class      => 'FilmDB::Actor',
+          user_field      => 'name',
+          password_field  => 'password'
+      }
+
+    "$c->model()" returns a DBIx::Class::ResultSet for the source name
+    parameter passed. To find out more about which methods can be called on
+    a ResultSet, or how to add your own methods to it, please see the
+    ResultSet documentation in the DBIx::Class distribution.
+
+    Some examples are given below:
+
+      # to access schema methods directly:
+      $c->model('FilmDB')->schema->source(...);
+
+      # to access the source object, resultset, and class:
+      $c->model('FilmDB')->source(...);
+      $c->model('FilmDB')->resultset(...);
+      $c->model('FilmDB')->class(...);
+
+      # For resultsets, there's an even quicker shortcut:
+      $c->model('FilmDB::Actor')
+      # is the same as $c->model('FilmDB')->resultset('Actor')
+
+      # To get the composed schema for making new connections:
+      my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
+
+      # Or the same thing via a convenience shortcut:
+      my $newconn = $c->model('FilmDB')->connect(...);
+
+      # or, if your schema works on different storage drivers:
+      my $newconn = $c->model('FilmDB')->composed_schema->clone();
+      $newconn->storage_type('::LDAP');
+      $newconn->connection(...);
+
+      # and again, a convenience shortcut
+      my $newconn = $c->model('FilmDB')->clone();
+      $newconn->storage_type('::LDAP');
+      $newconn->connection(...);
+
+DESCRIPTION
+    This is a Catalyst Model for DBIx::Class::Schema-based Models. See the
+    documentation for Catalyst::Helper::Model::DBIC::Schema for information
+    on generating these Models via Helper scripts.
+
+CONFIG PARAMETERS
+    schema_class
+        This is the classname of your DBIx::Class::Schema Schema. It needs
+        to be findable in @INC, but it does not need to be inside the
+        "Catalyst::Model::" namespace. This parameter is required.
+
+    connect_info
+        This is an arrayref of connection parameters, which are specific to
+        your "storage_type" (see your storage type documentation for more
+        details).
+
+        This is not required if "schema_class" already has connection
+        information defined inside itself (which isn't highly recommended,
+        but can be done)
+
+        For DBIx::Class::Storage::DBI, which is the only supported
+        "storage_type" in DBIx::Class at the time of this writing, the
+        parameters are your dsn, username, password, and connect options
+        hashref.
+
+        See "connect_info" in DBIx::Class::Storage::DBI for a detailed
+        explanation of the arguments supported.
+
+        Examples:
+
+          connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
+
+          connect_info => [
+                            'dbi:SQLite:dbname=foo.db',
+                            {
+                              on_connect_do => [
+                                'PRAGMA synchronous = OFF',
+                              ],
+                            }
+                          ],
+
+          connect_info => [
+                            'dbi:Pg:dbname=mypgdb',
+                            'postgres',
+                            '',
+                            { AutoCommit => 0 },
+                            {
+                              on_connect_do => [
+                                'some SQL statement',
+                                'another SQL statement',
+                              ],
+                            }
+                          ],
+
+    storage_type
+        Allows the use of a different "storage_type" than what is set in
+        your "schema_class" (which in turn defaults to "::DBI" if not set in
+        current DBIx::Class). Completely optional, and probably unnecessary
+        for most people until other storage backends become available for
+        DBIx::Class.
+
+METHODS
+    new Instantiates the Model based on the above-documented ->config
+        parameters. The only required parameter is "schema_class".
+        "connect_info" is required in the case that "schema_class" does not
+        already have connection information defined for it.
+
+    schema
+        Accessor which returns the connected schema being used by the this
+        model. There are direct shortcuts on the model class itself for
+        schema->resultset, schema->source, and schema->class.
+
+    composed_schema
+        Accessor which returns the composed schema, which has no connection
+        info, which was used in constructing the "schema" above. Useful for
+        creating new connections based on the same schema/model. There are
+        direct shortcuts from the model object for composed_schema->clone
+        and composed_schema->connect
+
+    clone
+        Shortcut for ->composed_schema->clone
+
+    connect
+        Shortcut for ->composed_schema->connect
+
+    source
+        Shortcut for ->schema->source
+
+    class
+        Shortcut for ->schema->class
+
+    resultset
+        Shortcut for ->schema->resultset
+
+    storage
+        Provides an accessor for the connected schema's storage object. Used
+        often for debugging and controlling transactions.
+
+SEE ALSO
+    General Catalyst Stuff:
+
+    Catalyst::Manual, Catalyst::Test, Catalyst::Request, Catalyst::Response,
+    Catalyst::Helper, Catalyst,
+
+    Stuff related to DBIC and this Model style:
+
+    DBIx::Class, DBIx::Class::Schema, DBIx::Class::Schema::Loader,
+    Catalyst::Helper::Model::DBIC::Schema
+
+AUTHOR
+    Brandon L Black, "blblack at gmail.com"
+
+COPYRIGHT
+    This program is free software, you can redistribute it and/or modify it
+    under the same terms as Perl itself.
+

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/lib (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/lib)

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst)

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper)

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,237 +0,0 @@
-package Catalyst::Helper::Model::DBIC::Schema;
-
-use strict;
-use warnings;
-
-our $VERSION = '0.20';
-
-use Carp;
-use UNIVERSAL::require;
-
-=head1 NAME
-
-Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
-
-=head1 SYNOPSIS
-
-  script/create.pl model CatalystModelName DBIC::Schema MyApp::SchemaClass [ create=dynamic | create=static ] [ connect_info arguments ]
-
-=head1 DESCRIPTION
-
-Helper for the DBIC Schema Models.
-
-=head2 Arguments:
-
-C<CatalystModelName> is the short name for the Catalyst Model class
-being generated (i.e. callable with C<$c-E<gt>model('CatalystModelName')>).
-
-C<MyApp::SchemaClass> is the fully qualified classname of your Schema,
-which might or might not yet exist.  Note that you should have a good
-reason to create this under a new global namespace, otherwise use an
-existing top level namespace for your schema class.
-
-C<create=dynamic> instructs this Helper to generate the named Schema
-class for you, basing it on L<DBIx::Class::Schema::Loader> (which
-means the table information will always be dynamically loaded at
-runtime from the database).
-
-C<create=static> instructs this Helper to generate the named Schema
-class for you, using L<DBIx::Class::Schema::Loader> in "one shot"
-mode to create a standard, manually-defined L<DBIx::Class::Schema>
-setup, based on what the Loader sees in your database at this moment.
-A Schema/Model pair generated this way will not require
-L<DBIx::Class::Schema::Loader> at runtime, and will not automatically
-adapt itself to changes in your database structure.  You can edit
-the generated classes by hand to refine them.
-
-C<connect_info> arguments are the same as what
-DBIx::Class::Schema::connect expects, and are storage_type-specific.
-For DBI-based storage, these arguments are the dsn, username,
-password, and connect options, respectively.  These are optional for
-existing Schemas, but required if you use either of the C<create=>
-options.
-
-Use of either of the C<create=> options requires L<DBIx::Class::Schema::Loader>.
-
-=head1 TYPICAL EXAMPLES
-
-  # Use DBIx::Class::Schema::Loader to create a static DBIx::Class::Schema,
-  #  and a Model which references it:
-  script/myapp_create.pl model CatalystModelName DBIC::Schema MyApp::SchemaClass create=static dbi:mysql:foodb myuname mypass
-
-  # Create a dynamic DBIx::Class::Schema::Loader-based Schema,
-  #  and a Model which references it:
-  script/myapp_create.pl model CatalystModelName DBIC::Schema MyApp::SchemaClass create=dynamic dbi:mysql:foodb myuname mypass
-
-  # Reference an existing Schema of any kind, and provide some connection information for ->config:
-  script/myapp_create.pl model CatalystModelName DBIC::Schema MyApp::SchemaClass dbi:mysql:foodb myuname mypass
-
-  # Same, but don't supply connect information yet (you'll need to do this
-  #  in your app config, or [not recommended] in the schema itself).
-  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass
-
-=head1 METHODS
-
-=head2 mk_compclass
-
-=cut
-
-sub mk_compclass {
-    my ( $self, $helper, $schema_class, @connect_info) = @_;
-
-    $helper->{schema_class} = $schema_class
-        or croak "Must supply schema class name";
-
-    my $create = '';
-    if($connect_info[0] && $connect_info[0] =~ /^create=(dynamic|static)$/) {
-        $create = $1;
-        shift @connect_info;
-    }
-
-    if(@connect_info) {
-        $helper->{setup_connect_info} = 1;
-        my @helper_connect_info = @connect_info;
-        for(@helper_connect_info) {
-            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
-        }
-        $helper->{connect_info} = \@helper_connect_info;
-    }
-
-    if($create eq 'dynamic') {
-        my @schema_parts = split(/\:\:/, $helper->{schema_class});
-        my $schema_file_part = pop @schema_parts;
-
-        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib', @schema_parts );
-        my $schema_file = File::Spec->catfile( $schema_dir, $schema_file_part . '.pm' );
-
-        $helper->mk_dir($schema_dir);
-        $helper->render_file( 'schemaclass', $schema_file );
-    }
-    elsif($create eq 'static') {
-        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib' );
-        DBIx::Class::Schema::Loader->use("dump_to_dir:$schema_dir", 'make_schema_at')
-            or croak "Cannot load DBIx::Class::Schema::Loader: $@";
-
-        my @loader_connect_info = @connect_info;
-        my $num = 6; # argument number on the commandline for "dbi:..."
-        for(@loader_connect_info) {
-            if(/^\s*[[{]/) {
-                $_ = eval "$_";
-                croak "Perl syntax error in commandline argument $num: $@" if $@;
-            }
-            $num++;
-        }
-
-        make_schema_at(
-            $schema_class,
-            { relationships => 1 },
-            \@loader_connect_info,
-        );
-    }
-
-    my $file = $helper->{file};
-    $helper->render_file( 'compclass', $file );
-}
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__DATA__
-
-=begin pod_to_ignore
-
-__schemaclass__
-package [% schema_class %];
-
-use strict;
-use base qw/DBIx::Class::Schema::Loader/;
-
-__PACKAGE__->loader_options(
-    relationships => 1,
-    # debug => 1,
-);
-
-=head1 NAME
-
-[% schema_class %] - DBIx::Class::Schema::Loader class
-
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;
-
-__compclass__
-package [% class %];
-
-use strict;
-use base 'Catalyst::Model::DBIC::Schema';
-
-__PACKAGE__->config(
-    schema_class => '[% schema_class %]',
-    [% IF setup_connect_info %]connect_info => [
-        [% FOREACH arg = connect_info %][% arg %],
-        [% END %]
-    ],[% END %]
-);
-
-=head1 NAME
-
-[% class %] - Catalyst DBIC Schema Model
-=head1 SYNOPSIS
-
-See L<[% app %]>
-
-=head1 DESCRIPTION
-
-L<Catalyst::Model::DBIC::Schema> Model using schema L<[% schema_class %]>
-
-=head1 AUTHOR
-
-[% author %]
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Helper/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,237 @@
+package Catalyst::Helper::Model::DBIC::Schema;
+
+use strict;
+use warnings;
+
+our $VERSION = '0.20';
+
+use Carp;
+use UNIVERSAL::require;
+
+=head1 NAME
+
+Catalyst::Helper::Model::DBIC::Schema - Helper for DBIC Schema Models
+
+=head1 SYNOPSIS
+
+  script/create.pl model CatalystModelName DBIC::Schema MyApp::SchemaClass [ create=dynamic | create=static ] [ connect_info arguments ]
+
+=head1 DESCRIPTION
+
+Helper for the DBIC Schema Models.
+
+=head2 Arguments:
+
+C<CatalystModelName> is the short name for the Catalyst Model class
+being generated (i.e. callable with C<$c-E<gt>model('CatalystModelName')>).
+
+C<MyApp::SchemaClass> is the fully qualified classname of your Schema,
+which might or might not yet exist.  Note that you should have a good
+reason to create this under a new global namespace, otherwise use an
+existing top level namespace for your schema class.
+
+C<create=dynamic> instructs this Helper to generate the named Schema
+class for you, basing it on L<DBIx::Class::Schema::Loader> (which
+means the table information will always be dynamically loaded at
+runtime from the database).
+
+C<create=static> instructs this Helper to generate the named Schema
+class for you, using L<DBIx::Class::Schema::Loader> in "one shot"
+mode to create a standard, manually-defined L<DBIx::Class::Schema>
+setup, based on what the Loader sees in your database at this moment.
+A Schema/Model pair generated this way will not require
+L<DBIx::Class::Schema::Loader> at runtime, and will not automatically
+adapt itself to changes in your database structure.  You can edit
+the generated classes by hand to refine them.
+
+C<connect_info> arguments are the same as what
+DBIx::Class::Schema::connect expects, and are storage_type-specific.
+For DBI-based storage, these arguments are the dsn, username,
+password, and connect options, respectively.  These are optional for
+existing Schemas, but required if you use either of the C<create=>
+options.
+
+Use of either of the C<create=> options requires L<DBIx::Class::Schema::Loader>.
+
+=head1 TYPICAL EXAMPLES
+
+  # Use DBIx::Class::Schema::Loader to create a static DBIx::Class::Schema,
+  #  and a Model which references it:
+  script/myapp_create.pl model CatalystModelName DBIC::Schema MyApp::SchemaClass create=static dbi:mysql:foodb myuname mypass
+
+  # Create a dynamic DBIx::Class::Schema::Loader-based Schema,
+  #  and a Model which references it:
+  script/myapp_create.pl model CatalystModelName DBIC::Schema MyApp::SchemaClass create=dynamic dbi:mysql:foodb myuname mypass
+
+  # Reference an existing Schema of any kind, and provide some connection information for ->config:
+  script/myapp_create.pl model CatalystModelName DBIC::Schema MyApp::SchemaClass dbi:mysql:foodb myuname mypass
+
+  # Same, but don't supply connect information yet (you'll need to do this
+  #  in your app config, or [not recommended] in the schema itself).
+  script/myapp_create.pl model ModelName DBIC::Schema My::SchemaClass
+
+=head1 METHODS
+
+=head2 mk_compclass
+
+=cut
+
+sub mk_compclass {
+    my ( $self, $helper, $schema_class, @connect_info) = @_;
+
+    $helper->{schema_class} = $schema_class
+        or croak "Must supply schema class name";
+
+    my $create = '';
+    if($connect_info[0] && $connect_info[0] =~ /^create=(dynamic|static)$/) {
+        $create = $1;
+        shift @connect_info;
+    }
+
+    if(@connect_info) {
+        $helper->{setup_connect_info} = 1;
+        my @helper_connect_info = @connect_info;
+        for(@helper_connect_info) {
+            $_ = qq{'$_'} if $_ !~ /^\s*[[{]/;
+        }
+        $helper->{connect_info} = \@helper_connect_info;
+    }
+
+    if($create eq 'dynamic') {
+        my @schema_parts = split(/\:\:/, $helper->{schema_class});
+        my $schema_file_part = pop @schema_parts;
+
+        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib', @schema_parts );
+        my $schema_file = File::Spec->catfile( $schema_dir, $schema_file_part . '.pm' );
+
+        $helper->mk_dir($schema_dir);
+        $helper->render_file( 'schemaclass', $schema_file );
+    }
+    elsif($create eq 'static') {
+        my $schema_dir  = File::Spec->catfile( $helper->{base}, 'lib' );
+        DBIx::Class::Schema::Loader->use("dump_to_dir:$schema_dir", 'make_schema_at')
+            or croak "Cannot load DBIx::Class::Schema::Loader: $@";
+
+        my @loader_connect_info = @connect_info;
+        my $num = 6; # argument number on the commandline for "dbi:..."
+        for(@loader_connect_info) {
+            if(/^\s*[[{]/) {
+                $_ = eval "$_";
+                croak "Perl syntax error in commandline argument $num: $@" if $@;
+            }
+            $num++;
+        }
+
+        make_schema_at(
+            $schema_class,
+            { relationships => 1 },
+            \@loader_connect_info,
+        );
+    }
+
+    my $file = $helper->{file};
+    $helper->render_file( 'compclass', $file );
+}
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Model::DBIC::Schema>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__DATA__
+
+=begin pod_to_ignore
+
+__schemaclass__
+package [% schema_class %];
+
+use strict;
+use base qw/DBIx::Class::Schema::Loader/;
+
+__PACKAGE__->loader_options(
+    relationships => 1,
+    # debug => 1,
+);
+
+=head1 NAME
+
+[% schema_class %] - DBIx::Class::Schema::Loader class
+
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+Generated by L<Catalyst::Model::DBIC::Schema> for use in L<[% class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;
+
+__compclass__
+package [% class %];
+
+use strict;
+use base 'Catalyst::Model::DBIC::Schema';
+
+__PACKAGE__->config(
+    schema_class => '[% schema_class %]',
+    [% IF setup_connect_info %]connect_info => [
+        [% FOREACH arg = connect_info %][% arg %],
+        [% END %]
+    ],[% END %]
+);
+
+=head1 NAME
+
+[% class %] - Catalyst DBIC Schema Model
+=head1 SYNOPSIS
+
+See L<[% app %]>
+
+=head1 DESCRIPTION
+
+L<Catalyst::Model::DBIC::Schema> Model using schema L<[% schema_class %]>
+
+=head1 AUTHOR
+
+[% author %]
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model)

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/Schema.pm
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,335 +0,0 @@
-package Catalyst::Model::DBIC::Schema;
-
-use strict;
-use warnings;
-
-our $VERSION = '0.20';
-
-use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
-use NEXT;
-use UNIVERSAL::require;
-use Carp;
-use Data::Dumper;
-require DBIx::Class;
-
-__PACKAGE__->mk_classaccessor('composed_schema');
-__PACKAGE__->mk_accessors('schema');
-
-=head1 NAME
-
-Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
-
-=head1 SYNOPSIS
-
-Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
-
-=over
-
-=item 1.
-
-Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
-
-  package MyApp::Schema::FilmDB;
-  use base qw/DBIx::Class::Schema/;
-
-  __PACKAGE__->load_classes(qw/Actor Role/);
-
-=item 2.
-
-Create some classes for the tables in the database, for example an 
-Actor in MyApp/Schema/FilmDB/Actor.pm:
-
-  package MyApp::Schema::FilmDB::Actor;
-  use base qw/DBIx::Class/
-
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('actor');
-
-  ...
-
-and a Role in MyApp/Schema/Role.pm:
-
-  package MyApp::Schema::FilmDB::Role;
-  use base qw/DBIx::Class/
-
-  __PACKAGE__->load_components(qw/Core/);
-  __PACKAGE__->table('role');
-
-  ...    
-
-Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
-usable as a standalone module and you can test/run it without Catalyst. 
-
-=item 3.
-
-To expose it to Catalyst as a model, you should create a DBIC Model in
-MyApp/Model/FilmDB.pm:
-
-  package MyApp::Model::FilmDB;
-  use base qw/Catalyst::Model::DBIC::Schema/;
-
-  __PACKAGE__->config(
-      schema_class => 'MyApp::Schema::FilmDB',
-      connect_info => [
-                        "DBI:...",
-                        "username",
-                        "password",
-                        {AutoCommit => 1}
-                      ]
-  );
-
-See below for a full list of the possible config parameters.
-
-=back
-
-Now you have a working Model, accessing your separate DBIC Schema. Which can
-be used/accessed in the normal Catalyst manner, via $c->model():
-
-  my $actor = $c->model('FilmDB::Actor')->find(1);
-
-You can also use it to set up DBIC authentication with 
-Authentication::Store::DBIC in MyApp.pm:
-
-  package MyApp;
-
-  use Catalyst qw/... Authentication::Store::DBIC/;
-
-  ...
-
-  __PACKAGE__->config->{authentication}{dbic} = {
-      user_class      => 'FilmDB::Actor',
-      user_field      => 'name',
-      password_field  => 'password'
-  }
-
-C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
-parameter passed. To find out more about which methods can be called on a
-ResultSet, or how to add your own methods to it, please see the ResultSet
-documentation in the L<DBIx::Class> distribution.
-
-Some examples are given below:
-
-  # to access schema methods directly:
-  $c->model('FilmDB')->schema->source(...);
-
-  # to access the source object, resultset, and class:
-  $c->model('FilmDB')->source(...);
-  $c->model('FilmDB')->resultset(...);
-  $c->model('FilmDB')->class(...);
-
-  # For resultsets, there's an even quicker shortcut:
-  $c->model('FilmDB::Actor')
-  # is the same as $c->model('FilmDB')->resultset('Actor')
-
-  # To get the composed schema for making new connections:
-  my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
-
-  # Or the same thing via a convenience shortcut:
-  my $newconn = $c->model('FilmDB')->connect(...);
-
-  # or, if your schema works on different storage drivers:
-  my $newconn = $c->model('FilmDB')->composed_schema->clone();
-  $newconn->storage_type('::LDAP');
-  $newconn->connection(...);
-
-  # and again, a convenience shortcut
-  my $newconn = $c->model('FilmDB')->clone();
-  $newconn->storage_type('::LDAP');
-  $newconn->connection(...);
-
-=head1 DESCRIPTION
-
-This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
-the documentation for L<Catalyst::Helper::Model::DBIC::Schema> for
-information on generating these Models via Helper scripts.
-
-=head1 CONFIG PARAMETERS
-
-=over 4
-
-=item schema_class
-
-This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
-to be findable in C<@INC>, but it does not need to be inside the 
-C<Catalyst::Model::> namespace.  This parameter is required.
-
-=item connect_info
-
-This is an arrayref of connection parameters, which are specific to your
-C<storage_type> (see your storage type documentation for more details).
-
-This is not required if C<schema_class> already has connection information
-defined inside itself (which isn't highly recommended, but can be done)
-
-For L<DBIx::Class::Storage::DBI>, which is the only supported
-C<storage_type> in L<DBIx::Class> at the time of this writing, the
-parameters are your dsn, username, password, and connect options hashref.
-
-See L<DBIx::Class::Storage::DBI/connect_info> for a detailed explanation
-of the arguments supported.
-
-Examples:
-
-  connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
-
-  connect_info => [
-                    'dbi:SQLite:dbname=foo.db',
-                    {
-                      on_connect_do => [
-                        'PRAGMA synchronous = OFF',
-                      ],
-                    }
-                  ],
-
-  connect_info => [
-                    'dbi:Pg:dbname=mypgdb',
-                    'postgres',
-                    '',
-                    { AutoCommit => 0 },
-                    {
-                      on_connect_do => [
-                        'some SQL statement',
-                        'another SQL statement',
-                      ],
-                    }
-                  ],
-
-=item storage_type
-
-Allows the use of a different C<storage_type> than what is set in your
-C<schema_class> (which in turn defaults to C<::DBI> if not set in current
-L<DBIx::Class>).  Completely optional, and probably unnecessary for most
-people until other storage backends become available for L<DBIx::Class>.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new
-
-Instantiates the Model based on the above-documented ->config parameters.
-The only required parameter is C<schema_class>.  C<connect_info> is
-required in the case that C<schema_class> does not already have connection
-information defined for it.
-
-=item schema
-
-Accessor which returns the connected schema being used by the this model.
-There are direct shortcuts on the model class itself for
-schema->resultset, schema->source, and schema->class.
-
-=item composed_schema
-
-Accessor which returns the composed schema, which has no connection info,
-which was used in constructing the C<schema> above.  Useful for creating
-new connections based on the same schema/model.  There are direct shortcuts
-from the model object for composed_schema->clone and composed_schema->connect
-
-=item clone
-
-Shortcut for ->composed_schema->clone
-
-=item connect
-
-Shortcut for ->composed_schema->connect
-
-=item source
-
-Shortcut for ->schema->source
-
-=item class
-
-Shortcut for ->schema->class
-
-=item resultset
-
-Shortcut for ->schema->resultset
-
-=item storage
-
-Provides an accessor for the connected schema's storage object.
-Used often for debugging and controlling transactions.
-
-=back
-
-=cut
-
-sub new {
-    my $self = shift->NEXT::new(@_);
-    
-    my $class = ref($self);
-    my $model_name = $class;
-    $model_name =~ s/^[\w:]+::(?:Model|M):://;
-
-    croak "->config->{schema_class} must be defined for this model"
-        unless $self->{schema_class};
-
-    my $schema_class = $self->{schema_class};
-
-    $schema_class->require
-        or croak "Cannot load schema class '$schema_class': $@";
-
-    if( !$self->{connect_info} ) {
-        if($schema_class->storage && $schema_class->storage->connect_info) {
-            $self->{connect_info} = $schema_class->storage->connect_info;
-        }
-        else {
-            croak "Either ->config->{connect_info} must be defined for $class"
-                  . " or $schema_class must have connect info defined on it"
-		  . "Here's what we got:\n"
-		  . Dumper($self);
-        }
-    }
-
-    $self->composed_schema($schema_class->compose_namespace($class));
-    $self->schema($self->composed_schema->clone);
-
-    $self->schema->storage_type($self->{storage_type})
-        if $self->{storage_type};
-
-    $self->schema->connection(@{$self->{connect_info}});
-    
-    no strict 'refs';
-    foreach my $moniker ($self->schema->sources) {
-        my $classname = "${class}::$moniker";
-        *{"${classname}::ACCEPT_CONTEXT"} = sub {
-            shift;
-            shift->model($model_name)->resultset($moniker);
-        }
-    }
-
-    return $self;
-}
-
-sub clone { shift->composed_schema->clone(@_); }
-
-sub connect { shift->composed_schema->connect(@_); }
-
-sub storage { shift->schema->storage(@_); }
-
-=head1 SEE ALSO
-
-General Catalyst Stuff:
-
-L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
-L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
-
-Stuff related to DBIC and this Model style:
-
-L<DBIx::Class>, L<DBIx::Class::Schema>,
-L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>
-
-=head1 AUTHOR
-
-Brandon L Black, C<blblack at gmail.com>
-
-=head1 COPYRIGHT
-
-This program is free software, you can redistribute it and/or modify it
-under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/Schema.pm (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/Schema.pm)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/Schema.pm	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/lib/Catalyst/Model/DBIC/Schema.pm	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,335 @@
+package Catalyst::Model::DBIC::Schema;
+
+use strict;
+use warnings;
+
+our $VERSION = '0.20';
+
+use base qw/Catalyst::Model Class::Accessor::Fast Class::Data::Accessor/;
+use NEXT;
+use UNIVERSAL::require;
+use Carp;
+use Data::Dumper;
+require DBIx::Class;
+
+__PACKAGE__->mk_classaccessor('composed_schema');
+__PACKAGE__->mk_accessors('schema');
+
+=head1 NAME
+
+Catalyst::Model::DBIC::Schema - DBIx::Class::Schema Model Class
+
+=head1 SYNOPSIS
+
+Manual creation of a DBIx::Class::Schema and a Catalyst::Model::DBIC::Schema:
+
+=over
+
+=item 1.
+
+Create the DBIx:Class schema in MyApp/Schema/FilmDB.pm:
+
+  package MyApp::Schema::FilmDB;
+  use base qw/DBIx::Class::Schema/;
+
+  __PACKAGE__->load_classes(qw/Actor Role/);
+
+=item 2.
+
+Create some classes for the tables in the database, for example an 
+Actor in MyApp/Schema/FilmDB/Actor.pm:
+
+  package MyApp::Schema::FilmDB::Actor;
+  use base qw/DBIx::Class/
+
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('actor');
+
+  ...
+
+and a Role in MyApp/Schema/Role.pm:
+
+  package MyApp::Schema::FilmDB::Role;
+  use base qw/DBIx::Class/
+
+  __PACKAGE__->load_components(qw/Core/);
+  __PACKAGE__->table('role');
+
+  ...    
+
+Notice that the schema is in MyApp::Schema, not in MyApp::Model. This way it's 
+usable as a standalone module and you can test/run it without Catalyst. 
+
+=item 3.
+
+To expose it to Catalyst as a model, you should create a DBIC Model in
+MyApp/Model/FilmDB.pm:
+
+  package MyApp::Model::FilmDB;
+  use base qw/Catalyst::Model::DBIC::Schema/;
+
+  __PACKAGE__->config(
+      schema_class => 'MyApp::Schema::FilmDB',
+      connect_info => [
+                        "DBI:...",
+                        "username",
+                        "password",
+                        {AutoCommit => 1}
+                      ]
+  );
+
+See below for a full list of the possible config parameters.
+
+=back
+
+Now you have a working Model, accessing your separate DBIC Schema. Which can
+be used/accessed in the normal Catalyst manner, via $c->model():
+
+  my $actor = $c->model('FilmDB::Actor')->find(1);
+
+You can also use it to set up DBIC authentication with 
+Authentication::Store::DBIC in MyApp.pm:
+
+  package MyApp;
+
+  use Catalyst qw/... Authentication::Store::DBIC/;
+
+  ...
+
+  __PACKAGE__->config->{authentication}{dbic} = {
+      user_class      => 'FilmDB::Actor',
+      user_field      => 'name',
+      password_field  => 'password'
+  }
+
+C<< $c->model() >> returns a L<DBIx::Class::ResultSet> for the source name
+parameter passed. To find out more about which methods can be called on a
+ResultSet, or how to add your own methods to it, please see the ResultSet
+documentation in the L<DBIx::Class> distribution.
+
+Some examples are given below:
+
+  # to access schema methods directly:
+  $c->model('FilmDB')->schema->source(...);
+
+  # to access the source object, resultset, and class:
+  $c->model('FilmDB')->source(...);
+  $c->model('FilmDB')->resultset(...);
+  $c->model('FilmDB')->class(...);
+
+  # For resultsets, there's an even quicker shortcut:
+  $c->model('FilmDB::Actor')
+  # is the same as $c->model('FilmDB')->resultset('Actor')
+
+  # To get the composed schema for making new connections:
+  my $newconn = $c->model('FilmDB')->composed_schema->connect(...);
+
+  # Or the same thing via a convenience shortcut:
+  my $newconn = $c->model('FilmDB')->connect(...);
+
+  # or, if your schema works on different storage drivers:
+  my $newconn = $c->model('FilmDB')->composed_schema->clone();
+  $newconn->storage_type('::LDAP');
+  $newconn->connection(...);
+
+  # and again, a convenience shortcut
+  my $newconn = $c->model('FilmDB')->clone();
+  $newconn->storage_type('::LDAP');
+  $newconn->connection(...);
+
+=head1 DESCRIPTION
+
+This is a Catalyst Model for L<DBIx::Class::Schema>-based Models.  See
+the documentation for L<Catalyst::Helper::Model::DBIC::Schema> for
+information on generating these Models via Helper scripts.
+
+=head1 CONFIG PARAMETERS
+
+=over 4
+
+=item schema_class
+
+This is the classname of your L<DBIx::Class::Schema> Schema.  It needs
+to be findable in C<@INC>, but it does not need to be inside the 
+C<Catalyst::Model::> namespace.  This parameter is required.
+
+=item connect_info
+
+This is an arrayref of connection parameters, which are specific to your
+C<storage_type> (see your storage type documentation for more details).
+
+This is not required if C<schema_class> already has connection information
+defined inside itself (which isn't highly recommended, but can be done)
+
+For L<DBIx::Class::Storage::DBI>, which is the only supported
+C<storage_type> in L<DBIx::Class> at the time of this writing, the
+parameters are your dsn, username, password, and connect options hashref.
+
+See L<DBIx::Class::Storage::DBI/connect_info> for a detailed explanation
+of the arguments supported.
+
+Examples:
+
+  connect_info => [ 'dbi:Pg:dbname=mypgdb', 'postgres', '' ],
+
+  connect_info => [
+                    'dbi:SQLite:dbname=foo.db',
+                    {
+                      on_connect_do => [
+                        'PRAGMA synchronous = OFF',
+                      ],
+                    }
+                  ],
+
+  connect_info => [
+                    'dbi:Pg:dbname=mypgdb',
+                    'postgres',
+                    '',
+                    { AutoCommit => 0 },
+                    {
+                      on_connect_do => [
+                        'some SQL statement',
+                        'another SQL statement',
+                      ],
+                    }
+                  ],
+
+=item storage_type
+
+Allows the use of a different C<storage_type> than what is set in your
+C<schema_class> (which in turn defaults to C<::DBI> if not set in current
+L<DBIx::Class>).  Completely optional, and probably unnecessary for most
+people until other storage backends become available for L<DBIx::Class>.
+
+=back
+
+=head1 METHODS
+
+=over 4
+
+=item new
+
+Instantiates the Model based on the above-documented ->config parameters.
+The only required parameter is C<schema_class>.  C<connect_info> is
+required in the case that C<schema_class> does not already have connection
+information defined for it.
+
+=item schema
+
+Accessor which returns the connected schema being used by the this model.
+There are direct shortcuts on the model class itself for
+schema->resultset, schema->source, and schema->class.
+
+=item composed_schema
+
+Accessor which returns the composed schema, which has no connection info,
+which was used in constructing the C<schema> above.  Useful for creating
+new connections based on the same schema/model.  There are direct shortcuts
+from the model object for composed_schema->clone and composed_schema->connect
+
+=item clone
+
+Shortcut for ->composed_schema->clone
+
+=item connect
+
+Shortcut for ->composed_schema->connect
+
+=item source
+
+Shortcut for ->schema->source
+
+=item class
+
+Shortcut for ->schema->class
+
+=item resultset
+
+Shortcut for ->schema->resultset
+
+=item storage
+
+Provides an accessor for the connected schema's storage object.
+Used often for debugging and controlling transactions.
+
+=back
+
+=cut
+
+sub new {
+    my $self = shift->NEXT::new(@_);
+    
+    my $class = ref($self);
+    my $model_name = $class;
+    $model_name =~ s/^[\w:]+::(?:Model|M):://;
+
+    croak "->config->{schema_class} must be defined for this model"
+        unless $self->{schema_class};
+
+    my $schema_class = $self->{schema_class};
+
+    $schema_class->require
+        or croak "Cannot load schema class '$schema_class': $@";
+
+    if( !$self->{connect_info} ) {
+        if($schema_class->storage && $schema_class->storage->connect_info) {
+            $self->{connect_info} = $schema_class->storage->connect_info;
+        }
+        else {
+            croak "Either ->config->{connect_info} must be defined for $class"
+                  . " or $schema_class must have connect info defined on it"
+		  . "Here's what we got:\n"
+		  . Dumper($self);
+        }
+    }
+
+    $self->composed_schema($schema_class->compose_namespace($class));
+    $self->schema($self->composed_schema->clone);
+
+    $self->schema->storage_type($self->{storage_type})
+        if $self->{storage_type};
+
+    $self->schema->connection(@{$self->{connect_info}});
+    
+    no strict 'refs';
+    foreach my $moniker ($self->schema->sources) {
+        my $classname = "${class}::$moniker";
+        *{"${classname}::ACCEPT_CONTEXT"} = sub {
+            shift;
+            shift->model($model_name)->resultset($moniker);
+        }
+    }
+
+    return $self;
+}
+
+sub clone { shift->composed_schema->clone(@_); }
+
+sub connect { shift->composed_schema->connect(@_); }
+
+sub storage { shift->schema->storage(@_); }
+
+=head1 SEE ALSO
+
+General Catalyst Stuff:
+
+L<Catalyst::Manual>, L<Catalyst::Test>, L<Catalyst::Request>,
+L<Catalyst::Response>, L<Catalyst::Helper>, L<Catalyst>,
+
+Stuff related to DBIC and this Model style:
+
+L<DBIx::Class>, L<DBIx::Class::Schema>,
+L<DBIx::Class::Schema::Loader>, L<Catalyst::Helper::Model::DBIC::Schema>
+
+=head1 AUTHOR
+
+Brandon L Black, C<blblack at gmail.com>
+
+=head1 COPYRIGHT
+
+This program is free software, you can redistribute it and/or modify it
+under the same terms as Perl itself.
+
+=cut
+
+1;

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/t)

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/t/01use.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/01use.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,5 +0,0 @@
-use strict;
-use Test::More tests => 2;
-
-BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
-BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/t/01use.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/t/01use.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/01use.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/01use.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,5 @@
+use strict;
+use Test::More tests => 2;
+
+BEGIN { use_ok('Catalyst::Model::DBIC::Schema') }
+BEGIN { use_ok('Catalyst::Helper::Model::DBIC::Schema') }

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/t/02pod.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/02pod.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,8 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod 1.14";
-plan skip_all => 'Test::Pod 1.14 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_files_ok();
-

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/t/02pod.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/t/02pod.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/02pod.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/02pod.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,8 @@
+use Test::More;
+
+eval "use Test::Pod 1.14";
+plan skip_all => 'Test::Pod 1.14 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_files_ok();
+

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/t/03podcoverage.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/03podcoverage.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,7 +0,0 @@
-use Test::More;
-
-eval "use Test::Pod::Coverage 1.04";
-plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
-plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
-
-all_pod_coverage_ok();

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/t/03podcoverage.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/t/03podcoverage.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/03podcoverage.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/03podcoverage.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,7 @@
+use Test::More;
+
+eval "use Test::Pod::Coverage 1.04";
+plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@;
+plan skip_all => 'set TEST_POD to enable this test' unless $ENV{TEST_POD};
+
+all_pod_coverage_ok();

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/t/04kwalitee.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/04kwalitee.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,5 +0,0 @@
-use Test::More;
-
-eval { require Test::Kwalitee; Test::Kwalitee->import() };
-
-plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/t/04kwalitee.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/t/04kwalitee.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/04kwalitee.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/04kwalitee.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,5 @@
+use Test::More;
+
+eval { require Test::Kwalitee; Test::Kwalitee->import() };
+
+plan( skip_all => 'Test::Kwalitee not installed; skipping' ) if $@;

Deleted: tags/Catalyst-Model-DBIC-Schema/0.20/t/05testapp.t
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/05testapp.t	2009-07-24 16:12:19 UTC (rev 10972)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -1,46 +0,0 @@
-use strict;
-use Test::More;
-use FindBin;
-use File::Spec;
-use File::Find;
-
-plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
-    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
-
-# XXX this test needs a re-write to fully test the current set of capabilities...
-
-my $test_params = [
-    [ 'TestSchema', 'DBIC::Schema', '' ],
-    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass "{ AutoCommit => 1 }"} ],
-];
-
-plan tests => (2 * @$test_params);
-
-my $test_dir   = $FindBin::Bin;
-my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
-my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
-my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
-my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
-my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
-
-chdir($test_dir);
-system("catalyst.pl TestApp");
-chdir($cat_dir);
-
-foreach my $tparam (@$test_params) {
-   my ($model, $helper, $args) = @$tparam;
-   system("$^X -I$blib_dir $creator model $model $helper $model $args");
-   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
-   ok( -f $model_path, "$model_path is a file" );
-   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
-   ok($compile_rv == 0, "perl -c $model_path");
-}
-
-chdir($test_dir);
-
-sub rm_rf {
-    my $name = $File::Find::name;
-    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
-    else { unlink $name or die "Cannot unlink $name: $!" }
-}
-finddepth(\&rm_rf, $cat_dir);

Copied: tags/Catalyst-Model-DBIC-Schema/0.20/t/05testapp.t (from rev 10972, tags/Catalyst-Model-DBIC-Schema/0.20/t/05testapp.t)
===================================================================
--- tags/Catalyst-Model-DBIC-Schema/0.20/t/05testapp.t	                        (rev 0)
+++ tags/Catalyst-Model-DBIC-Schema/0.20/t/05testapp.t	2009-07-29 22:06:07 UTC (rev 11004)
@@ -0,0 +1,46 @@
+use strict;
+use Test::More;
+use FindBin;
+use File::Spec;
+use File::Find;
+
+plan skip_all => 'Enable this optional test with $ENV{C_M_DBIC_SCHEMA_TESTAPP}'
+    unless $ENV{C_M_DBIC_SCHEMA_TESTAPP};
+
+# XXX this test needs a re-write to fully test the current set of capabilities...
+
+my $test_params = [
+    [ 'TestSchema', 'DBIC::Schema', '' ],
+    [ 'TestSchemaDSN', 'DBIC::Schema', q{fakedsn fakeuser fakepass "{ AutoCommit => 1 }"} ],
+];
+
+plan tests => (2 * @$test_params);
+
+my $test_dir   = $FindBin::Bin;
+my $blib_dir   = File::Spec->catdir ($test_dir, '..', 'blib', 'lib');
+my $cat_dir    = File::Spec->catdir ($test_dir, 'TestApp');
+my $catlib_dir = File::Spec->catdir ($cat_dir, 'lib');
+my $creator    = File::Spec->catfile($cat_dir, 'script', 'testapp_create.pl');
+my $model_dir  = File::Spec->catdir ($catlib_dir, 'TestApp', 'Model');
+
+chdir($test_dir);
+system("catalyst.pl TestApp");
+chdir($cat_dir);
+
+foreach my $tparam (@$test_params) {
+   my ($model, $helper, $args) = @$tparam;
+   system("$^X -I$blib_dir $creator model $model $helper $model $args");
+   my $model_path = File::Spec->catfile($model_dir, $model . '.pm');
+   ok( -f $model_path, "$model_path is a file" );
+   my $compile_rv = system("$^X -I$blib_dir -I$catlib_dir -c $model_path");
+   ok($compile_rv == 0, "perl -c $model_path");
+}
+
+chdir($test_dir);
+
+sub rm_rf {
+    my $name = $File::Find::name;
+    if(-d $name) { rmdir $name or die "Cannot rmdir $name: $!" }
+    else { unlink $name or die "Cannot unlink $name: $!" }
+}
+finddepth(\&rm_rf, $cat_dir);




More information about the Catalyst-commits mailing list