Remove getopt() hook (it's a dead end, unsafe to pass wrapper args to
ikiwiki). Crunch on-demand module loads into one-liners. Comment why cvsps output is getting read in its entirety and reversed.master
parent
5da229aa51
commit
6191f3fbb9
|
@ -6,7 +6,6 @@ use strict;
|
||||||
use IkiWiki;
|
use IkiWiki;
|
||||||
|
|
||||||
sub import {
|
sub import {
|
||||||
hook(type => "getopt", id => "cvs", call => \&getopt);
|
|
||||||
hook(type => "checkconfig", id => "cvs", call => \&checkconfig);
|
hook(type => "checkconfig", id => "cvs", call => \&checkconfig);
|
||||||
hook(type => "getsetup", id => "cvs", call => \&getsetup);
|
hook(type => "getsetup", id => "cvs", call => \&getsetup);
|
||||||
hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
|
hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
|
||||||
|
@ -21,13 +20,6 @@ sub import {
|
||||||
hook(type => "rcs", id => "rcs_getctime", call => \&rcs_getctime);
|
hook(type => "rcs", id => "rcs_getctime", call => \&rcs_getctime);
|
||||||
}
|
}
|
||||||
|
|
||||||
sub getopt () {
|
|
||||||
# "cvs add dir" acts immediately on the repository.
|
|
||||||
# post-commit gets confused by this and doesn't need to act on it.
|
|
||||||
# If that's why we're here, terminate the process.
|
|
||||||
((grep /New directory/, @ARGV) > 0) && exit 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
sub checkconfig () {
|
sub checkconfig () {
|
||||||
if (! defined $config{cvspath}) {
|
if (! defined $config{cvspath}) {
|
||||||
$config{cvspath}="ikiwiki";
|
$config{cvspath}="ikiwiki";
|
||||||
|
@ -111,9 +103,7 @@ sub cvs_runcvs(@) {
|
||||||
my ($cmd) = @_;
|
my ($cmd) = @_;
|
||||||
unshift @$cmd, 'cvs', '-Q';
|
unshift @$cmd, 'cvs', '-Q';
|
||||||
|
|
||||||
eval q{
|
eval q{use IPC::Cmd};
|
||||||
use IPC::Cmd;
|
|
||||||
};
|
|
||||||
error($@) if $@;
|
error($@) if $@;
|
||||||
|
|
||||||
chdir $config{srcdir} || error("Cannot chdir to $config{srcdir}: $!");
|
chdir $config{srcdir} || error("Cannot chdir to $config{srcdir}: $!");
|
||||||
|
@ -132,9 +122,7 @@ sub cvs_runcvs(@) {
|
||||||
sub cvs_shquote_commit ($) {
|
sub cvs_shquote_commit ($) {
|
||||||
my $message = shift;
|
my $message = shift;
|
||||||
|
|
||||||
eval q{
|
eval q{use String::ShellQuote};
|
||||||
use String::ShellQuote;
|
|
||||||
};
|
|
||||||
error($@) if $@;
|
error($@) if $@;
|
||||||
|
|
||||||
return shell_quote(IkiWiki::possibly_foolish_untaint($message));
|
return shell_quote(IkiWiki::possibly_foolish_untaint($message));
|
||||||
|
@ -274,13 +262,12 @@ sub rcs_recentchanges($) {
|
||||||
|
|
||||||
return unless cvs_is_controlling;
|
return unless cvs_is_controlling;
|
||||||
|
|
||||||
eval q{
|
eval q{use Date::Parse};
|
||||||
use Date::Parse;
|
|
||||||
};
|
|
||||||
error($@) if $@;
|
error($@) if $@;
|
||||||
|
|
||||||
chdir $config{srcdir} || error("Cannot chdir to $config{srcdir}: $!");
|
chdir $config{srcdir} || error("Cannot chdir to $config{srcdir}: $!");
|
||||||
|
|
||||||
|
# there's no option to get the last N changesets, so read backwards
|
||||||
open CVSPS, "env TZ=UTC cvsps -q --cvs-direct -z 30 -x |" || error "couldn't get cvsps output: $!\n";
|
open CVSPS, "env TZ=UTC cvsps -q --cvs-direct -z 30 -x |" || error "couldn't get cvsps output: $!\n";
|
||||||
my @spsvc = reverse <CVSPS>; # is this great? no it is not
|
my @spsvc = reverse <CVSPS>; # is this great? no it is not
|
||||||
close CVSPS || error "couldn't close cvsps output: $!\n";
|
close CVSPS || error "couldn't close cvsps output: $!\n";
|
||||||
|
|
Loading…
Reference in New Issue