Page MenuHomePhabricator

D11673.id28216.diff
No OneTemporary

D11673.id28216.diff

diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php
--- a/src/__phutil_library_map__.php
+++ b/src/__phutil_library_map__.php
@@ -44,6 +44,7 @@
'ArcanistCommitLinterTestCase' => 'lint/linter/__tests__/ArcanistCommitLinterTestCase.php',
'ArcanistCommitWorkflow' => 'workflow/ArcanistCommitWorkflow.php',
'ArcanistCompilerLintRenderer' => 'lint/renderer/ArcanistCompilerLintRenderer.php',
+ 'ArcanistComprehensiveLintEngine' => 'lint/engine/ArcanistComprehensiveLintEngine.php',
'ArcanistConduitLinter' => 'lint/linter/ArcanistConduitLinter.php',
'ArcanistConfiguration' => 'configuration/ArcanistConfiguration.php',
'ArcanistConfigurationDrivenLintEngine' => 'lint/engine/ArcanistConfigurationDrivenLintEngine.php',
@@ -251,6 +252,7 @@
'ArcanistCommitLinterTestCase' => 'ArcanistLinterTestCase',
'ArcanistCommitWorkflow' => 'ArcanistWorkflow',
'ArcanistCompilerLintRenderer' => 'ArcanistLintRenderer',
+ 'ArcanistComprehensiveLintEngine' => 'ArcanistLintEngine',
'ArcanistConduitLinter' => 'ArcanistLinter',
'ArcanistConfigurationDrivenLintEngine' => 'ArcanistLintEngine',
'ArcanistConsoleLintRenderer' => 'ArcanistLintRenderer',
@@ -382,7 +384,7 @@
'ArcanistXMLLinter' => 'ArcanistLinter',
'ArcanistXMLLinterTestCase' => 'ArcanistLinterTestCase',
'CSharpToolsTestEngine' => 'XUnitTestEngine',
- 'ComprehensiveLintEngine' => 'ArcanistLintEngine',
+ 'ComprehensiveLintEngine' => 'ArcanistComprehensiveLintEngine',
'NoseTestEngine' => 'ArcanistUnitTestEngine',
'PhpunitTestEngine' => 'ArcanistUnitTestEngine',
'PhpunitTestEngineTestCase' => 'ArcanistTestCase',
diff --git a/src/lint/engine/ComprehensiveLintEngine.php b/src/lint/engine/ArcanistComprehensiveLintEngine.php
copy from src/lint/engine/ComprehensiveLintEngine.php
copy to src/lint/engine/ArcanistComprehensiveLintEngine.php
--- a/src/lint/engine/ComprehensiveLintEngine.php
+++ b/src/lint/engine/ArcanistComprehensiveLintEngine.php
@@ -2,8 +2,10 @@
/**
* Basic lint engine which just applies several linters based on the file types.
+ *
+ * @todo Should be final but isn't because of @{class:ComprehensiveLintEngine}.
*/
-final class ComprehensiveLintEngine extends ArcanistLintEngine {
+class ArcanistComprehensiveLintEngine extends ArcanistLintEngine {
public function buildLinters() {
$linters = array();
diff --git a/src/lint/engine/ComprehensiveLintEngine.php b/src/lint/engine/ComprehensiveLintEngine.php
--- a/src/lint/engine/ComprehensiveLintEngine.php
+++ b/src/lint/engine/ComprehensiveLintEngine.php
@@ -1,55 +1,15 @@
<?php
/**
- * Basic lint engine which just applies several linters based on the file types.
+ * @deprecated
*/
-final class ComprehensiveLintEngine extends ArcanistLintEngine {
+final class ComprehensiveLintEngine extends ArcanistComprehensiveLintEngine {
public function buildLinters() {
- $linters = array();
-
- $paths = $this->getPaths();
-
- foreach ($paths as $key => $path) {
- if (preg_match('@^externals/@', $path)) {
- // Third-party stuff lives in /externals/; don't run lint engines
- // against it.
- unset($paths[$key]);
- }
- }
-
- $text_paths = preg_grep('/\.(php|css|hpp|cpp|l|y|py|pl)$/', $paths);
- $linters[] = id(new ArcanistGeneratedLinter())->setPaths($text_paths);
- $linters[] = id(new ArcanistNoLintLinter())->setPaths($text_paths);
- $linters[] = id(new ArcanistTextLinter())->setPaths($text_paths);
-
- $linters[] = id(new ArcanistFilenameLinter())->setPaths($paths);
-
- $linters[] = id(new ArcanistXHPASTLinter())
- ->setPaths(preg_grep('/\.php$/', $paths));
-
- $py_paths = preg_grep('/\.py$/', $paths);
- $linters[] = id(new ArcanistPyFlakesLinter())->setPaths($py_paths);
- $linters[] = id(new ArcanistPEP8Linter())
- ->setFlags($this->getPEP8WithTextOptions())
- ->setPaths($py_paths);
-
- $linters[] = id(new ArcanistRubyLinter())
- ->setPaths(preg_grep('/\.rb$/', $paths));
-
- $linters[] = id(new ArcanistJSHintLinter())
- ->setPaths(preg_grep('/\.js$/', $paths));
-
- return $linters;
- }
-
- protected function getPEP8WithTextOptions() {
- // E101 is subset of TXT2 (Tab Literal).
- // E501 is same as TXT3 (Line Too Long).
- // W291 is same as TXT6 (Trailing Whitespace).
- // W292 is same as TXT4 (File Does Not End in Newline).
- // W293 is same as TXT6 (Trailing Whitespace).
- return array('--ignore=E101,E501,W291,W292,W293');
+ phutil_deprecated(
+ __CLASS__,
+ 'You should use `ArcanistComprehensiveLintEngine` instead.');
+ parent::buildLinters();
}
}

File Metadata

Mime Type
text/plain
Expires
Fri, Jan 10, 9:01 PM (15 h, 55 m)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6984141
Default Alt Text
D11673.id28216.diff (4 KB)

Event Timeline