[Bast-commits] r8924 - in DBIx-Class/0.08/trunk: .
lib/DBIx/Class/Optional
ribasushi at dev.catalyst.perl.org
ribasushi at dev.catalyst.perl.org
Sun Mar 7 01:58:09 GMT 2010
Author: ribasushi
Date: 2010-03-07 01:58:09 +0000 (Sun, 07 Mar 2010)
New Revision: 8924
Modified:
DBIx-Class/0.08/trunk/Changes
DBIx-Class/0.08/trunk/Makefile.PL
DBIx-Class/0.08/trunk/lib/DBIx/Class/Optional/Dependencies.pm
Log:
Unmark Opt::Deps experimental and add extra method as per RT55211
Modified: DBIx-Class/0.08/trunk/Changes
===================================================================
--- DBIx-Class/0.08/trunk/Changes 2010-03-07 01:35:49 UTC (rev 8923)
+++ DBIx-Class/0.08/trunk/Changes 2010-03-07 01:58:09 UTC (rev 8924)
@@ -1,6 +1,8 @@
Revision history for DBIx::Class
- DBIx::Class::InflateColumn::File entered deprecated state
+ - DBIx::Class::Optional::Dependencies left experimental state
+ - Add req_group_list to Opt::Deps (RT#55211)
- Cascading delete/update are now wrapped in a transaction
for atomicity
- Fix regression where SQL files with comments were not
Modified: DBIx-Class/0.08/trunk/Makefile.PL
===================================================================
--- DBIx-Class/0.08/trunk/Makefile.PL 2010-03-07 01:35:49 UTC (rev 8923)
+++ DBIx-Class/0.08/trunk/Makefile.PL 2010-03-07 01:58:09 UTC (rev 8924)
@@ -78,7 +78,7 @@
require DBIx::Class::Optional::Dependencies;
$reqs->{test_requires} = {
%{$reqs->{test_requires}},
- %{DBIx::Class::Optional::Dependencies->_all_optional_requirements},
+ map { %$_ } (values %{DBIx::Class::Optional::Dependencies->req_group_list}),
};
}
Modified: DBIx-Class/0.08/trunk/lib/DBIx/Class/Optional/Dependencies.pm
===================================================================
--- DBIx-Class/0.08/trunk/lib/DBIx/Class/Optional/Dependencies.pm 2010-03-07 01:35:49 UTC (rev 8923)
+++ DBIx-Class/0.08/trunk/lib/DBIx/Class/Optional/Dependencies.pm 2010-03-07 01:58:09 UTC (rev 8924)
@@ -195,10 +195,6 @@
};
-sub _all_optional_requirements {
- return { map { %{ $reqs->{$_}{req} || {} } } (keys %$reqs) };
-}
-
sub req_list_for {
my ($class, $group) = @_;
@@ -281,7 +277,11 @@
}
}
-# This is to be called by the author onbly (automatically in Makefile.PL)
+sub req_group_list {
+ return { map { $_ => { %{ $reqs->{$_}{req} || {} } } } (keys %$reqs) };
+}
+
+# This is to be called by the author only (automatically in Makefile.PL)
sub _gen_pod {
my $class = shift;
my $modfn = __PACKAGE__ . '.pm';
@@ -289,6 +289,8 @@
require DBIx::Class;
my $distver = DBIx::Class->VERSION;
+ my $sqltver = $class->req_list_for ('deploy')->{'SQL::Translator'}
+ or die "Hrmm? No sqlt dep?";
my @chunks = (
<<"EOC",
@@ -303,10 +305,8 @@
EOC
'=head1 NAME',
"$class - Optional module dependency specifications (for module authors)",
- '=head1 SYNOPSIS (EXPERIMENTAL)',
+ '=head1 SYNOPSIS',
<<EOS,
-B<THE USAGE SHOWN HERE IS EXPERIMENTAL>
-
Somewhere in your build-file (e.g. L<Module::Install>'s Makefile.PL):
...
@@ -366,6 +366,17 @@
push @chunks, (
'=head1 METHODS',
+ '=head2 req_group_list',
+ '=over',
+ '=item Arguments: $none',
+ '=item Returns: \%list_of_requirement_groups',
+ '=back',
+ <<EOD,
+This method should be used by DBIx::Class packagers, to get a hashref of all
+dependencies keyed by dependency group. Each key (group name) can be supplied
+to one of the group-specific methods below.
+EOD
+
'=head2 req_list_for',
'=over',
'=item Arguments: $group_name',
@@ -374,7 +385,7 @@
<<EOD,
This method should be used by DBIx::Class extension authors, to determine the
version of modules a specific feature requires in the B<current> version of
-DBIx::Class. See the L<SYNOPSIS|/SYNOPSIS (EXPERIMENTAL)> for a real-world
+DBIx::Class. See the L</SYNOPSIS> for a real-world
example.
EOD
@@ -396,10 +407,10 @@
indicate to the user that he needs to install specific modules before he will
be able to use a specific feature.
-For example if the requirements for C<replicated> are not available, the
-returned string would look like:
+For example if some of the requirements for C<deploy> are not available,
+the returned string could look like:
- Moose >= 0.98, MooseX::Types >= 0.21, namespace::clean (see $class for details)
+ SQL::Translator >= $sqltver (see $class for details)
The author is expected to prepend the necessary text to this message before
returning the actual error seen by the user.
More information about the Bast-commits
mailing list