[PATCH 2 of 6 v2] procutil: move assignments closer to reassignments

Manuel Jacob me at manueljacob.de
Mon Jul 6 12:03:14 UTC 2020


# HG changeset patch
# User Manuel Jacob <me at manueljacob.de>
# Date 1593854158 -7200
#      Sat Jul 04 11:15:58 2020 +0200
# Node ID 271329a28ae25a0301128c90c526c67b05346f9f
# Parent  2178c53039ac0366469dd3f2d5eafecb9c34695f
# EXP-Topic stdio
procutil: move assignments closer to reassignments

Doing reassignments is an anti-pattern IMHO, but I see how it makes sense here.
When first looking at this code after jumping here with ctags, I missed the
fact that stdout was reassigned. To make the code clearer, the assignments
should be as close as possible to the reassignments.

diff --git a/mercurial/utils/procutil.py b/mercurial/utils/procutil.py
--- a/mercurial/utils/procutil.py
+++ b/mercurial/utils/procutil.py
@@ -37,10 +37,6 @@
 
 osutil = policy.importmod('osutil')
 
-stderr = pycompat.stderr
-stdin = pycompat.stdin
-stdout = pycompat.stdout
-
 
 def isatty(fp):
     try:
@@ -79,6 +75,10 @@
     return LineBufferedWrapper(stream)
 
 
+stderr = pycompat.stderr
+stdin = pycompat.stdin
+stdout = pycompat.stdout
+
 # glibc determines buffering on first write to stdout - if we replace a TTY
 # destined stdout with a pipe destined stdout (e.g. pager), we want line
 # buffering (or unbuffered, on Windows)




More information about the Mercurial-devel mailing list