summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-10-08Optimize away most expensive file prune calls, when refreshingJoey Hess
Benchmarking refresh of a a wiki with 25 thousand pages showed file_pruned() using most of the time. But, when refreshing, ikiwiki already knows about nearly all the files. So we can skip calling file_pruned() for those it knows about. While tricky to do, this sped up a refresh (that otherwise does no work) by 10-50%.
2009-10-08use_pagespec: do not fail with error when unable to match, unless it failsJoey Hess
with an ErrorReason
2009-10-08pagecount: switched to use_pagespecJoey Hess
2009-10-08inline: switch to use_pagespecJoey Hess
Taking advantage of every single one of its features, of course. Even had to add one more..
2009-10-08add sorting pageJoey Hess
2009-10-08updateJoey Hess
2009-10-08map: switch to use_pagespecJoey Hess
2009-10-08add use_pagespec and deptype functionsJoey Hess
2009-10-08change how dependency types are specified to add_dependsJoey Hess
Also, this fixes 2 bugs in dependency info.
2009-10-08found a way to get false positive influencesJoey Hess
2009-10-08Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.infoJoey Hess
2009-10-08updateJoey Hess
2009-10-08fix handling of influences of pagespecs that fail to matchJoey Hess
If a pagespec fails to match, I had been throwing the influences away, but that is not right. Consider `backlink(foo)`, where foo does not exist. It still needs to be added as an influence, because if it is created, it will influence the pagespec to match. But with that fix, `link(bar)` had as influences all pages, whether they link to bar or not. Which is not necessary, because modifiying a page to add a link to bar will directly cause the pagespec to match. So, in match_link (and all the match_* functions for page metadata), only return an influence if the match succeeds. match_backlink had been implemented as the inverse of match_link, but that is no longer completly true. While match_link does not return an influence on failure, match_backlink does. match_created_before/after also return the influence on failure, this way if created_after(foo) currently fails because foo does not exist, it will still update the page with the pagespec if foo is created.
2009-10-08(no commit message)http://shoorick.livejournal.com/
2009-10-08add cpanrthttp://www.larted.org.uk/~dom/
2009-10-08Tweakshttp://www.cse.unsw.edu.au/~willu/
2009-10-08(no commit message)http://smcv.pseudorandom.co.uk/
2009-10-08updateJoey Hess
2009-10-08Questions...http://www.cse.unsw.edu.au/~willu/
2009-10-07bugfixJoey Hess
2009-10-07remove explicit addition of dependencies for displayed pagesJoey Hess
that hack is not needed, thanks to pagespec influences calculation
2009-10-07add type info to influence informationJoey Hess
2009-10-07Merge branch 'master' into dependency-typesJoey Hess
2009-10-07updateJoey Hess
2009-10-07convert add_depends to use influencesJoey Hess
No more horrible special-case pagespec parsing. OTOH, matching over all pages to determine influences is a lot of work.
2009-10-07influences calculation implementedJoey Hess
2009-10-07more influences testsJoey Hess
2009-10-07add influence info to match_*Joey Hess
Also update docs, test suite.
2009-10-07Merge branch 'master' into dependency-typesJoey Hess
2009-10-07make success and failreason objects carry an influences hashJoey Hess
The hash will be used used to record a set of pages that influenced the result of a pagespec match. The influences are merged together when boolean and/or are encountered in a pagespec. That means using a non-short-circuiting OR operator. And so I use & and | when translating pagespecs, since those bitwise operators can be overloaded. ("and" and "or" cannot, apparently).
2009-10-07mention that pagespec_match returns an overloaded valueJoey Hess
2009-10-07Merge branch 'master' into dependency-typesJoey Hess
2009-10-07a theory of pagespec influence lists, for Will's perusalJoey Hess
2009-10-07(no commit message)Jogo
2009-10-07closeJoey Hess
2009-10-07Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.infoJoey Hess
2009-10-07problem with explicit, presence dependenciesJoey Hess
2009-10-07remove test case for closed bugJoey Hess
2009-10-07fix backlink new change detection codeJoey Hess
2009-10-07limit to discussion pages of blog posts, not whole wikiJoey Hess
2009-10-07Make it obvious for the reader of the rendered page that the debbug shortcut ↵Thomas Schwinge
links to Debian bug reports.
2009-10-07Use %S instead of %s for the debbug shortcut, so that things like [[!debbug ↵Thomas Schwinge
522689#38]] work as expected.
2009-10-07Merge branch 'master' into dependency-typesJoey Hess
2009-10-07thoughtsJoey Hess
2009-10-07Merge branch 'master' into dependency-typesJoey Hess
2009-10-07Comments (maybe not so helpful - sorry)http://www.cse.unsw.edu.au/~willu/
2009-10-06Merge branch 'master' into dependency-typesJoey Hess
Conflicts: doc/todo/dependency_types.mdwn
2009-10-06updateJoey Hess
2009-10-06notes on removal problemJoey Hess
2009-10-06linkmap, pagestats: avoid using %links to get a list of pagesJoey Hess
When a page is deleted, it is removed from %pagesources, but not from %links. So use the former.