-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Port to Distar #17
Port to Distar #17
Conversation
The CI is failing, looks like it's missing deps like CAG and |
Makefile.PL
Outdated
}; | ||
} | ||
delete $eumm_args{META_MERGE} if $eumm_version < 6.45_01; | ||
_move_to(\%eumm_args, 'CONFIGURE_REQUIRES', 'PREREQ_PM') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This doesn't accomplish much. It's too late for configure prereqs to be satisfied here. Deleting CONFIGURE_REQUIRES
to silence the warning is the only useful thing that can be done.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, force-pushed!
Makefile.PL
Outdated
if $eumm_version < 6.55_01; | ||
$eumm_args{NO_MYMETA} = 1 | ||
if $eumm_version >= 6.57_02 and $eumm_version < 6.57_07; | ||
_move_to(\%eumm_args, 'TEST_REQUIRES', 'PREREQ_PM') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should move the prereqs to BUILD_REQUIRES
and be moved before BUILD_REQUIRES
gets conditionally moved to PREREQ_PM
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, force-pushed!
maint/Makefile.PL.include
Outdated
my @req_groups = keys %{ $optdeps->req_group_list }; | ||
my @rdbms_groups = grep { /rdbms/ } @req_groups; | ||
my @other_groups = grep { !/rdbms/ } @req_groups; | ||
our (%dev_requires, %runtime_suggests); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is a confusing way to communicate with the rest of the Makefile.PL
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't disagree, but it was the only way I could think of that fit with how Distar
works. Do you have an alternative?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One option would be to return a hash from the script and do something like
my %dev_requires = -f 'META.yml' ? () : (do './maint/Makefile.PL.include' or die $@);
in Makefile.PL
, but I'm not entirely sure I like that either.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've done this instead as a hash-ref, allowing for future expansion by adding to the returned list.
Makefile.PL
Outdated
my $eumm_version = eval $ExtUtils::MakeMaker::VERSION; | ||
my %eumm_args = ( | ||
NAME => 'DBIx::Class::Schema::Loader', | ||
AUTHOR => 'Caelum: Rafael Kitover <[email protected]>', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Redundant with Distar's author handing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, force-pushed!
x_MailingList => 'http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class', | ||
}, | ||
no_index => { | ||
directory => [qw(maint xt)], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PAUSE already doesn't index anything in inc
, xt
, and t
, so I think we should either list t
explicitly here for completeness, or only explicitly list maint
for conciseness.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
EUMM adds t
and inc
, so the list ends up sent to PAUSE as all 4. It is thus complete. The current code makes a META file with repetition.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Having checked the current CPAN META.yml
, it in fact doesn't have repetition. However it did locally when I added t
, so I left it out here, rationale as above.
maint/Makefile.PL.include
Outdated
my @other_groups = grep { !/rdbms/ } @req_groups; | ||
our (%dev_requires, %runtime_suggests); | ||
%dev_requires = %{ $optdeps->modreq_list_for(\@other_groups) }; | ||
%runtime_suggests = %{ $optdeps->modreq_list_for(\@rdbms_groups) }; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't currently suggest any of the RDBMS-specific modules, and I'd like to keep actual behaviour changes to a minimum in this PR. If we want to further tweak the deps, that should be a separate discussion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed, changed.
maint/Makefile.PL.include
Outdated
my @req_groups = keys %{ $optdeps->req_group_list }; | ||
my @rdbms_groups = grep { /rdbms/ } @req_groups; | ||
my @other_groups = grep { !/rdbms/ } @req_groups; | ||
our (%dev_requires, %runtime_suggests); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One option would be to return a hash from the script and do something like
my %dev_requires = -f 'META.yml' ? () : (do './maint/Makefile.PL.include' or die $@);
in Makefile.PL
, but I'm not entirely sure I like that either.
web => 'https://github.com/dbsrgits/dbix-class-schema-loader', | ||
}, | ||
x_IRC => 'irc://irc.perl.org/#dbix-class', | ||
license => [ 'http://dev.perl.org/licenses/' ], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doesn't EUMM automatically generate this from the LICENSE => 'perl'
above?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not as far as I can determine?
Makefile.PL
Outdated
'File::Temp' => '0.16', | ||
'File::Path' => '2.07', | ||
}, | ||
test => {TESTS => 't/*.t t/*/*.t'}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to include t/*/*/*.t
, since the backcompat tests are two directories deep. There aren't actually any files matching t/*/*.t
, but I guess it doesn't hurt to include it for future-proofing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed. Counting is hard!
The CI is still failing but now only on |
3f935ac
to
47c8796
Compare
The Travis failures all seem to be due to dependencies failing to build or install, so not a blocker. I've adjusted things a bit and merged it as fb4432c, and pushed a dev release. |
What‘s the reason for this change? |
@abraxxa Moving off |
Also includes as discussed a release-test to check existence of opt-dep
.pod
, and that it's newer than the.pm
. The generating is done effectively atperl Makefile.PL
-time and should probably instead be a build-time thing.When I ran the Distar-enhanced
make test
, I got axt/whitespace.t
fail from at/var/...something.pm
. Probably needs agrep
on that but the modules don't seem to offer an "exclude" option.