summaryrefslogtreecommitdiff
path: root/IkiWiki
AgeCommit message (Collapse)Author
2009-09-10Add NetBSD-style 2-clause BSD license.Amitai Schlair
2009-09-10remove hook not used by cvsJoey Hess
2009-09-10formattingJoey Hess
2009-09-10minor simplificationJoey Hess
2009-09-10Merge commit 'schmonz/master' into cvsJoey Hess
2009-09-10Merge branch 'master' into cvsJoey Hess
2009-09-10clean up use of IkiWiki::ReceiveJoey Hess
Loading and use of IkiWiki::Receive can all be pushed into the git plugin, rather than scattered around. I had at first wanted to make a receive plugin and move it there, but a plugin was not a good fit; you don't want users to have to manually load it, and making the git plugin load the receive plugin at the right times would need more, and ugly code.
2009-09-10Catch up to the new genwrapper hook.Amitai Schlair
2009-09-10Merge branch 'master' of git://github.com/joeyh/ikiwikiAmitai Schlair
2009-09-10Add genwrapper hook, that can be used to add code into the C wrapper.Joey Hess
2009-09-10typoJoey Hess
2009-09-10Merge commit 'schmonz/master' into cvsJoey Hess
2009-09-10Merge branch 'master' into cvsJoey Hess
2009-09-10CVS operations generally need to be within CVS checkouts, so these chdir()Amitai Schlair
calls are warranted. They shouldn't modify the caller's working directory, though. Use File::chdir to keep the scope of the changes subroutine-local. The tests now pass without resetting the working directory.
2009-09-09Abstract out CVS's involvement in the wrapper:Amitai Schlair
* In Wrapper.pm, add a new hook "wrapperargcheck" to examine argc/argv and return success or failure. In the failure case, the wrapper terminates. * In cvs.pm, implement the new hook to return failure if a directory is being cvs added.
2009-09-09Merge branch 'master' of git://github.com/joeyh/ikiwikiAmitai Schlair
2009-09-08underlay: Also allow configuring additional directories to search for ↵Joey Hess
template files in.
2009-09-08Expand banned_users; it can now include PageSpecs, which allows banning by ↵Joey Hess
IP address.
2009-09-04Merge commit 'schmonz/master' into cvsJoey Hess
Conflicts: IkiWiki/Plugin/cvs.pm
2009-09-04It's STDOUT we have to shut up for cvs, and $savedout has to beAmitai Schlair
restored just so.
2009-09-04Stop using IPC::Cmd and String::ShellQuote, since quoting (andAmitai Schlair
having to quote, and the possible use of the shell) sucks. Stop passing args to cvs_runcvs() as an arrayref, since that also sucks (and was a sop to IPC::Cmd). Instead, use Joey's construction for temporarily redirecting stderr to /dev/null. Much much simpler and better. Works on my laptop with bozohttpd, now to test on the NetBSD wiki.
2009-09-02minor formattingJoey Hess
2009-09-02remove two plugins that are unrelated to cvsJoey Hess
2009-08-30whitespaceAmitai Schlair
2009-08-30Merge branch 'master' of git://github.com/joeyh/ikiwikiAmitai Schlair
2009-08-30On some systems the commit message gets quoted properly already. Don'tAmitai Schlair
requote in such cases, do quote in all others.
2009-08-30Revert "po: do not inject custom bestlink function when po_link_to eq default"Joey Hess
This reverts commit cdc3576c8d1efb2593cac2d9da3f2393a2afe26e. Conflicts: IkiWiki/Plugin/po.pm This change broke the test suite and is not strictly necessary.
2009-08-30Fix uninitialized value when editing a page being vivified from theAmitai Schlair
basewiki. Makes the filetype-testing logic more explicit anyway.
2009-08-30Merge branch 'master' of git://github.com/joeyh/ikiwikiAmitai Schlair
2009-08-30Only examine argv if the VCS is cvs.Amitai Schlair
2009-08-30Remove debug statement.Amitai Schlair
2009-08-30Knock off another to-do item: "Don't slurp the entire cvsps outputAmitai Schlair
into memory (!)."
2009-08-30Knock off a to-do item: "If the argument to cvs add smells like aAmitai Schlair
binary file, cvs add -kb it (for attachment support)."
2009-08-30The string to match might not be "New directory" exactly, so match thatAmitai Schlair
substring instead.
2009-08-29Remove getopt() hook (it's a dead end, unsafe to pass wrapper args toAmitai Schlair
ikiwiki). Crunch on-demand module loads into one-liners. Comment why cvsps output is getting read in its entirety and reversed.
2009-08-28teximg: Make TeX handle preventing unsafe things; remove insufficient blacklistJosh Triplett
TeX has configuration options that prevent unsafe things like shell escapes and insecure file reads/writes. Turn all of them on. teximg's regex-based blacklist does not suffice. For instance: [[!teximg code=""" \catcode`\%=0 %input{/etc/passwd} """]] Remove the blacklist, since the TeX configuration options seal off the underlying mechanisms more safely, and the blacklist blocks other TeX commands that can prove useful.
2009-08-28img: Don't generate new verison of image if it is scaled to be larger in ↵Joey Hess
either dimension. Although imagemagick handles even really large sizes sanely, using a page file, doing so would just waste time and disk space, since the browser can be told to resize it larger.
2009-08-28Merge commit 'intrigeri/po'Joey Hess
2009-08-28avoid clobbering origsub if checkconfig runs more than onceJoey Hess
checkconfig can run more than once in a single ikiwiki run if setup is building wrappers. That clobbered the origsub value for bestlink, leading to infinite recursion
2009-08-28<pedant>rename depends_exact to depends_simpleJoey Hess
It's not "exact" since case munging has to be done, and I think "simple" captures the optimisation better.</pedant> With apologies to smcv, who probably has to rebuild his wiki now.
2009-08-28Avoid duplicating debug message for building a page due to a dependencySimon McVittie
As per Joey's review
2009-08-28Force %depends_exact to lower case, fixing incorrect case-sensitivitySimon McVittie
2009-08-28po: fix link() pagespec when used on translation pagesintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-08-28Fix typo in dependency debug messageSimon McVittie
2009-08-28Add depends_exact: simplified dependency tracking for dependencies on a ↵Simon McVittie
single page Let E be the number of dependencies per page of the form "A depends on B and nothing else", let D be the number of other dependencies per page, let P be the total number of pages, and let C be the number of changed pages in a refresh. This patch should speed up a refresh from O(E*C*P + D*C*P) to O(C + E*P + D*C*P), assuming that hash lookups are O(1). In practice, plugins like inline and map produce a lot of these very simple dependencies, and my album plugin's combination of inline with a large number of pages causes it to suffer particularly badly. In testing on a wiki with about 7000 objects (3500 full pages, 3500 images), a full rebuild continued to take about 5:30, and a refresh after touching about 350 pages and 350 images reduced from 5:30 to 1:30. As with my previous optimizations, this change will result in downgrades not working correctly until the wiki is rebuilt.
2009-08-28inline: if using pagenames, don't add a dependency on "page1 or page2 or..."Simon McVittie
This is unnecessary and just slows us down (by a factor of 2, in the pessimal case where every page has an inline with pagenames); it's also not possible to optimize it into add_depends_exact calls.
2009-08-28po: better rootpage logic for inline's post formintrigeri
Set rootpage to the non-l10n'd rootpage parameter if it is set, else to the masterpage of the linking page. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-08-28Revert "po: keep masterpage as the rootpage for inline's post form"intrigeri
This reverts commit cf43ae5a1f5460a98cdd7acb36c0691b2eec988f, which actually only works when a rootpage parameter is set. A more complete fix will be written soon.
2009-08-28po: keep masterpage as the rootpage for inline's post formintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-08-28inline: moved rootpage logic to a functionintrigeri
The po plugin's injected bestlink must do something special when called by this exact part of inline's code. Signed-off-by: intrigeri <intrigeri@boum.org>