Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Improve error if python can't run pep8

Summary:
On systems with an ancient version of python, the pep8 linter won't run.
Instead of blowing up in the user's face, we should display a nice error
message.

Test Plan:
Put /usr/bin (where the ancient version of python is) at the beginning of
my path and tried to lint some python. I got a nice error instead of a
stack trace.

Reviewers: epriestley, wez

Reviewed By: epriestley

CC: aran, Korvin

Differential Revision: https://secure.phabricator.com/D5356
  • Loading branch information...
commit 30e12a0c9a2ea1a57a8ba8bcee8c951125c9f091 1 parent 337f7f8
Nick Harper authored
Showing with 7 additions and 0 deletions.
  1. +7 −0 src/lint/linter/ArcanistPEP8Linter.php
7 src/lint/linter/ArcanistPEP8Linter.php
View
@@ -74,6 +74,13 @@ public function getPEP8Path() {
}
}
+ list(, $stderr) = execx('/usr/bin/env python -V');
+ if ($stderr < 'Python 2.5') {
+ throw new ArcanistUsageException(
+ "Python 2.5 or greater is required to run the PEP8 Python linter, but ".
+ rtrim($stderr)." was found instead.");
+ }
+
return $bin;
}
Please sign in to comment.
Something went wrong with that request. Please try again.