I have a project with arcanist setup along with phabricator for version control and code review management. There is a neat .arclint configuration setup currently using a mix of inbuilt linters (like filename) and external linters like cpplint, with setup for includes and excludes done.
What is the best way to get this linter setup to a bitbucket-based tool doing the same thing? Essentially, is there a way to know how arc lint converts a .arclint file configuration to a command line argument with specifications of including files and severity warnings?
I can use git to figure out a list of files changed, which is already part of arc lint, but I still want to understand what magic is arc lint running underneath to run the specific linter. And I know how bitbucket-pipelines work to run lint before every new merge.
Here is a part of .arclint which I am trying to replicate
"linters": {
"chmod": {
"type": "chmod"
},
"filename": {
"type": "filename"
},
"merge-conflict": {
"type": "merge-conflict"
},
"json": {
"type": "json",
"include": [
"(^\\.arcconfig$)",
"(^\\.arclint$)",
"(\\.json$)"
]
},
"nolint": {
"type": "nolint"
},
"xml": {
"type": "xml",
"include": [
"(\\.xml$)"
]
},
"cpplinth": {
"type": "cpplint",
"bin" : ["dev_tools/cpplint.py"],
"include": [
"(\\.h$)",
"(\\.hpp$)"
],