util: flush stderr explicitly after using warnings.warn()
authorPulkit Goyal <7895pulkit@gmail.com>
Fri, 19 Jun 2020 20:42:14 +0530
changeset 44989 7af5c1f5b3a0
parent 44988 fa151f7af275
child 44990 62bdb288c449
util: flush stderr explicitly after using warnings.warn() Due to some unknown reasons, when using chg with python3, the warnings.warn() output is not flushed. Fixes test-devel-warnings.t on py3 with chg.
mercurial/util.py
--- a/mercurial/util.py	Thu Jun 18 22:23:22 2020 +0200
+++ b/mercurial/util.py	Fri Jun 19 20:42:14 2020 +0530
@@ -204,6 +204,8 @@
             b" update your code.)"
         ) % version
         warnings.warn(pycompat.sysstr(msg), DeprecationWarning, stacklevel + 1)
+        # on python 3 with chg, we will need to explicitly flush the output
+        sys.stderr.flush()
 
 
 DIGESTS = {