X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDistar.pm;h=e4f2628aba51e7db9ab2b937672cefcf2b6ac183;hb=b04017628d92e6ff1a6886f8aa6e8a72511a77e5;hp=8e333200e423ff95691df4a519f870b59607f3c2;hpb=325f6231defb13059863d765130d33560fd4a5a6;p=p5sagit%2FDistar.git diff --git a/lib/Distar.pm b/lib/Distar.pm index 8e33320..e4f2628 100644 --- a/lib/Distar.pm +++ b/lib/Distar.pm @@ -78,29 +78,37 @@ sub run_preflight { "%i-%02i-%02i", (localtime)[5]+1900, (localtime)[4]+1, (localtime)[3] ); my @cached = grep /^\+/, `git diff --cached -U0`; - @cached > 0 or die "Please add:\n\n$ARGV[0] - $ymd\n\nto Changes and git add"; + @cached > 0 or die "Please add:\n\n$ARGV[0] - $ymd\n\nto Changes stage Changes (git add Changes)"; @cached == 2 or die "Pre-commit Changes not just Changes line"; - $cached[0] eq "+++ b/Changes\n" or die "Changes not changed"; + $cached[0] =~ /^\+\+\+ .\/Changes\n/ or die "Changes not changed"; $cached[1] eq "+$ARGV[0] - $ymd\n" or die "Changes new line should be: \n\n$ARGV[0] - $ymd\n "; } -sub MY::postamble { <<'END'; } +sub MY::postamble { + my ($self, %extra) = @_; + + my $post = <<'END'; preflight: perl -IDistar/lib -MDistar -erun_preflight $(VERSION) release: preflight $(MAKE) disttest rm -rf $(DISTVNAME) $(MAKE) $(DISTVNAME).tar$(SUFFIX) - cpan-upload $(DISTVNAME).tar$(SUFFIX) git commit -a -m "Release commit for $(VERSION)" git tag v$(VERSION) -m "release v$(VERSION)" - git push --tags - git push + cpan-upload $(DISTVNAME).tar$(SUFFIX) + git push origin --tags HEAD distdir: readmefile readmefile: create_distdir pod2text $(VERSION_FROM) >$(DISTVNAME)/README $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) ../Distar/helpers/add-readme-to-manifest END + if (open my $fh, '<', 'maint/Makefile.include') { + $post .= do { local $/; <$fh> }; + } + $post .= "\n" . join('', %extra) if keys %extra; + return $post; +} { no warnings 'redefine';