summaryrefslogtreecommitdiffstats
path: root/debian/patches/debian/0004-quiet-stdout.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/debian/0004-quiet-stdout.patch')
-rw-r--r--debian/patches/debian/0004-quiet-stdout.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/debian/patches/debian/0004-quiet-stdout.patch b/debian/patches/debian/0004-quiet-stdout.patch
new file mode 100644
index 0000000..cf36463
--- /dev/null
+++ b/debian/patches/debian/0004-quiet-stdout.patch
@@ -0,0 +1,21 @@
+Author: Carl Suster <carl@contraflo.ws>
+Description: Avoid writing bytes to stdout
+ In Python 3, bytes should be written to the underlying buffer object
+ rather than directly to stdout. This was causing legitimate test
+ failures.
+
+diff -Naurp terminaltables.orig/terminaltables/terminal_io.py terminaltables/terminaltables/terminal_io.py
+--- terminaltables.orig/terminaltables/terminal_io.py
++++ terminaltables/terminaltables/terminal_io.py
+@@ -94,5 +94,10 @@ def set_terminal_title(title, kernel32=N
+ return kernel32.SetConsoleTitleW(title) != 0
+
+ # Linux/OSX.
+- sys.stdout.write(b'\033]0;' + title_bytes + b'\007')
++ set_title = b'\033]0;' + title_bytes + b'\007'
++ if hasattr(sys.stdout, 'buffer'):
++ sys.stdout.buffer.write(set_title)
++ else:
++ text = set_title.decode(sys.stdout.encoding, 'strict')
++ sys.stdout.write(text)
+ return True