Mercurial > hg
view tests/filtertraceback.py @ 45212:41021660baa1 stable
tests: glob 'mercurial.error' in test-phases.t
On python 2 with chg, `mercurial.error` is omitted while printing error. On
other cases it's there in error message.
I did tried to understand what might be the cause was unable to find one on
quick skim through the code.
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Fri, 24 Jul 2020 00:50:57 +0530 |
parents | d359f0d1a3d3 |
children | c102b704edb5 |
line wrap: on
line source
#!/usr/bin/env python # Filters traceback lines from stdin. from __future__ import absolute_import, print_function import io import sys if sys.version_info[0] >= 3: # Prevent \r from being inserted on Windows. sys.stdout = io.TextIOWrapper( sys.stdout.buffer, sys.stdout.encoding, sys.stdout.errors, newline="\n", line_buffering=sys.stdout.line_buffering, ) state = 'none' for line in sys.stdin: if state == 'none': if line.startswith('Traceback '): state = 'tb' elif state == 'tb': if line.startswith(' File '): state = 'file' continue elif not line.startswith(' '): state = 'none' elif state == 'file': # Ignore lines after " File " state = 'tb' continue print(line, end='')