Control: tag -1 patch On Sat, Mar 17, 2018 at 02:43:15PM -0700, Russ Allbery wrote: > dput-ng throws an exception when reporting the output from a > post_upload_command and does not show the output. The exception is: > > Traceback (most recent call last): > File "/usr/bin/dput", line 124, in <module> > upload_package(changes, args) > File "/usr/lib/python3/dist-packages/dput/uploader.py", line 352, in > invoke_dput > logger.warning("No hooks defined in the profile. " > File "/usr/lib/python3.6/contextlib.py", line 88, in __exit__ > next(self.gen) > File "/usr/lib/python3/dist-packages/dput/uploader.py", line 175, in > uploader > obj._post_hook() > File "/usr/lib/python3/dist-packages/dput/uploader.py", line 68, in > _post_hook > self._run_hook("post_upload_command") > File "/usr/lib/python3/dist-packages/dput/uploader.py", line 86, in > _run_hook > sys.stdout.write(output) # XXX: Fixme > TypeError: write() argument must be str, not bytes > > Looks like a Python 2 to Python 3 unicode handling issue?
I believe so, yes. Russ, could you please double check this (currently untested) patch solves the issue for you? diff --git a/dput/uploader.py b/dput/uploader.py index 19cb7f1..3c5df71 100644 --- a/dput/uploader.py +++ b/dput/uploader.py @@ -84,6 +84,7 @@ class AbstractUploader(object): return sys.stdout.write(output) # XXX: Fixme + sys.stdout.flush() if ret != 0: raise DputError( "Command `%s' returned an error: %s [err=%d]" % ( diff --git a/dput/util.py b/dput/util.py index 6275a5b..6d42edf 100644 --- a/dput/util.py +++ b/dput/util.py @@ -96,6 +96,8 @@ def run_command(command): logger.error("Could not execute %s: %s" % (" ".join(command), e)) return (None, None, -1) (output, stderr) = pipe.communicate() + output = output.decode('utf-8', errors='replace') + stderr = stderr.decode('utf-8', errors='replace') #if pipe.returncode != 0: # error("Command %s returned failure: %s" % (" ".join(command), stderr)) return (output, stderr, pipe.returncode) -- regards, Mattia Rizzolo GPG Key: 66AE 2B4A FCCF 3F52 DA18 4D18 4B04 3FCD B944 4540 .''`. more about me: https://mapreri.org : :' : Launchpad user: https://launchpad.net/~mapreri `. `'` Debian QA page: https://qa.debian.org/developer.php?login=mattia `-
signature.asc
Description: PGP signature