equery changes its output by isatty()
I've got confused when trying to see output of equery depgraph
.
It turns off verbose
flag if its output piped to another process.
When executing it without piping output, the output is formatted as tree-view and contains informations regarding USE flags.
$ equery depgraph xen-tools-4.3.1-r5 * Searching for xen-tools4.3.1-r5 ... * dependency graph for app-emulation/xen-tools-4.3.1-r5 `-- app-emulation/xen-tools-4.3.1-r5 [missing keyword] `-- dev-libs/lzo-2.06 (dev-libs/lzo) x86 `-- dev-libs/glib-2.38.2-r1 (dev-libs/glib) x86 `-- dev-libs/yajl-2.0.3 (dev-libs/yajl) x86 `-- dev-libs/libgcrypt-1.5.3 (dev-libs/libgcrypt) x86 `-- dev-python/lxml-3.3.0 (dev-python/lxml) x86 [python_targets_python2_6(-)? python_targets_python2_7(-)? python_single_target_python2_6(+)? python_single_target_python2_7(+)?] `-- dev-python/pypam-0.5.0-r2 (dev-python/pypam) x86 [python_targets_python2_6(-)? python_targets_python2_7(-)? python_single_target_python2_6(+)? python_single_target_python2_7(+)?] ...
But when executing it with piping output, the output is flattened and less informations.
$ equery depgraph xen-tools-4.3.1-r5 | head app-emulation/xen-tools-4.3.1-r5: [ 0] app-emulation/xen-tools-4.3.1-r5 [ 1] dev-libs/lzo-2.06 [ 1] dev-libs/glib-2.38.2-r1 [ 1] dev-libs/yajl-2.0.3 [ 1] dev-libs/libgcrypt-1.5.3 [ 1] dev-python/lxml-3.3.0 [ 1] dev-python/pypam-0.5.0-r2 [ 1] sys-libs/zlib-1.2.8-r1
You can see the actual impl at here.
I don't understand why they doing this kind of switcing ...