Page MenuHomePhabricator

Fold `ArcanistPhutilXHPASTLinter` into `ArcanistXHPASTLinter`
ClosedPublic

Authored by joshuaspence on Aug 11 2015, 1:27 PM.
Tags
None
Referenced Files
F19018170: D13867.diff
Sun, Nov 23, 10:16 AM
F19004091: D13867.diff
Fri, Nov 21, 10:26 AM
F18993158: D13867.diff
Wed, Nov 19, 6:02 AM
F18826477: D13867.id.diff
Oct 24 2025, 4:09 AM
F18791502: D13867.id35004.diff
Oct 16 2025, 2:10 PM
F18625153: D13867.diff
Sep 15 2025, 10:06 PM
F18599103: D13867.diff
Sep 13 2025, 6:39 AM
F18422765: D13867.id.diff
Aug 30 2025, 6:34 PM
Subscribers

Details

Summary

I've been thinking about this for a while... why not just fold ArcanistPhutilXHPASTLinter into ArcanistXHPASTLinter?

Test Plan

arc unit

Diff Detail

Repository
rARC Arcanist
Branch
master
Lint
Lint Passed
Unit
Test Failures
Build Status
Buildable 8803
Build 10266: Run Core Tests
Build 10265: arc lint + arc unit

Event Timeline

joshuaspence retitled this revision from to Fold `ArcanistPhutilXHPASTLinter` into `ArcanistXHPASTLinter`.
joshuaspence updated this object.
joshuaspence edited the test plan for this revision. (Show Details)
joshuaspence added a reviewer: epriestley.

I don't like that third parties who are developing things like Phabricator applications and arc extensions need to maintain a list of un-disables on these rules. There's no way for them to keep this list in sync with the "correct" list in the upstream.

One possibility that I was considering was to introduce an xhpast.standard which can be phutil or psr-2 (see D13512 for another use case).

Alternatively, we could do something like this:

public function getLintSeverity() {
  if ($this->isPhutilLibrary()) {
      return ArcanistLintSeverity::SEVERITY_ADVICE;
  }

  return ArcanistLintSeverity::SEVERITY_DISABLED;
}

I think I like the "standard" approach. The other one feels maybe a little too magical to me.

epriestley edited edge metadata.

I think this is good to go after D13942.

This revision is now accepted and ready to land.Aug 27 2015, 11:50 AM
This revision was automatically updated to reflect the committed changes.