describe_class_methods emit_loud_diag
);
use DBIx::Class ();
-use DBIx::Class::Exception ();
use Scalar::Util qw( blessed refaddr );
use namespace::clean;
package MyApp::Schema;
use base 'DBIx::Class::Schema';
- # this is the default on Perl v5.10 and later
+ # this is the default setting
__PACKAGE__->schema_sanity_checker('DBIx::Class::Schema::SanityChecker');
...
This is the default implementation of the Schema and related classes
L<validation framework|DBIx::Class::Schema/schema_sanity_checker>.
-The validator is B<enabled by default> on perls C<v5.10> and above. See
-L</Performance considerations> for discussion of the runtime effects.
+The validator is B<enabled by default>. See L</Performance considerations>
+for discussion of the runtime effects.
Use of this class begins by invoking L</perform_schema_sanity_checks>
(usually via L<DBIx::Class::Schema/connection>), which in turn starts
L<Class::C3::XS> available, without them the slowdown reaches the whopping
C<350%>).
-Therefore, on these versions of perl the sanity checks are B<not enabled> by
-default. Instead a C<false> placeholder value is inserted into the
-L<schema_sanity_checker attribute|DBIx::Class::Schema/schema_sanity_checker>,
-urging the user to decide for themselves how to proceed.
-
It is the author's B<strongest> recommendation to find a way to run the
checks on your codebase continuously, even if it takes much longer. Refer to
the last paragraph of L</Performance considerations> above for an example how
. "chain of calls within the convenience shortcut as seen when running:\n "
. '~$ perl -M%2$s -MDevel::Dwarn -e "Ddie { %3$s => %2$s->can(q(%3$s)) }"',
join (', ', map { "$_()" } sort @{ $_->{by} } ),
- $_->{overriden}{via_class},
- $_->{overriden}{name},
+ $_->{overridden}{via_class},
+ $_->{overridden}{name},
)} @{ $_[1] } ]
}
unless $_->{attributes}{DBIC_method_is_indirect_sugar};
push @err, {
- overriden => {
+ overridden => {
name => $_->{name},
via_class => (
# this way we report a much better Dwarn oneliner in the error