Your Location is: Home > Php

jshint --version command not be found by proc_open

From: Suwa View: 4795 Shashish Chandra 


I have been figuring out the installation of archanist with linters on my Windows 8.2 (64 bit) system. I ran into problem during arc diff, when it said (over git bash, I was using):

EXCEPTION: (PhutilAggregateException) Some linters failed:
    - ArcanistMissingLinterException: Unable to locate binary "jshint" to run linter ArcanistJSHintLinter. You may need to install the binary, or adjust your linter configuration.
      TO INSTALL: Install JSHint using `npm install -g jshint`. at [<arcanist>\src\lint\engine\ArcanistLintEngine.php:264]

Then I tried install jshint through

npm install -g jshint

Then, a new error occurred, where it tries to execute the command jshint --version, then the error log was:

[2020-06-01 20:14:22] EXCEPTION: (CommandException) Command failed with error #1!
jshint --version


Call to "proc_open()" to open a subprocess failed: proc_open(): CreateProcess failed, error code - 2 at [<arcanist>\src\future\exec\ExecFuture.php:409]
arcanist(head=master, ref.master=0da1a2e17d92)
  #0 ExecFuture::raiseResultError(array) called at [<arcanist>\src\future\exec\ExecFuture.php:313]

I then debugged it further, it uses proc_open method to execute the command, which returns bool(false). Even though I tried to run via shell:

jshint --version

It outputted: jshint v2.11.1

But same if proc_open does, it returned false.

php version : 5.4.9

arc version : arcanist 0da1a2e17d921dc27ce9afa76b123cb4c8b73b17 (30 May 2020)

My .arclint file contains this:


Best answer