Change -x/-v to only affect top-level targets by default, not recursively.

Because redo targets are nicely isolated (unlike make targets), you
usually only want to debug one of them at a time.  Using -x could be
confusing, because you might end up with a dump of output from a
dependency you're not interested in.

Now, by default we'll disable -x when recursing into sub-targets, so
you only see the trace from the targets you are actually trying to
debug.  To get recursive behaviour, specify -x twice, eg. -xx.

Same idea with -v.
This commit is contained in:
Avery Pennarun 2019-03-02 18:46:00 -05:00
commit b196315222
4 changed files with 15 additions and 7 deletions

View file

@ -32,8 +32,8 @@ class Env(object):
self.DEBUG_LOCKS = _get_bool('REDO_DEBUG_LOCKS', '')
self.DEBUG_PIDS = _get_bool('REDO_DEBUG_PIDS', '')
self.LOCKS_BROKEN = _get_bool('REDO_LOCKS_BROKEN', '')
self.VERBOSE = _get_bool('REDO_VERBOSE', '')
self.XTRACE = _get_bool('REDO_XTRACE', '')
self.VERBOSE = _get_int('REDO_VERBOSE', '')
self.XTRACE = _get_int('REDO_XTRACE', '')
self.KEEP_GOING = _get_bool('REDO_KEEP_GOING', '')
self.LOG = _get_int('REDO_LOG', '1')
self.LOG_INODE = _get('REDO_LOG_INODE', '')