Page MenuHomePhabricator

Change ArcanistElseIfUsageXHPASTLinterRule to be PSR-2 compliant
Needs ReviewPublic

Authored by joshuaspence on Jul 1 2015, 12:12 PM.
Tags
None
Referenced Files
F13240260: D13512.diff
Wed, May 22, 12:23 PM
F13209020: D13512.diff
Thu, May 16, 9:10 PM
F13208127: D13512.id33650.diff
Thu, May 16, 9:29 AM
F13208126: D13512.id32671.diff
Thu, May 16, 9:29 AM
F13208073: D13512.id.diff
Thu, May 16, 8:54 AM
F13208016: D13512.diff
Thu, May 16, 7:50 AM
F13204418: D13512.diff
Wed, May 15, 12:33 AM
F13187360: D13512.diff
Sat, May 11, 4:29 AM
Subscribers

Details

Reviewers
epriestley
Group Reviewers
Blessed Reviewers
Maniphest Tasks
T8742: Write a bunch of PSR-2 lint rules
Summary

Ref T8742. We are adopting PSR-2 at my work, which means that we need to be using elseif instead of else if. The rationale behind this is so that all control keywords look like single words. I was considering adding a boolean xhpast.elseif.single-token configuration option, but I'm not sure how value this would be?

Test Plan

Updated unit tests.

Diff Detail

Repository
rARC Arcanist
Branch
master
Lint
Lint Passed
Unit
Test Failures
Build Status
Buildable 7094
Build 7240: [Placeholder Plan] Wait for 30 Seconds
Build 7239: arc lint + arc unit

Event Timeline

joshuaspence retitled this revision from to Change ArcanistElseIfUsageXHPASTLinterRule to be PSR-2 compliant.
joshuaspence updated this object.
joshuaspence edited the test plan for this revision. (Show Details)
joshuaspence added a reviewer: epriestley.

I want to stick with else if in this codebase (rationale roughly being that the grammar is better with fewer tokens, and if we could remove all the "elseif" / "endif" / "endwhile" cruft from the grammar we would; and that the other C-like languages we use -- Javascript and C -- do not support this construct, so using "else if" is more consistent across languages). Probably adding a module and then configuring this one as disabled in your codebase is the cleanest way forward?

I'm OK with bringing the alternate module upstream. I'm also OK with having a "psr-2" mode if it requires a nontrivial number of adjustments.

joshuaspence edited edge metadata.

Allow the linter rule to be configurable such that either elseif or else if can be preferred.