We are currently using the Arcanist built-in
ArcanistConfigurationDrivenLintEngine, which parses the .arclint
file to build the list of the linters to run and their associated paths
to lint.
This diffs introduces a new BitcoinABCConfigurationDrivenLintEngine
and use it as a replacement.
It works exactly the same, because it is basically a copy/paste of the
arcanist lint engine, but it can be extended (the arcanist one is
final).
The ability to extend is a first step to allow running some linters
sequentially, which is required to solve the autofix conflicts issue
with clang-format and autopep8.
Arcanist ArcanistConfigurationDrivenLintEngine class:
https://secure.phabricator.com/diffusion/ARC/browse/master/src/lint/engine/ArcanistConfigurationDrivenLintEngine.php