Bug#901758: diffoscope: leaves progress bar on terminal after completion
Paul Wise
pabs at debian.org
Mon Jun 18 03:05:55 BST 2018
Package: diffoscope
Version: 95
Severity: minor
diffoscope leaves a giant progress bar on the terminal after it
completes. It would be nice if the progress bar could disappear after
it has served its purpose. In case the progress bar code you use
doesn't support this, I've included code below from another project
that clears to the end of the line if the terminal supports that and
falls back to overwriting the line with spaces if it does not.
$ touch foo bar
$ diffoscope foo bar
|#####################################################################################################################################| 100% Time: 0:00:00
try:
from shutil import get_terminal_size
def get_columns():
return get_terminal_size().columns
except ImportError:
# Python 3.2 compatibility:
from fcntl import ioctl
from termios import TIOCGWINSZ
from struct import unpack
def get_columns():
try:
buf = ioctl(sys.stdout.fileno(), TIOCGWINSZ, ' ' * 4)
return unpack('hh', buf)[1]
except IOError:
return 80
if sys.stdout.isatty():
from curses import tigetstr, setupterm
setupterm()
erase_line = tigetstr('el')
def erase_to_eol_cr(size=0):
if erase_line:
sys.stdout.buffer.write(erase_line)
else:
width = get_columns()
print(' ' * (width - size), end='')
print(end='\r')
sys.stdout.flush()
-- System Information:
Debian Release: buster/sid
APT prefers testing-debug
APT policy: (900, 'testing-debug'), (900, 'testing'), (800, 'unstable-debug'), (800, 'unstable'), (790, 'buildd-unstable'), (700, 'experimental-debug'), (700, 'experimental'), (690, 'buildd-experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 4.16.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), LANGUAGE=en_AU:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages diffoscope depends on:
ii libpython3.6-stdlib 3.6.6~rc1-1
ii python3 3.6.5-3
ii python3-distro 1.0.1-2
ii python3-distutils 3.6.5-4
ii python3-libarchive-c 2.1-3.1
ii python3-magic 2:0.4.15-1
ii python3-pkg-resources 39.1.0-1
Versions of packages diffoscope recommends:
ii abootimg 0.6-1+b2
ii acl 2.2.52-3+b1
ii apktool 2.3.3-1
ii binutils-multiarch 2.30-21
ii bzip2 1.0.6-8.1
ii caca-utils 0.99.beta19-2+b3
ii colord 1.3.3-2
ii db-util 5.3.1
ii default-jdk [java-sdk] 2:1.10-67
ii default-jdk-headless 2:1.10-67
pn device-tree-compiler <none>
pn docx2txt <none>
ii e2fsprogs 1.44.2-1
ii enjarify 1:1.0.3-4
ii fontforge-extras 0.3-4
pn fp-utils <none>
ii genisoimage 9:1.1.11-3+b2
ii gettext 0.19.8.1-6+b1
ii ghc 8.0.2-11
ii ghostscript 9.22~dfsg-2.1
ii giflib-tools 5.1.4-3
ii gnumeric 1.12.39-1
ii gnupg 2.2.8-1
ii imagemagick 8:6.9.9.39+dfsg-1
ii imagemagick-6.q16 [imagemagick] 8:6.9.9.39+dfsg-1
ii jsbeautifier 1.6.4-7
pn libarchive-tools <none>
ii llvm 1:4.0-40
pn mono-utils <none>
pn odt2txt <none>
pn oggvideotools <none>
ii openjdk-10-jdk [java-sdk] 10.0.1+10-4
ii openssh-client 1:7.7p1-2
ii pdftk 2.02-4+b2
ii pgpdump 0.31-0.2
ii poppler-utils 0.63.0-2
pn procyon-decompiler <none>
ii python3-argcomplete 1.8.1-1
ii python3-binwalk 2.1.1-16
ii python3-debian 0.1.32
pn python3-defusedxml <none>
pn python3-guestfs <none>
ii python3-jsondiff 1.1.1-2
ii python3-progressbar 2.3-4
ii python3-pyxattr 0.6.0-2+b1
ii python3-tlsh 3.4.4+20151206-1+b3
pn r-base-core <none>
ii rpm2cpio 4.14.1+dfsg1-3
ii sng 1.1.0-1+b1
ii sqlite3 3.24.0-1
ii squashfs-tools 1:4.3-6
ii tcpdump 4.9.2-3
ii unzip 6.0-21
ii vim-common 2:8.0.1766-1
pn xmlutils <none>
ii xxd 2:8.0.1766-1
ii xz-utils 5.2.2-1.3
Versions of packages diffoscope suggests:
ii libjs-jquery 3.2.1-1
-- no debconf information
--
bye,
pabs
https://wiki.debian.org/PaulWise
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <http://alioth-lists.debian.net/pipermail/reproducible-builds/attachments/20180618/56608e46/attachment.sig>
More information about the Reproducible-builds
mailing list