Page MenuHomePhabricator

Modularize "arc lint" renderers
ClosedPublic

Authored by epriestley on Sep 25 2017, 9:48 PM.
Tags
None
Referenced Files
F13194989: D18645.diff
Sun, May 12, 10:02 PM
F13177738: D18645.diff
Wed, May 8, 7:55 PM
Unknown Object (File)
Tue, Apr 30, 12:47 PM
Unknown Object (File)
Mon, Apr 29, 4:32 PM
Unknown Object (File)
Thu, Apr 25, 12:10 AM
Unknown Object (File)
Fri, Apr 19, 11:45 AM
Unknown Object (File)
Wed, Apr 17, 6:30 PM
Unknown Object (File)
Tue, Apr 16, 6:26 AM
Subscribers
None

Details

Summary

Ref T12996. arc lint can render in different formats with --output <format>.

Previously, these were a big switch() statement and a bunch of hard-coded stuff.

Modularize them so that that third parties could add new renderers, and this code can be refactored toward parallelizing the lint step.

This has a small behavioral change: we no longer hide "autofix" messages. I'd like to generally simplify the number of amend/autofix flags here, so this edges us toward that slightly.

Test Plan

Ran arc lint with all the --output flags in states with warnings and no warnings, saw sensible-seeming behavior.

Diff Detail

Repository
rARC Arcanist
Branch
ll6
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 18542
Build 24978: Run Core Tests
Build 24977: arc lint + arc unit