Ref T2039. We're starting to get kind of a lot of linters; provide arc linters to help users review and understand them and construct .arclint files.
Details
- Reviewers
joshuaspence btrahan - Maniphest Tasks
- Restricted Maniphest Task
- Commits
- rARCe13f5839d4e8: Add 'arc linters' to list available linters and status
Diff Detail
- Repository
- rARC Arcanist
- Lint
Lint Skipped - Unit
Tests Skipped
Event Timeline
I want to look over the code in more detail in a few hours time, but this looks really good.
LGTM.
src/lint/linter/ArcanistSpellingLinter.php | ||
---|---|---|
19 | "Spell Checker" or "spellchecker"? I'm honestly not sure which is more correct. | |
src/workflow/ArcanistLintersWorkflow.php | ||
21–25 | This isn't specific to this diff, but it seems flimsy to have to provide the correct amount of indentation (and wrapping) here. It would be nicer if in this method we could just specify an (unwrapped) string and have ArcanistBaseWorkflow take care of indentation and wrapping. |
maybe I should just leave this open for a bit, seems like it's kind of a token gravy train
Actually, I noticed that you didn't provide implementations for the new methods (getInfoName etc) for some of the existing linters:
- ArcanistCppcheckLinter
- ArcanistCpplintLinter
- ArcanistCSharpLinter
- ArcanistCSSLintLinter
- ArcanistFlake8Linter
- ArcanistJSHintLinter
- ArcanistJSONLintLinter
- ArcanistLesscLinter
- ArcanistPuppetLintLinter
- ArcanistPyFlakesLinter
- ArcanistPyLintLinter
- ArcanistRubyLinter
- ArcanistScalaSBTLinter
Or was this intentional?
Oh, yeah, I just wrote enough of them to convince myself stuff was working. I'll do the other ones in a followup.
src/workflow/ArcanistLintersWorkflow.php | ||
---|---|---|
42 | Undefined variable: engine when not in workspace... |