[elbe-devel] [PATCH v2 43/66] shellhelper: Fix Pylint

Olivier Dion dion at linutronix.de
Fri Jun 5 19:07:07 CEST 2020


22:4:   W0231: (super-init-not-called)
132:0:  W0102: (dangerous-default-value)
146:12: W0612: (unused-variable)
15:0:   C0411: (wrong-import-order)

Signed-off-by: Olivier Dion <dion at linutronix.de>
---
 elbepack/shellhelper.py | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/elbepack/shellhelper.py b/elbepack/shellhelper.py
index 203b5f4c..b317945f 100644
--- a/elbepack/shellhelper.py
+++ b/elbepack/shellhelper.py
@@ -10,16 +10,18 @@ import logging
 
 from subprocess import Popen, PIPE, STDOUT, call
 
-from elbepack.log import async_logging
-
 from io import TextIOWrapper, BytesIO
 
+from elbepack.log import async_logging
+
 log = logging.getLogger("log")
 soap = logging.getLogger("soap")
 
 
 class CommandError(Exception):
+
     def __init__(self, cmd, returncode):
+        super(CommandError, self).__init__(cmd, returncode)
         self.returncode = returncode
         self.cmd = cmd
 
@@ -129,9 +131,14 @@ def chroot(directory, cmd, env_add=None, **kwargs):
     chcmd = 'chroot %s %s' % (directory, cmd)
     do(chcmd, env_add=new_env, **kwargs)
 
-def get_command_out(cmd, stdin=None, allow_fail=False, env_add={}):
+# env_add is read-only; there's no danger
+# pylint: disable=dangerous-default-value
+def get_command_out(cmd, stdin=None, allow_fail=False, env_add=None):
+
     new_env = os.environ.copy()
-    new_env.update(env_add)
+
+    if env_add:
+        new_env.update(env_add)
 
     logging.info(cmd, extra={"context":"[CMD] "})
 
@@ -143,7 +150,7 @@ def get_command_out(cmd, stdin=None, allow_fail=False, env_add={}):
         p = Popen(cmd, shell=True, stdin=PIPE, stdout=w, stderr=STDOUT, env=new_env)
 
     async_logging(r, w, soap, log)
-    stdout, stderr = p.communicate(input=stdin)
+    stdout, _ = p.communicate(input=stdin)
 
     if p.returncode and not allow_fail:
         raise CommandError(cmd, p.returncode)
-- 
2.27.0




More information about the elbe-devel mailing list