ArcanistPyLintLinter version regex issue


Observed Behavior:
arc lint configured with a pylint linter fails its version check despite being an acceptable version.

$ pylint --version
pylint 2.3.1
astroid 2.2.5
Python 3.6.8 (default, Mar 27 2019, 13:08:42)
[GCC 4.2.1 Compatible Apple LLVM 10.0.1 (clang-1001.0.46.3)]
$ arc lint
ArcanistPyLintLinter is not compatible with the installed version of pylint. Minimum version: 1.0.0; installed version: .
(Run with `--trace` for a full exception trace.)

Expected Behavior:
arc lint configured with a pylint linter successfully reports the numerous issues with my python code.

Arcanist Version:

$ arc --version
arcanist 9830c9316d38988b2dc283ac1a124b73bc8e6c5f (7 Mar 2019)
libphutil 639e4b9cae284717b1ed717dd1e4d11c70744b86 (12 Apr 2019)

Reproduction Steps:

  "linters": {
    "repro": {
      "type": "pylint"
  • arc lint

The Fix:

This is due to the comma at the end of the regex here$41
I assume older versions of pylint returned a comma separated list instead of newlines. Removing this comma locally allows arc lint to run successfully.