Page MenuHomePhabricator

D10463.diff
No OneTemporary

D10463.diff

diff --git a/src/lint/engine/ArcanistLintEngine.php b/src/lint/engine/ArcanistLintEngine.php
--- a/src/lint/engine/ArcanistLintEngine.php
+++ b/src/lint/engine/ArcanistLintEngine.php
@@ -232,19 +232,23 @@
$versions = array($this->getCacheVersion());
foreach ($linters as $linter) {
- $version = get_class($linter).':'.$linter->getCacheVersion();
-
- $symbols = id(new PhutilSymbolLoader())
- ->setType('class')
- ->setName(get_class($linter))
- ->selectSymbolsWithoutLoading();
- $symbol = idx($symbols, 'class$'.get_class($linter));
- if ($symbol) {
- $version .= ':'.md5_file(
- phutil_get_library_root($symbol['library']).'/'.$symbol['where']);
- }
+ try {
+ $version = get_class($linter).':'.$linter->getCacheVersion();
+
+ $symbols = id(new PhutilSymbolLoader())
+ ->setType('class')
+ ->setName(get_class($linter))
+ ->selectSymbolsWithoutLoading();
+ $symbol = idx($symbols, 'class$'.get_class($linter));
+ if ($symbol) {
+ $version .= ':'.md5_file(
+ phutil_get_library_root($symbol['library']).'/'.$symbol['where']);
+ }
- $versions[] = $version;
+ $versions[] = $version;
+ } catch (ArcanistUsageException $ex) {
+ // The linter probably isn't installed, just continue without it.
+ }
}
$this->cacheVersion = crc32(implode("\n", $versions));
@@ -310,6 +314,8 @@
$profiler->endServiceCall($call_id, array());
}
+ } catch (ArcanistUsageException $ex) {
+ phlog($ex->getMessage());
} catch (Exception $ex) {
$exceptions[$linter_name] = $ex;
}

File Metadata

Mime Type
text/plain
Expires
Mon, May 19, 2:30 PM (18 h, 53 m)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
8005454
Default Alt Text
D10463.diff (1 KB)

Event Timeline