It looks like the recent changes to cslint along side D7599 have revealed a potential deadlock scenario when resolving ExecFuture under Windows.
cslint.exe is halted when trying to write to standard error; looking at the ExecFuture code, it does this:
$this->stdout .= $this->readAndDiscard( $stdout, $this->getStdoutSizeLimit() - strlen($this->stdout), 'stdout'); $this->stderr .= $this->readAndDiscard( $stderr, $this->getStderrSizeLimit() - strlen($this->stderr), 'stderr');
It also states that there's no nonblocking streams under Windows, so my guess is that the standard error buffer is filled up, while Arcanist is still waiting for the process to terminate so it can read standard output.
I'm not quite sure what we can do about this, other than just ignore standard error on Windows?