use File::Temp 'tempfile';
use namespace::clean;
-our $VERSION = '0.07045';
+our $VERSION = '0.07046';
__PACKAGE__->mk_group_ro_accessors('simple', qw/
schema
Only load matching tables.
-=head2 exclude
-
-Exclude matching tables.
-
These can be specified either as a regex (preferably on the C<qr//>
form), or as an arrayref of arrayrefs. Regexes are matched against
the (unqualified) table name, while arrayrefs are matched according to
In this case only the tables C<foo> and C<bar> in C<some_schema> and
C<baz> in C<other_schema> will be dumped.
+=head2 exclude
+
+Exclude matching tables.
+
+The tables to exclude are specified in the same way as for the
+L</constraint> option.
+
=head2 moniker_map
Overrides the default table name to moniker translation. Either
my @attr = qw/resultset_namespace default_resultset_class/;
- unshift @attr, 'result_namespace' unless (not $self->result_namespace) || $self->result_namespace eq 'Result';
+ unshift @attr, 'result_namespace'
+ if $self->result_namespace && $self->result_namespace ne 'Result';
for my $attr (@attr) {
if ($self->$attr) {
$gen .= $pre_md5;
$real_md5 = Digest::MD5::md5_base64(encode 'UTF-8', $gen);
- croak "Checksum mismatch in '$fn', the auto-generated part of the file has been modified outside of this loader. Aborting.\nIf you want to overwrite these modifications, set the 'overwrite_modifications' loader option.\n"
- if !$self->overwrite_modifications && $real_md5 ne $mark_md5;
-
+ if ($real_md5 ne $mark_md5) {
+ if ($self->overwrite_modifications) {
+ # Setting this to something that is not a valid MD5 forces
+ # the file to be rewritten.
+ $real_md5 = 'not an MD5';
+ }
+ else {
+ croak "Checksum mismatch in '$fn', the auto-generated part of the file has been modified outside of this loader. Aborting.\nIf you want to overwrite these modifications, set the 'overwrite_modifications' loader option.\n";
+ }
+ }
last;
}
else {