diff options
| author | Ayman Bagabas <[email protected]> | 2019-10-01 20:56:16 -0400 | 
|---|---|---|
| committer | skullydazed <[email protected]> | 2019-10-03 10:27:20 -0700 | 
| commit | 9067dc817aefb7fe43d23a995604555642c6c897 (patch) | |
| tree | 9bc96c17e42cd60695988fc7d022ebbb6aff133d /lib/python/qmk/cli/doctor.py | |
| parent | afb93b7f481a46e3980905e635d5a1d45a0ad678 (diff) | |
| download | qmk_firmware-9067dc817aefb7fe43d23a995604555642c6c897.tar.gz qmk_firmware-9067dc817aefb7fe43d23a995604555642c6c897.zip | |
Fix qmk doctor 'bytes-like object is required' on linux0.7.30
This fixes the following issue related to encoding on linux systems. Add
`universal_newlines=True` to subprocess.
<class 'TypeError'>
☒ a bytes-like object is required, not 'str'
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/milc.py", line 564, in __call__
    return self.__call__()
  File "/usr/local/lib/python3.7/site-packages/milc.py", line 569, in __call__
    return self._entrypoint(self)
  File "$HOME/qmk_firmware/lib/python/qmk/cli/doctor.py", line 56, in doctor
    for line in mm_check.stdout.split('\n'):
TypeError: a bytes-like object is required, not 'str'
Diffstat (limited to 'lib/python/qmk/cli/doctor.py')
| -rwxr-xr-x | lib/python/qmk/cli/doctor.py | 2 | 
1 files changed, 1 insertions, 1 deletions
| diff --git a/lib/python/qmk/cli/doctor.py b/lib/python/qmk/cli/doctor.py index 3474422a89..2b6a03e443 100755 --- a/lib/python/qmk/cli/doctor.py +++ b/lib/python/qmk/cli/doctor.py @@ -50,7 +50,7 @@ def doctor(cli):      elif OS == "Linux":          cli.log.info("Detected {fg_cyan}Linux.")          if shutil.which('systemctl'): -            mm_check = subprocess.run(['systemctl', 'list-unit-files'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, timeout=10) +            mm_check = subprocess.run(['systemctl', 'list-unit-files'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, timeout=10, universal_newlines=True)              if mm_check.returncode == 0:                  mm = True                  for line in mm_check.stdout.split('\n'): | 
