tg: avoid bogus missing status for solitary branches
commitb137d681228f32935a53f9806119928fce226210
authorKyle J. McKay <mackyle@gmail.com>
Wed, 21 Jun 2017 04:47:05 +0000 (20 21:47 -0700)
committerKyle J. McKay <mackyle@gmail.com>
Wed, 21 Jun 2017 04:47:05 +0000 (20 21:47 -0700)
treeb0ff02d021d3677ac7859ebc180dbecd99d0da67
parentb17498b1c73dce617adc547b5f85af362e84d057
tg: avoid bogus missing status for solitary branches

A single solitary TopGit branch that's not referred to by
any other TopGit branches and has no dependencies (either the
.topdeps file is empty, missing or only has annihilated branches
in it), will not show up in the generated dependency edge list
anywhere unless edges to self are requested.

If a branch does not appear in the list of dependency edges anywhere
the recursion algorithm considers it to be "missing" since it appears
to be actually missing.

Avoid this by requesting emission of self edges when generating
the input for the recursion phase.

Add some tests for this problem too.

Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
t/t4200-out-of-date.sh
tg.sh