]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/todo/dependency_types.mdwn
add_depends: optimise influence calculation
[git.ikiwiki.info.git] / doc / todo / dependency_types.mdwn
index 56153239f5cc1462a235c5abdbddc94a715fda3f..d9e68841d119bdba305da6d25f9304a2022ddf7f 100644 (file)
@@ -278,6 +278,7 @@ sigh.
   that the page links to, which is just what link dependencies are
   triggered on.
 
+[[done]]
 ----
 
 ### the removal problem
@@ -520,15 +521,19 @@ ANDed with another object, drops their influences. (But when ORed, combines
 them.) Fixes the above, but does it always work?
 
 "(bugs/* or link(patch)) and backlink(index)" =>
-`( HardFailReason() | SuccessReason(patch) ) & SuccessReason(index)`` =>
-`SuccessReason(patch) & SuccessReason(index)` =>
-SuccessReason(patch, index) => right
+`( HardFailReason() | SuccessReason(page) ) & SuccessReason(index)`` =>
+`SuccessReason(page & SuccessReason(index)` =>
+SuccessReason(page, index) => right
 
 "(bugs/* and link(patch)) or backlink(index)" =>
-`( HardFailReason() & SuccessReason(patch) ) | SuccessReason(index)`` =>
+`( HardFailReason() & SuccessReason(page) ) | SuccessReason(index)`` =>
 `HardFailReason() | SuccessReason(index)` =>
 `SuccessReason(index)` => right
 
+"!bugs/* and link(patch)" =>
+`HardFailReason() | SuccessReason(bugs/foo)` =>  
+`HardFailReason()` => right
+
 #### High-level Calculation and Storage
 
 Naively calculating the full influence list for a pagespec requires trying