-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Fully Compatible
-
ALL
-
Platforms 2017-05-08
Debian and Ubuntu machines use an custom layout for python packages. For instance, pip installed modules are installed into /usr/local/ instead of /usr, and into a directory named dist-packages instead of the normal site-packages directory.
This first change means that the default search logic in pylinters.py cannot find the lint scripts in the default directory. This causes messages to be printed to standard error since the first location check for a linter fails even if the second one succeeds. The second check, based on PATH, succeeds since Debian/Ubuntu includes /usr/local/bin in PATH by default.
Example of the confusing messages
/usr/bin/python2.7: can't open file '/usr/bin/yapf': [Errno 2] No such file or directory /usr/bin/python2.7: can't open file '/usr/bin/pylint': [Errno 2] No such file or directory
To improve the user experience, standard error should be captured, and only outputted on failure.