summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-10-04rework dependency types codeJoey Hess
Simplify, change default content depends number to 1, change interface to make more sense.
2009-10-04updateJoey Hess
2009-10-04Merge branch 'dependency-types' into transitive-dependenciesJoey Hess
Conflicts: IkiWiki/Render.pm
2009-10-04Merge branch 'master' into transitive-dependenciesJoey Hess
2009-10-04Merge branch 'master' into dependency-typesJoey Hess
2009-10-04document effect of contentless dependencies on sidebar efficiencyJoey Hess
2009-10-04Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.infoJoey Hess
2009-10-04postsparkline and progress: also contentless dependenciesJoey Hess
2009-10-04meta redir dependency is contentlessJoey Hess
2009-10-04listdirectives: contentless dependencyJoey Hess
Another one that probably doesn't matter, but for completness.
2009-10-04not a contentless dependencyJoey Hess
needs link info
2009-10-04edittemplate: contentless dependencyJoey Hess
This one is unlikely to matter much, but yeah, it's contentless.
2009-10-04calendar: all dependencies are contentlessJoey Hess
2009-10-04inline: Use a contentless dependency in quick mode.Joey Hess
2009-10-04expand the set of things that can be matched contentlessJoey Hess
2009-10-04updateJoey Hess
2009-10-04map: Use a contentless dependency unless show= is specified.Joey Hess
This makes simple maps efficient enough that they can be used on sidebars!
2009-10-04optimise add_depends for simple pagespecsJoey Hess
We don't need to check if the pagespec is contentless; all simple ones are.
2009-10-04detect pagespecs that require content dependenciesJoey Hess
When adding a contentless dependency, the pagespec also needs to be one that does not look at any page content information. As a first approximation of that, only allow glob-based pagespecs in contentless dependencies. While there are probably a few other types of pagespecs that can match contentless, this will work for most of them.
2009-10-04Updated pproc-indent by catching only indent at beginning of linehttp://kaizer.se/
2009-10-03responseJoey Hess
2009-10-03did a scratch implementation of dependancy types, but found it more complexJoey Hess
2009-10-03clarifyJoey Hess
2009-10-03orphans and brokenlinks cannot use contentless dependencyJoey Hess
Tried a contentless dep and it does not work; changes to links in pages are not noticed. Drat.
2009-10-03implement support for DEPEND_EXISTSJoey Hess
Preliminary support, anyway. If a dependency only includes DEPEND_EXISTS, then only changes that involved adding or deleting a page can trigger it. This is complicated by internal pages, since the code did not previously differentiate between add, delete, and change of internal pages. Now it tracks change separately from add+delete, so DEPEND_EXISTS pagespecs that actually match internal pages (which will probably be quite rare in practice) should work.
2009-10-03updateJoey Hess
2009-10-03document add_depends dependency type interfaceJoey Hess
2009-10-03set dependency hash value properly for new dependency typesJoey Hess
Just "1" won't cut it anymore; we need to list all the dependency types.
2009-10-03pagecount: Use contentless dependencyJoey Hess
This will avoid lots of unnecessary updates of pages using the pagecount directive. Yay!
2009-10-03add dependency type parameters to add_dependsJoey Hess
Dependency types are represented by bits in the values of the %depends and %depends_simple hashes. Change the dependslist array saved to the index to a depends hash. depends_simple is also converted from an array to a hash. Note that the depends field used to be a string, and we still have compat code to handle upgrades from that, as well as from the arrays. I didn't use ikiwiki-transition because I don't want ikiwiki to break if users forget to run it; also we're going to recommend a full rebuild on upgrade to this version to get the improved dependency handling. So this compat code can be removed or moved to ikiwiki-transition later.
2009-10-03Fix a bug that could lead to duplicate links being recorded for tags.Joey Hess
Here I was bitten by perl's aliasing of foreach variables to the loop array contents, and match_link accidentially changed the contents of %links. In Jon's testcase, a tag added an absolute link, which was made relative by the above bug, and then the link was added again in preprocess, and turned into a duplicate.
2009-10-03do not need to qualify %linksJoey Hess
2009-10-03responsehttp://www.cse.unsw.edu.au/~willu/
2009-10-02consistency with edittemplate?Joey Hess
2009-10-02combine with pagetemplate?Joey Hess
2009-10-02fix wording here tooJoey Hess
2009-10-02Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.infoJoey Hess
2009-10-02improve wordingJoey Hess
2009-10-02Add reference to new pluginhttp://www.cse.unsw.edu.au/~willu/
2009-10-02(no commit message)http://jmtd.livejournal.com/
2009-10-02wishlist/todo item: disable/enable directives by pagespechttp://jmtd.livejournal.com/
2009-10-02+bugs/ backlinks onhover thing can go weirdhttp://jmtd.livejournal.com/
2009-10-02responsehttp://jmtd.livejournal.com/
2009-10-02fixJoey Hess
2009-10-02split off todo item for multiple dependency typesJoey Hess
2009-10-02split out dependency type issue into its own todoJoey Hess
2009-10-02mention loop optimisationJoey Hess
2009-10-02fix branch nameJoey Hess
2009-10-02implemented one fix in transitive-dependencies branch, but not really happy ↵Joey Hess
with it
2009-10-02minor optimisationJoey Hess
As soon as a change happens, we know we will need to rescan all dependencies from the start, so bail out of the current scan partway to avoid doing redundant work. Only problem with this is that ikiwiki sometimes ends up printing out dependencies that, while correct, are not obvious. Before: building B, which depends on A building C, which depends on A building D, which depends on A After: building B, which depends on A building C, which depends on B building D, which depends on C