Page MenuHomePhabricator

Modularize "arc lint" renderers
ClosedPublic

Authored by epriestley on Sep 25 2017, 9:48 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Nov 22, 11:39 PM
Unknown Object (File)
Mon, Nov 18, 6:27 PM
Unknown Object (File)
Fri, Nov 15, 12:47 PM
Unknown Object (File)
Mon, Nov 11, 8:15 PM
Unknown Object (File)
Mon, Nov 11, 8:34 AM
Unknown Object (File)
Thu, Nov 7, 9:42 AM
Unknown Object (File)
Thu, Oct 31, 1:48 AM
Unknown Object (File)
Wed, Oct 30, 11:38 PM
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