tg: fix recursing with missing dependencies
authorAndrey Borzenkov <arvidjaar@gmail.com>
Sat, 19 Mar 2011 16:53:10 +0000 (19:53 +0300)
committerAndrey Borzenkov <arvidjaar@gmail.com>
Sat, 19 Mar 2011 16:53:10 +0000 (19:53 +0300)
commit756e66f475fe0ec68f46f54b792f1373311e7364
tree40a0be4d13f1748e9c70d5a333f313633a6ba0d0
parent47fb9060ad719c7f024ca77402c835abc9cca426
tg: fix recursing with missing dependencies

In the following dependency chain:

t/1 => t/2 => t/3

with missing initial t/1 no error is was returned when attempting
to update t/3, because t/2 was assumed to be external origin that
does not need update.

Extend recurse_deps() API to inform driver about missing dependency
by setting $_dep_missing before calling.

Use it in branch_needs_update() to indicate missing deps by emitting
additional '!' and forcing tg-update.sh to recurse into parent and
fail due to missing dep. All other drivers were extended to check
for $_dep_missing and silently return (that is what happened anyway).

Signed-off-by: Andrey Borzenkov <arvidjaar@gmail.com>
tg-export.sh
tg-push.sh
tg.sh