Skip to content

Consider ruff for linting and replace Flake8 with it #14817

@Adriani90

Description

@Adriani90

Is your feature request related to a problem? Please describe.

Flake8 is a very popular linter, but it is extrelmely slow and it checks every time all files, even if they have not been changed.
It also lacks of relevant rules and the development activity is slowing down.

Describe the solution you'd like

Ruff is a very promising alternative, combining Pylint, Flake8 and other linters in one very fast environment. It can be configured so it checks only files that have been changed when sending a pull request.
https://github.com/charliermarsh/ruff
Its development team is very active and already many projects are using it especially because it provides a good mix of many linters out there and still it is very fast.
It has also a flake8 Gettext plugin included, so translatable strings could also be linted.

Describe alternatives you've considered

Leave as it is.

Additional context

n/a

Metadata

Metadata

Assignees

No one assigned

    Labels

    audience/nvda-devPR or issue is relevant to NVDA / Add-on developersblocked/needs-infoThe issue can not be progressed until more information is provided.needs-triagerelease/blockingthis issue blocks the milestone release

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions