sigpipe-remote: verify the script is IO are unbuffered
We don't want to get stuck anywhere by buffers.
Differential Revision: https://phab.mercurial-scm.org/D11086
--- a/tests/testlib/sigpipe-remote.py Sun Jul 11 23:08:00 2021 +0200
+++ b/tests/testlib/sigpipe-remote.py Mon Jul 12 03:29:21 2021 +0200
@@ -1,6 +1,7 @@
#!/usr/bin/env python3
from __future__ import print_function
+import io
import os
import subprocess
import sys
@@ -9,6 +10,10 @@
# we cannot use mercurial.testing as long as python2 is not dropped as the test will only install the mercurial module for python2 in python2 run
+if isinstance(sys.stdout.buffer, io.BufferedWriter):
+ print('SIGPIPE-HELPER: script need unbuffered output', file=sys.stderr)
+ sys.exit(255)
+
DEBUG_FILE = os.environ.get('SIGPIPE_REMOTE_DEBUG_FILE')
if DEBUG_FILE is None:
debug_stream = sys.stderr.buffer