HomePhabricator

Modularize "arc lint" renderers

Description

Modularize "arc lint" renderers

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.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T12996

Differential Revision: https://secure.phabricator.com/D18645

Details

Provenance
epriestleyAuthored on Sep 25 2017, 8:31 PM
epriestleyPushed on Sep 27 2017, 5:24 PM
Reviewer
amckinley
Differential Revision
D18645: Modularize "arc lint" renderers
Parents
rARCa053fcc4d51b: Remove "arc lint --only-changed"
Branches
Unknown
Tags
Unknown
Tasks
T12996: Parallelize substages of `arc diff`
Build Status
Buildable 18562
Build 25006: Run Core Tests