diff options
author | Amitai Schlair <schmonz@magnetic-babysitter.(none)> | 2009-08-29 21:35:54 -0400 |
---|---|---|
committer | Amitai Schlair <schmonz@magnetic-babysitter.(none)> | 2009-08-29 21:35:54 -0400 |
commit | 6191f3fbb9e0189276f84e15b9582fbd352b7a9b (patch) | |
tree | 5475b8fd7e3aae1e14590c2c727fc9278584274e /IkiWiki | |
parent | 5da229aa51adcec27b109ebe2e696f7426cbd781 (diff) |
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.
Diffstat (limited to 'IkiWiki')
-rw-r--r-- | IkiWiki/Plugin/cvs.pm | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/IkiWiki/Plugin/cvs.pm b/IkiWiki/Plugin/cvs.pm index ac188d4a1..20b9f793a 100644 --- a/IkiWiki/Plugin/cvs.pm +++ b/IkiWiki/Plugin/cvs.pm @@ -6,7 +6,6 @@ use strict; use IkiWiki; sub import { - hook(type => "getopt", id => "cvs", call => \&getopt); hook(type => "checkconfig", id => "cvs", call => \&checkconfig); hook(type => "getsetup", id => "cvs", call => \&getsetup); hook(type => "rcs", id => "rcs_update", call => \&rcs_update); @@ -21,13 +20,6 @@ sub import { 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 () { if (! defined $config{cvspath}) { $config{cvspath}="ikiwiki"; @@ -111,9 +103,7 @@ sub cvs_runcvs(@) { my ($cmd) = @_; unshift @$cmd, 'cvs', '-Q'; - eval q{ - use IPC::Cmd; - }; + eval q{use IPC::Cmd}; error($@) if $@; chdir $config{srcdir} || error("Cannot chdir to $config{srcdir}: $!"); @@ -132,9 +122,7 @@ sub cvs_runcvs(@) { sub cvs_shquote_commit ($) { my $message = shift; - eval q{ - use String::ShellQuote; - }; + eval q{use String::ShellQuote}; error($@) if $@; return shell_quote(IkiWiki::possibly_foolish_untaint($message)); @@ -274,13 +262,12 @@ sub rcs_recentchanges($) { return unless cvs_is_controlling; - eval q{ - use Date::Parse; - }; + eval q{use Date::Parse}; error($@) if $@; 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"; my @spsvc = reverse <CVSPS>; # is this great? no it is not close CVSPS || error "couldn't close cvsps output: $!\n"; |