The "Ancestors" of an item are its parents, in the dependencies graph. It is the set of all items that have this item as a dependency. And then all items that have those as dependencies. And so on until items are found that aren't dependencies of anything (or until a loop is detected in the dependency graph).
The form of the ancestors display is similar to that for dependencies. In general, the displays are anchored at the root(s) of the graph. So the ancestry display is anchored at the ultimate parents of the item, and the dependencies display is anchored at the item itself.
Lines are of the form:
<serial number> <status> <indent> <subject>where:
- <serial number>
- is a link to the corresponding item;
- <status>
- is the item completion status, shown as empty if the item isn't completed;
- <indent>
- is indentation depicting the distance from the starting item; and thus is indented from the previous line if it's a dependency of the previous item;
- <subject>
- is the subject of the item.
When a subtree is found that has already been displayed, the children of the tree aren't displayed. Instead, the subject of the top of each duplicated tree has one of the following appended:
[0 children]
[1 child skipped]
[number_skipped children skipped]
Only the first iteration of a loop is displayed.
A simple example might be of the form:
and a slightly more complicated example would be:
NNNNN1 a starting point NNNNN2 done needed for NNNNN1 NNNNN3 done needed for NNNNN2
NNNNN1 a starting point NNNNN2 done needed for NNNNN1 NNNNN3 done needed for NNNNN1 NNNNN4 done needed for NNNNN3