You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add support for globally configuring the error severity level of custom lint rules through the analysis_options.yaml file. This feature would allow users to customize the severity of lint rules without modifying the original lint code or creating a fork.
Current Behavior
Currently, error severity can only be set in two ways (correct me if I am wrong):
When creating a LintCode instance within the lint rule implementation:
Through custom rule configurations in analysis_options.yaml:
custom_lint:
rules:
- example:
error_severity: info
Proposed Behavior
Add a new configuration option in analysis_options.yaml that works similar to the standard Dart analyzer's errors section:
custom_lint:
errors:
example: info
This would override the default error severity defined in the LintCode class for the rule.
Benefits
Consistent with Dart's native analyzer configuration pattern
Allows users to adjust error severity without modifying lint rule implementations
Facilitates the gradual adoption of custom lint in complex projects
Avoids the need to fork third-party lint packages just to change severity levels
My Use Case
I'm introducing custom_lint in a complex client project spread across multiple repositories. Adding custom lints with default ErrorSeverity.WARNING or ErrorSeverity.ERROR would impede development by suddenly introducing many warnings or errors.
I want to introduce these lints gradually:
Initially set all lints to info severity level so they don't block the workflow
Progressively raise severity to warning as the team addresses issues
Since some lint rules are from third-party packages, I can't easily modify their source code to adjust the default severity. Without this feature, I would need to fork these packages, which is maintenance overhead I'd prefer to avoid.
Implementation Details
The errorSeverity in the LintCode class would remain as a fallback value
A new error configuration parser would check the custom_lint.errors section in analysis_options.yaml
If a rule name is found in this section, its configured severity would take precedence over the default
Examples
analyzer:
plugins:
- custom_lintcustom_lint:
rules:
- example: trueerrors:
example: info
The text was updated successfully, but these errors were encountered:
Request
Add support for globally configuring the error severity level of custom lint rules through the
analysis_options.yaml
file. This feature would allow users to customize the severity of lint rules without modifying the original lint code or creating a fork.Current Behavior
Currently, error severity can only be set in two ways (correct me if I am wrong):
When creating a LintCode instance within the lint rule implementation:
Through custom rule configurations in
analysis_options.yaml
:Proposed Behavior
Add a new configuration option in
analysis_options.yaml
that works similar to the standard Dart analyzer's errors section:This would override the default error severity defined in the LintCode class for the rule.
Benefits
My Use Case
I'm introducing
custom_lint
in a complex client project spread across multiple repositories. Adding custom lints with defaultErrorSeverity.WARNING
orErrorSeverity.ERROR
would impede development by suddenly introducing many warnings or errors.I want to introduce these lints gradually:
info
severity level so they don't block the workflowSince some lint rules are from third-party packages, I can't easily modify their source code to adjust the default severity. Without this feature, I would need to fork these packages, which is maintenance overhead I'd prefer to avoid.
Implementation Details
custom_lint.errors
section inanalysis_options.yaml
Examples
The text was updated successfully, but these errors were encountered: