Replies: 2 comments 4 replies
-
We currently have 'none', 'default', and 'all'. IMO:
Concretely, I suggest:
'none' might not make sense depending on what we end up doing (or not doing) for #423 |
Beta Was this translation helpful? Give feedback.
-
(Copied from #425 (comment)) I think we should separate policy from mechanism; separate interfaces from engines. Essentially, the linter engine requires the following function: type ErrorCode = int | classname<SingleRuleLinter>;
function shouldReportErrorFromFile(ErrorCode $error_code, string $path): bool; And we can provide some policy functions to group error codes: function isCodeSmell(ErrorCode $error_code): bool;
function isPHPFlavored(ErrorCode $error_code): bool;
function isFacebookFlavored(ErrorCode $error_code): bool; If we could allow users to create the |
Beta Was this translation helpful? Give feedback.
-
Related to: Versioning of named linter groups ('builtinLinters' option)
This discussion is both about the implementation details of how groups should work at a code level, as well as a discussion about which groups would be appropriate to split the built-in linters into.
Important design considerations:
evil-corp/yaml-parser
can add an evil linter to my hhast runs. This would allow evil-corp to run arbitrary shell commands on my machine without my consent."whitespace-linters": <1.4
is a useful constraint.Beta Was this translation helpful? Give feedback.
All reactions