Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F13378199
D9625.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
35 KB
Referenced Files
None
Subscribers
None
D9625.diff
View Options
diff --git a/src/lint/linter/ArcanistBaseXHPASTLinter.php b/src/lint/linter/ArcanistBaseXHPASTLinter.php
--- a/src/lint/linter/ArcanistBaseXHPASTLinter.php
+++ b/src/lint/linter/ArcanistBaseXHPASTLinter.php
@@ -55,7 +55,6 @@
/* -( Sharing Parse Trees )------------------------------------------------ */
-
/**
* Get the linter object which is responsible for building parse trees.
*
@@ -94,7 +93,6 @@
return $linter;
}
-
/**
* Build futures on this linter, for use and to share with other linters.
*
@@ -111,7 +109,6 @@
return array_select_keys($this->futures, $paths);
}
-
/**
* Get a path's tree from the responsible linter.
*
@@ -144,7 +141,6 @@
return $this->trees[$path];
}
-
/**
* Get a path's parse exception from the responsible linter.
*
@@ -160,5 +156,4 @@
return idx($this->exceptions, $path);
}
-
}
diff --git a/src/lint/linter/ArcanistCSSLintLinter.php b/src/lint/linter/ArcanistCSSLintLinter.php
--- a/src/lint/linter/ArcanistCSSLintLinter.php
+++ b/src/lint/linter/ArcanistCSSLintLinter.php
@@ -14,8 +14,7 @@
}
public function getInfoDescription() {
- return pht(
- 'Use `csslint` to detect issues with CSS source files.');
+ return pht('Use `csslint` to detect issues with CSS source files.');
}
public function getLinterName() {
diff --git a/src/lint/linter/ArcanistCSharpLinter.php b/src/lint/linter/ArcanistCSharpLinter.php
--- a/src/lint/linter/ArcanistCSharpLinter.php
+++ b/src/lint/linter/ArcanistCSharpLinter.php
@@ -129,8 +129,7 @@
$this->loaded = true;
}
- public function lintPath($path) {
- }
+ public function lintPath($path) {}
public function willLintPaths(array $paths) {
$this->loadEnvironment();
diff --git a/src/lint/linter/ArcanistClosureLinter.php b/src/lint/linter/ArcanistClosureLinter.php
--- a/src/lint/linter/ArcanistClosureLinter.php
+++ b/src/lint/linter/ArcanistClosureLinter.php
@@ -14,8 +14,7 @@
}
public function getInfoDescription() {
- return pht(
- 'Uses Google\'s Closure Linter to check Javascript code.');
+ return pht("Uses Google's Closure Linter to check Javascript code.");
}
public function getLinterName() {
@@ -26,16 +25,13 @@
return 'gjslint';
}
- protected function getDefaultMessageSeverity($code) {
- return ArcanistLintSeverity::SEVERITY_ERROR;
- }
-
public function getDefaultBinary() {
return 'gjslint';
}
public function getInstallInstructions() {
- return pht('Install gJSLint using `sudo easy_install http://closure-linter'.
+ return pht(
+ 'Install gJSLint using `sudo easy_install http://closure-linter'.
'.googlecode.com/files/closure_linter-latest.tar.gz`');
}
@@ -53,7 +49,7 @@
$regex = '/^Line (\d+), (E:\d+): (.*)/';
$severity_code = ArcanistLintSeverity::SEVERITY_ERROR;
- $lines = explode("\n", $stdout);
+ $lines = phutil_split_lines($stdout, false);
$messages = array();
foreach ($lines as $line) {
@@ -79,4 +75,5 @@
return $messages;
}
+
}
diff --git a/src/lint/linter/ArcanistExternalLinter.php b/src/lint/linter/ArcanistExternalLinter.php
--- a/src/lint/linter/ArcanistExternalLinter.php
+++ b/src/lint/linter/ArcanistExternalLinter.php
@@ -17,7 +17,6 @@
/* -( Interpreters, Binaries and Flags )----------------------------------- */
-
/**
* Return the default binary name or binary path where the external linter
* lives. This can either be a binary name which is expected to be installed
@@ -33,7 +32,6 @@
*/
abstract public function getDefaultBinary();
-
/**
* Return a human-readable string describing how to install the linter. This
* is normally something like "Install such-and-such by running `npm install
@@ -44,7 +42,6 @@
*/
abstract public function getInstallInstructions();
-
/**
* Return true to continue when the external linter exits with an error code.
* By default, linters which exit with an error code are assumed to have
@@ -62,7 +59,6 @@
return false;
}
-
/**
* Return true to indicate that the external linter can read input from
* stdin, rather than requiring a file. If this mode is supported, it is
@@ -93,7 +89,6 @@
return false;
}
-
/**
* If the linter can read data over stdin, override
* @{method:supportsReadDataFromStdin} and then optionally override this
@@ -108,7 +103,6 @@
return null;
}
-
/**
* Provide mandatory, non-overridable flags to the linter. Generally these
* are format flags, like `--format=xml`, which must always be given for
@@ -124,7 +118,6 @@
return array();
}
-
/**
* Provide default, overridable flags to the linter. Generally these are
* configuration flags which affect behavior but aren't critical. Flags
@@ -140,7 +133,6 @@
return array();
}
-
/**
* Override default flags with custom flags. If not overridden, flags provided
* by @{method:getDefaultFlags} are used.
@@ -154,7 +146,6 @@
return $this;
}
-
/**
* Return the binary or script to execute. This method synthesizes defaults
* and configuration. You can override the binary with @{method:setBinary}.
@@ -166,7 +157,6 @@
return coalesce($this->bin, $this->getDefaultBinary());
}
-
/**
* Override the default binary with a new one.
*
@@ -179,7 +169,6 @@
return $this;
}
-
/**
* Return true if this linter should use an interpreter (like "python" or
* "node") in addition to the script.
@@ -194,7 +183,6 @@
return false;
}
-
/**
* Return the default interpreter, like "python" or "node". This method is
* only invoked if @{method:shouldUseInterpreter} has been overridden to
@@ -207,7 +195,6 @@
throw new Exception('Incomplete implementation!');
}
-
/**
* Get the effective interpreter. This method synthesizes configuration and
* defaults.
@@ -219,7 +206,6 @@
return coalesce($this->interpreter, $this->getDefaultInterpreter());
}
-
/**
* Set the interpreter, overriding any default.
*
@@ -235,7 +221,6 @@
/* -( Parsing Linter Output )---------------------------------------------- */
-
/**
* Parse the output of the external lint program into objects of class
* @{class:ArcanistLintMessage} which `arc` can consume. Generally, this
@@ -260,7 +245,6 @@
/* -( Executing the Linter )----------------------------------------------- */
-
/**
* Check that the binary and interpreter (if applicable) exist, and throw
* an exception with a message about how to install them if they do not.
@@ -315,7 +299,6 @@
}
}
-
/**
* Get the composed executable command, including the interpreter and binary
* but without flags or paths. This can be used to execute `--version`
@@ -343,7 +326,6 @@
return $bin;
}
-
/**
* Get the composed flags for the executable, including both mandatory and
* configured flags.
@@ -381,7 +363,6 @@
}
}
-
/**
* Prepare the path to be added to the command string.
*
@@ -533,7 +514,6 @@
return parent::setLinterConfigurationValue($key, $value);
}
-
/**
* Map a configuration lint code to an `arc` lint code. Primarily, this is
* intended for validation, but can also be used to normalize case or
diff --git a/src/lint/linter/ArcanistFilenameLinter.php b/src/lint/linter/ArcanistFilenameLinter.php
--- a/src/lint/linter/ArcanistFilenameLinter.php
+++ b/src/lint/linter/ArcanistFilenameLinter.php
@@ -31,7 +31,7 @@
public function getLintNameMap() {
return array(
- self::LINT_BAD_FILENAME => pht('Bad Filename'),
+ self::LINT_BAD_FILENAME => pht('Bad Filename'),
);
}
diff --git a/src/lint/linter/ArcanistFlake8Linter.php b/src/lint/linter/ArcanistFlake8Linter.php
--- a/src/lint/linter/ArcanistFlake8Linter.php
+++ b/src/lint/linter/ArcanistFlake8Linter.php
@@ -71,7 +71,7 @@
}
protected function parseLinterOutput($path, $err, $stdout, $stderr) {
- $lines = phutil_split_lines($stdout, $retain_endings = false);
+ $lines = phutil_split_lines($stdout, false);
$messages = array();
foreach ($lines as $line) {
diff --git a/src/lint/linter/ArcanistJSHintLinter.php b/src/lint/linter/ArcanistJSHintLinter.php
--- a/src/lint/linter/ArcanistJSHintLinter.php
+++ b/src/lint/linter/ArcanistJSHintLinter.php
@@ -17,8 +17,7 @@
}
public function getInfoDescription() {
- return pht(
- 'Use `jshint` to detect issues with Javascript source files.');
+ return pht('Use `jshint` to detect issues with Javascript source files.');
}
public function getLinterName() {
@@ -179,4 +178,5 @@
return $code;
}
+
}
diff --git a/src/lint/linter/ArcanistLesscLinter.php b/src/lint/linter/ArcanistLesscLinter.php
--- a/src/lint/linter/ArcanistLesscLinter.php
+++ b/src/lint/linter/ArcanistLesscLinter.php
@@ -51,8 +51,7 @@
),
'lessc.strict-units' => array(
'type' => 'optional bool',
- 'help' => pht(
- 'Enable strict handling of units in expressions.'),
+ 'help' => pht('Enable strict handling of units in expressions.'),
),
);
}
@@ -195,4 +194,5 @@
return $messages;
}
+
}
diff --git a/src/lint/linter/ArcanistLinter.php b/src/lint/linter/ArcanistLinter.php
--- a/src/lint/linter/ArcanistLinter.php
+++ b/src/lint/linter/ArcanistLinter.php
@@ -28,7 +28,6 @@
/* -( Human Readable Information )---------------------------------------- */
-
/**
* Return an optional informative URI where humans can learn more about this
* linter.
@@ -43,7 +42,6 @@
return null;
}
-
/**
* Return a brief human-readable description of the linter.
*
@@ -56,7 +54,6 @@
return null;
}
-
/**
* Return a human-readable linter name.
*
@@ -73,7 +70,6 @@
get_class($this));
}
-
public function getLinterPriority() {
return 1.0;
}
@@ -264,10 +260,7 @@
return $this->addLintMessage($message);
}
- final protected function raiseLintAtPath(
- $code,
- $desc) {
-
+ final protected function raiseLintAtPath($code, $desc) {
return $this->raiseLintAtLine(null, null, $code, $desc, null, null);
}
@@ -464,7 +457,6 @@
return $code;
}
-
/**
* Retrieve an old lint configuration value from `.arcconfig` or a similar
* source.
@@ -477,7 +469,6 @@
* @return wild Configured value, or default if no configuration exists.
*/
final protected function getDeprecatedConfiguration($key, $default = null) {
-
// If we're being called in a context without an engine (probably from
// `arc linters`), just return the default value.
if (!$this->engine) {
diff --git a/src/lint/linter/ArcanistMergeConflictLinter.php b/src/lint/linter/ArcanistMergeConflictLinter.php
--- a/src/lint/linter/ArcanistMergeConflictLinter.php
+++ b/src/lint/linter/ArcanistMergeConflictLinter.php
@@ -45,12 +45,6 @@
}
}
- public function getLintSeverityMap() {
- return array(
- self::LINT_MERGECONFLICT => ArcanistLintSeverity::SEVERITY_ERROR,
- );
- }
-
public function getLintNameMap() {
return array(
self::LINT_MERGECONFLICT => pht('Unresolved merge conflict'),
diff --git a/src/lint/linter/ArcanistPEP8Linter.php b/src/lint/linter/ArcanistPEP8Linter.php
--- a/src/lint/linter/ArcanistPEP8Linter.php
+++ b/src/lint/linter/ArcanistPEP8Linter.php
@@ -75,7 +75,7 @@
}
protected function parseLinterOutput($path, $err, $stdout, $stderr) {
- $lines = phutil_split_lines($stdout, $retain_endings = false);
+ $lines = phutil_split_lines($stdout, false);
$messages = array();
foreach ($lines as $line) {
diff --git a/src/lint/linter/ArcanistPhpcsLinter.php b/src/lint/linter/ArcanistPhpcsLinter.php
--- a/src/lint/linter/ArcanistPhpcsLinter.php
+++ b/src/lint/linter/ArcanistPhpcsLinter.php
@@ -1,15 +1,7 @@
<?php
/**
- * Uses "PHP_CodeSniffer" to detect checkstyle errors in php code.
- * To use this linter, you must install PHP_CodeSniffer.
- * http://pear.php.net/package/PHP_CodeSniffer.
- *
- * Optional configurations in .arcconfig:
- *
- * lint.phpcs.standard
- * lint.phpcs.options
- * lint.phpcs.bin
+ * Uses "PHP_CodeSniffer" to detect checkstyle errors in PHP code.
*
* @group linter
*/
@@ -50,6 +42,7 @@
public function getDefaultFlags() {
$options = $this->getDeprecatedConfiguration('lint.phpcs.options', array());
$standard = $this->getDeprecatedConfiguration('lint.phpcs.standard');
+
if (!empty($standard)) {
if (is_array($options)) {
$options[] = '--standard='.$standard;
diff --git a/src/lint/linter/ArcanistPhutilLibraryLinter.php b/src/lint/linter/ArcanistPhutilLibraryLinter.php
--- a/src/lint/linter/ArcanistPhutilLibraryLinter.php
+++ b/src/lint/linter/ArcanistPhutilLibraryLinter.php
@@ -10,9 +10,9 @@
*/
final class ArcanistPhutilLibraryLinter extends ArcanistLinter {
- const LINT_UNKNOWN_SYMBOL = 1;
- const LINT_DUPLICATE_SYMBOL = 2;
- const LINT_ONE_CLASS_PER_FILE = 3;
+ const LINT_UNKNOWN_SYMBOL = 1;
+ const LINT_DUPLICATE_SYMBOL = 2;
+ const LINT_ONE_CLASS_PER_FILE = 3;
public function getInfoName() {
return 'Phutil Library Linter';
@@ -30,9 +30,9 @@
public function getLintNameMap() {
return array(
- self::LINT_UNKNOWN_SYMBOL => 'Unknown Symbol',
- self::LINT_DUPLICATE_SYMBOL => 'Duplicate Symbol',
- self::LINT_ONE_CLASS_PER_FILE => 'One Class Per File',
+ self::LINT_UNKNOWN_SYMBOL => 'Unknown Symbol',
+ self::LINT_DUPLICATE_SYMBOL => 'Duplicate Symbol',
+ self::LINT_ONE_CLASS_PER_FILE => 'One Class Per File',
);
}
@@ -58,7 +58,7 @@
// the working copy.
$arc_root = dirname(phutil_get_library_root('arcanist'));
- $bin = "{$arc_root}/scripts/phutil_rebuild_map.php";
+ $bin = $arc_root.'/scripts/phutil_rebuild_map.php';
$symbols = array();
foreach ($libs as $lib) {
diff --git a/src/lint/linter/ArcanistPyLintLinter.php b/src/lint/linter/ArcanistPyLintLinter.php
--- a/src/lint/linter/ArcanistPyLintLinter.php
+++ b/src/lint/linter/ArcanistPyLintLinter.php
@@ -54,7 +54,6 @@
final class ArcanistPyLintLinter extends ArcanistLinter {
private function getMessageCodeSeverity($code) {
-
$config = $this->getEngine()->getConfigurationManager();
$error_regexp =
@@ -148,9 +147,9 @@
if ($config_paths !== null) {
foreach ($config_paths as $config_path) {
if ($config_path !== null) {
- $python_path[] =
- Filesystem::resolvePath($config_path,
- $working_copy->getProjectRoot());
+ $python_path[] = Filesystem::resolvePath(
+ $config_path,
+ $working_copy->getProjectRoot());
}
}
}
@@ -181,8 +180,8 @@
$rcfile = $config->getConfigFromAnySource('lint.pylint.rcfile');
if ($rcfile !== null) {
$rcfile = Filesystem::resolvePath(
- $rcfile,
- $working_copy->getProjectRoot());
+ $rcfile,
+ $working_copy->getProjectRoot());
$options[] = csprintf('--rcfile=%s', $rcfile);
}
@@ -200,16 +199,12 @@
}
private function getLinterVersion() {
-
$pylint_bin = $this->getPyLintPath();
$options = '--version';
- list($stdout) = execx(
- '%s %s',
- $pylint_bin,
- $options);
+ list($stdout) = execx('%s %s', $pylint_bin, $options);
- $lines = explode("\n", $stdout);
+ $lines = phutil_split_lines($stdout, false);
$matches = null;
// If the version command didn't return anything or the regex didn't match
@@ -247,13 +242,12 @@
}
}
- $lines = explode("\n", $stdout);
+ $lines = phutil_split_lines($stdout, false);
$messages = array();
foreach ($lines as $line) {
$matches = null;
- if (!preg_match(
- '/([A-Z]\d+): *(\d+)(?:|,\d*): *(.*)$/',
- $line, $matches)) {
+ $regex = '/([A-Z]\d+): *(\d+)(?:|,\d*): *(.*)$/';
+ if (!preg_match($regex, $line, $matches)) {
continue;
}
foreach ($matches as $key => $match) {
diff --git a/src/lint/linter/ArcanistRubyLinter.php b/src/lint/linter/ArcanistRubyLinter.php
--- a/src/lint/linter/ArcanistRubyLinter.php
+++ b/src/lint/linter/ArcanistRubyLinter.php
@@ -64,12 +64,8 @@
return array('-w', '-c');
}
- protected function getDefaultMessageSeverity($code) {
- return ArcanistLintSeverity::SEVERITY_ERROR;
- }
-
protected function parseLinterOutput($path, $err, $stdout, $stderr) {
- $lines = phutil_split_lines($stderr, $retain_endings = false);
+ $lines = phutil_split_lines($stderr, false);
$messages = array();
foreach ($lines as $line) {
diff --git a/src/lint/linter/ArcanistScriptAndRegexLinter.php b/src/lint/linter/ArcanistScriptAndRegexLinter.php
--- a/src/lint/linter/ArcanistScriptAndRegexLinter.php
+++ b/src/lint/linter/ArcanistScriptAndRegexLinter.php
@@ -159,7 +159,6 @@
private $output = array();
-
public function getInfoName() {
return pht('Script and Regex');
}
@@ -196,7 +195,6 @@
}
}
-
/**
* Run the regex on the output of the script.
*
@@ -247,13 +245,13 @@
list($line, $char) = $this->getMatchLineAndChar($match, $path);
$dict = array(
- 'path' => idx($match, 'file', $path),
- 'line' => $line,
- 'char' => $char,
- 'code' => idx($match, 'code', $this->getLinterName()),
- 'severity' => $this->getMatchSeverity($match),
- 'name' => idx($match, 'name', 'Lint'),
- 'description' => idx($match, 'message', 'Undefined Lint Message'),
+ 'path' => idx($match, 'file', $path),
+ 'line' => $line,
+ 'char' => $char,
+ 'code' => idx($match, 'code', $this->getLinterName()),
+ 'severity' => $this->getMatchSeverity($match),
+ 'name' => idx($match, 'name', 'Lint'),
+ 'description' => idx($match, 'message', 'Undefined Lint Message'),
);
$original = idx($match, 'original');
@@ -274,7 +272,6 @@
/* -( Linter Information )------------------------------------------------- */
-
/**
* Return the short name of the linter.
*
@@ -290,8 +287,8 @@
return 'script-and-regex';
}
-/* -( Parsing Output )----------------------------------------------------- */
+/* -( Parsing Output )----------------------------------------------------- */
/**
* Get the line and character of the message from the regex match.
@@ -315,7 +312,6 @@
return array($line, $char);
}
-
/**
* Map the regex matching groups to a message severity. We look for either
* a nonempty severity name group like 'error', or a group called 'severity'
@@ -328,11 +324,11 @@
*/
private function getMatchSeverity(array $match) {
$map = array(
- 'error' => ArcanistLintSeverity::SEVERITY_ERROR,
- 'warning' => ArcanistLintSeverity::SEVERITY_WARNING,
- 'autofix' => ArcanistLintSeverity::SEVERITY_AUTOFIX,
- 'advice' => ArcanistLintSeverity::SEVERITY_ADVICE,
- 'disabled' => ArcanistLintSeverity::SEVERITY_DISABLED,
+ 'error' => ArcanistLintSeverity::SEVERITY_ERROR,
+ 'warning' => ArcanistLintSeverity::SEVERITY_WARNING,
+ 'autofix' => ArcanistLintSeverity::SEVERITY_AUTOFIX,
+ 'advice' => ArcanistLintSeverity::SEVERITY_ADVICE,
+ 'disabled' => ArcanistLintSeverity::SEVERITY_DISABLED,
);
$severity_name = strtolower(idx($match, 'severity'));
@@ -340,8 +336,7 @@
foreach ($map as $name => $severity) {
if (!empty($match[$name])) {
return $severity;
- }
- if ($severity_name == $name) {
+ } else if ($severity_name == $name) {
return $severity;
}
}
@@ -352,7 +347,6 @@
/* -( Validating Configuration )------------------------------------------- */
-
/**
* Load, validate, and return the "script" configuration.
*
@@ -379,7 +373,6 @@
return $config;
}
-
/**
* Load, validate, and return the "regex" configuration.
*
diff --git a/src/lint/linter/ArcanistSpellingLinter.php b/src/lint/linter/ArcanistSpellingLinter.php
--- a/src/lint/linter/ArcanistSpellingLinter.php
+++ b/src/lint/linter/ArcanistSpellingLinter.php
@@ -56,14 +56,14 @@
public function getLintSeverityMap() {
return array(
- self::LINT_SPELLING_PICKY => ArcanistLintSeverity::SEVERITY_WARNING,
+ self::LINT_SPELLING_PICKY => ArcanistLintSeverity::SEVERITY_WARNING,
self::LINT_SPELLING_IMPORTANT => ArcanistLintSeverity::SEVERITY_ERROR,
);
}
public function getLintNameMap() {
return array(
- self::LINT_SPELLING_PICKY => pht('Possible Spelling Mistake'),
+ self::LINT_SPELLING_PICKY => pht('Possible Spelling Mistake'),
self::LINT_SPELLING_IMPORTANT => pht('Possible Spelling Mistake'),
);
}
@@ -105,7 +105,7 @@
$this->raiseLintAtOffset(
$next,
$severity,
- sprintf(
+ pht(
"Possible spelling error. You wrote '%s', but did you mean '%s'?",
$word,
$correct_word),
@@ -132,7 +132,7 @@
$this->raiseLintAtOffset(
$match[1],
$severity,
- sprintf(
+ pht(
"Possible spelling error. You wrote '%s', but did you mean '%s'?",
$word,
$correct_word),
@@ -144,14 +144,13 @@
public static function fixLetterCase($string, $case) {
if ($case == strtolower($case)) {
return strtolower($string);
- }
- if ($case == strtoupper($case)) {
+ } else if ($case == strtoupper($case)) {
return strtoupper($string);
- }
- if ($case == ucwords(strtolower($case))) {
+ } else if ($case == ucwords(strtolower($case))) {
return ucwords(strtolower($string));
+ } else {
+ return null;
}
- return null;
}
}
diff --git a/src/lint/linter/ArcanistTextLinter.php b/src/lint/linter/ArcanistTextLinter.php
--- a/src/lint/linter/ArcanistTextLinter.php
+++ b/src/lint/linter/ArcanistTextLinter.php
@@ -5,15 +5,15 @@
*/
final class ArcanistTextLinter extends ArcanistLinter {
- const LINT_DOS_NEWLINE = 1;
- const LINT_TAB_LITERAL = 2;
- const LINT_LINE_WRAP = 3;
- const LINT_EOF_NEWLINE = 4;
- const LINT_BAD_CHARSET = 5;
- const LINT_TRAILING_WHITESPACE = 6;
- const LINT_NO_COMMIT = 7;
- const LINT_BOF_WHITESPACE = 8;
- const LINT_EOF_WHITESPACE = 9;
+ const LINT_DOS_NEWLINE = 1;
+ const LINT_TAB_LITERAL = 2;
+ const LINT_LINE_WRAP = 3;
+ const LINT_EOF_NEWLINE = 4;
+ const LINT_BAD_CHARSET = 5;
+ const LINT_TRAILING_WHITESPACE = 6;
+ const LINT_NO_COMMIT = 7;
+ const LINT_BOF_WHITESPACE = 8;
+ const LINT_EOF_WHITESPACE = 9;
private $maxLineLength = 80;
@@ -69,24 +69,24 @@
public function getLintSeverityMap() {
return array(
- self::LINT_LINE_WRAP => ArcanistLintSeverity::SEVERITY_WARNING,
+ self::LINT_LINE_WRAP => ArcanistLintSeverity::SEVERITY_WARNING,
self::LINT_TRAILING_WHITESPACE => ArcanistLintSeverity::SEVERITY_AUTOFIX,
- self::LINT_BOF_WHITESPACE => ArcanistLintSeverity::SEVERITY_AUTOFIX,
- self::LINT_EOF_WHITESPACE => ArcanistLintSeverity::SEVERITY_AUTOFIX,
+ self::LINT_BOF_WHITESPACE => ArcanistLintSeverity::SEVERITY_AUTOFIX,
+ self::LINT_EOF_WHITESPACE => ArcanistLintSeverity::SEVERITY_AUTOFIX,
);
}
public function getLintNameMap() {
return array(
- self::LINT_DOS_NEWLINE => pht('DOS Newlines'),
- self::LINT_TAB_LITERAL => pht('Tab Literal'),
- self::LINT_LINE_WRAP => pht('Line Too Long'),
- self::LINT_EOF_NEWLINE => pht('File Does Not End in Newline'),
- self::LINT_BAD_CHARSET => pht('Bad Charset'),
- self::LINT_TRAILING_WHITESPACE => pht('Trailing Whitespace'),
- self::LINT_NO_COMMIT => pht('Explicit %s', '@no'.'commit'),
- self::LINT_BOF_WHITESPACE => pht('Leading Whitespace at BOF'),
- self::LINT_EOF_WHITESPACE => pht('Trailing Whitespace at EOF'),
+ self::LINT_DOS_NEWLINE => pht('DOS Newlines'),
+ self::LINT_TAB_LITERAL => pht('Tab Literal'),
+ self::LINT_LINE_WRAP => pht('Line Too Long'),
+ self::LINT_EOF_NEWLINE => pht('File Does Not End in Newline'),
+ self::LINT_BAD_CHARSET => pht('Bad Charset'),
+ self::LINT_TRAILING_WHITESPACE => pht('Trailing Whitespace'),
+ self::LINT_NO_COMMIT => pht('Explicit %s', '@no'.'commit'),
+ self::LINT_BOF_WHITESPACE => pht('Leading Whitespace at BOF'),
+ self::LINT_EOF_WHITESPACE => pht('Trailing Whitespace at EOF'),
);
}
diff --git a/src/lint/linter/ArcanistXHPASTLinter.php b/src/lint/linter/ArcanistXHPASTLinter.php
--- a/src/lint/linter/ArcanistXHPASTLinter.php
+++ b/src/lint/linter/ArcanistXHPASTLinter.php
@@ -174,7 +174,7 @@
),
'xhpast.php-version.windows' => array(
'type' => 'optional string',
- 'help' => pht('PHP version to target on Windows.')
+ 'help' => pht('PHP version to target on Windows.'),
),
);
}
diff --git a/src/lint/linter/ArcanistXMLLinter.php b/src/lint/linter/ArcanistXMLLinter.php
--- a/src/lint/linter/ArcanistXMLLinter.php
+++ b/src/lint/linter/ArcanistXMLLinter.php
@@ -70,4 +70,5 @@
$this->addLintMessage($message);
}
}
+
}
diff --git a/src/lint/linter/__tests__/ArcanistLesscLinterTestCase.php b/src/lint/linter/__tests__/ArcanistLesscLinterTestCase.php
--- a/src/lint/linter/__tests__/ArcanistLesscLinterTestCase.php
+++ b/src/lint/linter/__tests__/ArcanistLesscLinterTestCase.php
@@ -1,7 +1,6 @@
<?php
-final class ArcanistLesscLinterTestCase
- extends ArcanistArcanistLinterTestCase {
+final class ArcanistLesscLinterTestCase extends ArcanistArcanistLinterTestCase {
public function testLesscLinter() {
$this->executeTestsInDirectory(
diff --git a/src/lint/linter/__tests__/ArcanistLinterTestCase.php b/src/lint/linter/__tests__/ArcanistLinterTestCase.php
--- a/src/lint/linter/__tests__/ArcanistLinterTestCase.php
+++ b/src/lint/linter/__tests__/ArcanistLinterTestCase.php
@@ -22,7 +22,7 @@
pht('Expected to find some .lint-test tests in directory %s!', $root));
}
- private function lintFile($file, $linter) {
+ private function lintFile($file, ArcanistLinter $linter) {
$linter = clone $linter;
$contents = Filesystem::readFile($file);
@@ -38,14 +38,10 @@
$basename = basename($file);
- if ($config) {
- $config = json_decode($config, true);
- if (!is_array($config)) {
- throw new Exception(
- "Invalid configuration in test '{$basename}', not valid JSON.");
- }
- } else {
- $config = array();
+ $config = phutil_json_decode($config);
+ if (!is_array($config)) {
+ throw new Exception(
+ "Invalid configuration in test '{$basename}', not valid JSON.");
}
PhutilTypeSpec::checkMap(
@@ -62,8 +58,8 @@
$messages = null;
$exception_message = false;
$caught_exception = false;
- try {
+ try {
$tmp = new TempFile($basename);
Filesystem::writeFile($tmp, $data);
$full_path = (string)$tmp;
@@ -112,7 +108,6 @@
$result = reset($results);
$patcher = ArcanistLintPatcher::newFromArcanistLintResult($result);
$after_lint = $patcher->getModifiedFileContent();
-
} catch (ArcanistPhutilTestTerminatedException $ex) {
throw $ex;
} catch (Exception $exception) {
@@ -133,19 +128,16 @@
$exception->getTraceAsString();
}
- switch ($basename) {
- default:
- $this->assertEqual(false, $caught_exception, $exception_message);
- $this->compareLint($basename, $expect, $result);
- $this->compareTransform($xform, $after_lint);
- break;
- }
+ $this->assertEqual(false, $caught_exception, $exception_message);
+ $this->compareLint($basename, $expect, $result);
+ $this->compareTransform($xform, $after_lint);
}
- private function compareLint($file, $expect, $result) {
+ private function compareLint($file, $expect, ArcanistLintResult $result) {
$seen = array();
$raised = array();
$message_map = array();
+
foreach ($result->getMessages() as $message) {
$sev = $message->getSeverity();
$line = $message->getLine();
@@ -195,7 +187,7 @@
}
}
- protected function compareTransform($expected, $actual) {
+ private function compareTransform($expected, $actual) {
if (!strlen($expected)) {
return;
}
diff --git a/src/lint/linter/__tests__/ArcanistPEP8LinterTestCase.php b/src/lint/linter/__tests__/ArcanistPEP8LinterTestCase.php
--- a/src/lint/linter/__tests__/ArcanistPEP8LinterTestCase.php
+++ b/src/lint/linter/__tests__/ArcanistPEP8LinterTestCase.php
@@ -1,7 +1,6 @@
<?php
-final class ArcanistPEP8LinterTestCase
- extends ArcanistArcanistLinterTestCase {
+final class ArcanistPEP8LinterTestCase extends ArcanistArcanistLinterTestCase {
public function testPEP8Linter() {
$this->executeTestsInDirectory(
diff --git a/src/lint/linter/__tests__/ArcanistXMLLinterTestCase.php b/src/lint/linter/__tests__/ArcanistXMLLinterTestCase.php
--- a/src/lint/linter/__tests__/ArcanistXMLLinterTestCase.php
+++ b/src/lint/linter/__tests__/ArcanistXMLLinterTestCase.php
@@ -5,9 +5,11 @@
* https://git.gnome.org/browse/libxml2/tree/test.
*/
final class ArcanistXMLLinterTestCase extends ArcanistArcanistLinterTestCase {
+
public function testXMLLint() {
$this->executeTestsInDirectory(
dirname(__FILE__).'/xml/',
new ArcanistXMLLinter());
}
+
}
diff --git a/src/lint/linter/reporter.js b/src/lint/linter/reporter.js
--- a/src/lint/linter/reporter.js
+++ b/src/lint/linter/reporter.js
@@ -1,19 +1,19 @@
module.exports = {
- reporter: function (results) {
- var report = [];
+ reporter: function (results) {
+ var report = [];
- results.forEach(function (result) {
- var error = result.error;
- report.push({
- 'file' : result.file,
- 'line' : error.line,
- 'col' : error.character,
- 'reason' : error.reason,
- 'code' : error.code,
- 'evidence': error.evidence,
- });
- });
+ results.forEach(function (result) {
+ var error = result.error;
+ report.push({
+ 'file' : result.file,
+ 'line' : error.line,
+ 'col' : error.character,
+ 'reason' : error.reason,
+ 'code' : error.code,
+ 'evidence': error.evidence,
+ });
+ });
- process.stdout.write(JSON.stringify(report));
- }
+ process.stdout.write(JSON.stringify(report));
+ }
};
diff --git a/src/lint/linter/xhpast/ArcanistXHPASTLintNamingHook.php b/src/lint/linter/xhpast/ArcanistXHPASTLintNamingHook.php
--- a/src/lint/linter/xhpast/ArcanistXHPASTLintNamingHook.php
+++ b/src/lint/linter/xhpast/ArcanistXHPASTLintNamingHook.php
@@ -1,9 +1,8 @@
<?php
/**
- * You can extend this class and set ##"lint.xhpast.naminghook"## in your
- * ##.arcconfig## to have an opportunity to override lint results for symbol
- * names.
+ * You can extend this class and set `xhpast.naminghook` in your `.arclint` to
+ * have an opportunity to override lint results for symbol names.
*
* @task override Overriding Symbol Name Lint Messages
* @task util Name Utilities
@@ -16,7 +15,6 @@
/* -( Internals )---------------------------------------------------------- */
-
/**
* The constructor is final because @{class:ArcanistXHPASTLinter} is
* responsible for hook instantiation.
@@ -31,7 +29,6 @@
/* -( Overriding Symbol Name Lint Messages )------------------------------- */
-
/**
* Callback invoked for each symbol, which can override the default
* determination of name validity or accept it by returning $default. The
@@ -63,7 +60,6 @@
/* -( Name Utilities )----------------------------------------------------- */
-
/**
* Returns true if a symbol name is UpperCamelCase.
*
@@ -75,7 +71,6 @@
return preg_match('/^[A-Z][A-Za-z0-9]*$/', $symbol);
}
-
/**
* Returns true if a symbol name is lowerCamelCase.
*
@@ -87,7 +82,6 @@
return preg_match('/^[a-z][A-Za-z0-9]*$/', $symbol);
}
-
/**
* Returns true if a symbol name is UPPERCASE_WITH_UNDERSCORES.
*
@@ -99,7 +93,6 @@
return preg_match('/^[A-Z0-9_]+$/', $symbol);
}
-
/**
* Returns true if a symbol name is lowercase_with_underscores.
*
@@ -111,7 +104,6 @@
return preg_match('/^[a-z0-9_]+$/', $symbol);
}
-
/**
* Strip non-name components from PHP function symbols. Notably, this discards
* the "__" magic-method signifier, to make a symbol appropriate for testing
@@ -127,7 +119,6 @@
return preg_replace('/^__/', '', $symbol);
}
-
/**
* Strip non-name components from PHP variable symbols. Notably, this discards
* the "$", to make a symbol appropriate for testing with methods like
diff --git a/src/lint/linter/xhpast/ArcanistXHPASTLintSwitchHook.php b/src/lint/linter/xhpast/ArcanistXHPASTLintSwitchHook.php
--- a/src/lint/linter/xhpast/ArcanistXHPASTLintSwitchHook.php
+++ b/src/lint/linter/xhpast/ArcanistXHPASTLintSwitchHook.php
@@ -1,9 +1,8 @@
<?php
/**
- * You can extend this class and set `lint.xhpast.switchhook` in your
- * `.arcconfig` to have an opportunity to override results for linting `switch`
- * statements.
+ * You can extend this class and set `xhpast.switchhook` in your `.arclint`
+ * to have an opportunity to override results for linting `switch` statements.
*
* @group lint
*/
diff --git a/src/lint/linter/xhpast/__tests__/ArcanistXHPASTLintNamingHookTestCase.php b/src/lint/linter/xhpast/__tests__/ArcanistXHPASTLintNamingHookTestCase.php
--- a/src/lint/linter/xhpast/__tests__/ArcanistXHPASTLintNamingHookTestCase.php
+++ b/src/lint/linter/xhpast/__tests__/ArcanistXHPASTLintNamingHookTestCase.php
@@ -5,26 +5,25 @@
*
* @group testcase
*/
-final class ArcanistXHPASTLintNamingHookTestCase
- extends ArcanistTestCase {
+final class ArcanistXHPASTLintNamingHookTestCase extends ArcanistTestCase {
public function testCaseUtilities() {
$tests = array(
- 'UpperCamelCase' => array(1, 0, 0, 0),
- 'UpperCamelCaseROFL' => array(1, 0, 0, 0),
+ 'UpperCamelCase' => array(1, 0, 0, 0),
+ 'UpperCamelCaseROFL' => array(1, 0, 0, 0),
- 'lowerCamelCase' => array(0, 1, 0, 0),
- 'lowerCamelCaseROFL' => array(0, 1, 0, 0),
+ 'lowerCamelCase' => array(0, 1, 0, 0),
+ 'lowerCamelCaseROFL' => array(0, 1, 0, 0),
- 'UPPERCASE_WITH_UNDERSCORES' => array(0, 0, 1, 0),
- '_UPPERCASE_WITH_UNDERSCORES_' => array(0, 0, 1, 0),
- '__UPPERCASE__WITH__UNDERSCORES__' => array(0, 0, 1, 0),
+ 'UPPERCASE_WITH_UNDERSCORES' => array(0, 0, 1, 0),
+ '_UPPERCASE_WITH_UNDERSCORES_' => array(0, 0, 1, 0),
+ '__UPPERCASE__WITH__UNDERSCORES__' => array(0, 0, 1, 0),
- 'lowercase_with_underscores' => array(0, 0, 0, 1),
- '_lowercase_with_underscores_' => array(0, 0, 0, 1),
- '__lowercase__with__underscores__' => array(0, 0, 0, 1),
+ 'lowercase_with_underscores' => array(0, 0, 0, 1),
+ '_lowercase_with_underscores_' => array(0, 0, 0, 1),
+ '__lowercase__with__underscores__' => array(0, 0, 0, 1),
- 'mixedCASE_NoNsEnSe' => array(0, 0, 0, 0),
+ 'mixedCASE_NoNsEnSe' => array(0, 0, 0, 0),
);
foreach ($tests as $test => $expect) {
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Jun 30, 4:36 AM (1 d, 7 h ago)
Storage Engine
amazon-s3
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
phabricator/secure/ug/mf/nlobu22nuijdzl4y
Default Alt Text
D9625.diff (35 KB)
Attached To
Mode
D9625: Tidying up of linter code.
Attached
Detach File
Event Timeline
Log In to Comment