-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add default linter rules #11415
Comments
Hi! We're going to recategorize all of the rules (roughly discussed in #1774) and define new defaults eventually. We're actively working on this, but I'm not sure when we'll be done because it's a big project and we want to get it right. |
Similarly, this request fits into #1773 which is a part of that effort. |
@zanieb Do you think this can be merged into either of the linked issue? |
I'm okay with keeping it open for now unless there's a duplicate issue regarding defaults. We should add a dedicated tracking issue for the full re-categorization work eventually. |
Should we include default rules for some project types? For instance, there're FastAPI rules (https://docs.astral.sh/ruff/rules/#fastapi-fast). It's a library very used, but I don't know if Ruff knows if a package ( |
Idea: how about declaring the rule "strict" as an alias for the linter rules I posted? [tool.ruff.lint]
select = ["strict"] This aligns with Pyright: [tool.pyright]
typeCheckingMode = "strict" |
I'll link to #12352 and #3363 (reply in thread) as well. With which you could make your own custom defaults for your needs and "levels of strictness" |
In my company we have lots of microservices and nanoservices, and a Python project prototype I maintain to guide how Python projects must be developed and updated.
It's a common complaint not to have default rules in our
pyproject.toml
files, and instead have "magic letters" just because "I chose them".My job is to ensure data engineers develop software as we do in .NET, i.e. with types.
I want to propose a group of default linter rules, and choose them with groups (letters), instead of choosing a subset.
pyproject.toml
Reasoning of
select
:==
, etc.Reasoning of
ignore
:self
andcls
is strange in Python.Any
.Besides, I always use this configuration:
The text was updated successfully, but these errors were encountered: