..
airflow
[`airflow`] Add unsafe fix for module moved cases (`AIR312`) ( #18363 )
2025-05-30 09:36:20 -04:00
control-flow-graph
[`pylint`] Fix `unreachable` infinite loop (`PLW0101`) ( #15278 )
2025-01-08 09:45:04 -06:00
eradicate
[`eradicate`] Correctly handle metadata blocks directly followed by normal blocks (`ERA001`) ( #15330 )
2025-01-07 16:22:22 -05:00
fastapi
[`fastapi`] Avoid false positive for class dependencies (`FAST003`) ( #18271 )
2025-06-02 14:34:50 -04:00
filesystem
Rename `ruff` crate to `ruff_linter` ( #7529 )
2023-09-20 08:38:27 +02:00
flake8_2020
Rename `ruff` crate to `ruff_linter` ( #7529 )
2023-09-20 08:38:27 +02:00
flake8_annotations
[ruff 0.8] [`flake8-annotations`] Remove deprecated rules ANN101 and ANN102 ( #14384 )
2024-11-20 13:11:51 +01:00
flake8_async
[flake8_async] Refactor argument name resolution for async sleep func… ( #18262 )
2025-05-26 09:53:03 +00:00
flake8_bandit
Implement template strings ( #17851 )
2025-05-30 15:00:56 -05:00
flake8_blind_except
Respect logged and re-raised expressions in nested statements ( #11301 )
2024-05-05 21:52:09 -04:00
flake8_boolean_trap
FBT001: exclude boolean operators ( #14203 )
2024-11-10 22:40:37 +00:00
flake8_bugbear
Fix false positive in for mutations in return statements (B909) ( #18408 )
2025-06-13 10:39:55 -04:00
flake8_builtins
[flake8-builtins] Ignore variables matching module attribute names (A001) ( #16454 )
2025-03-03 11:10:23 +01:00
flake8_commas
Enable token-based rules on source with syntax errors ( #11950 )
2024-07-02 08:57:46 +00:00
flake8_comprehensions
[flake8-comprehensions]: Handle trailing comma in C403 fix ( #16110 )
2025-02-15 11:45:41 -06:00
flake8_datetimez
[`flake8-datetime`] Ignore `.replace()` calls while looking for `.astimezone` ( #16050 )
2025-02-09 15:48:59 +00:00
flake8_debugger
[`flake8-debugger`] Also flag `sys.breakpointhook` and `sys.__breakpointhook__` (`T100`) ( #16191 )
2025-02-16 14:50:16 -05:00
flake8_django
[`flake8-django`] Recognize other magic methods (`DJ012`) ( #15365 )
2025-01-09 14:36:42 +01:00
flake8_errmsg
Allow `EM` fixes even if `msg` variable is defined ( #9059 )
2023-12-08 15:16:15 -06:00
flake8_executable
[`flake8-executables`] Allow `uv run` in shebang line for `shebang-missing-python` (`EXE003`) ( #16849 )
2025-03-19 10:35:07 -05:00
flake8_fixme
Fix TODO directive out of bounds acccess ( #13756 )
2024-10-15 10:49:53 +02:00
flake8_future_annotations
Avoid flagging `__future__` annotations as required for non-evaluated type annotations ( #11414 )
2024-05-21 18:57:13 +00:00
flake8_gettext
Rename `ruff` crate to `ruff_linter` ( #7529 )
2023-09-20 08:38:27 +02:00
flake8_implicit_str_concat
Add Autofix for ISC003 ( #18256 )
2025-05-28 09:30:51 +02:00
flake8_import_conventions
[flake8-import-conventions] Add import `numpy.typing as npt` to default `flake8-import-conventions.aliases` ( #17133 )
2025-04-02 09:25:46 +02:00
flake8_logging
[`flake8-logging`] `.exception()` and `exc_info=` outside exception handlers (`LOG004`, `LOG014`) ( #15799 )
2025-02-04 09:52:12 +01:00
flake8_logging_format
Include inline instantiations when detecting loggers ( #11154 )
2024-04-25 21:00:12 -04:00
flake8_no_pep420
Skip namespace package enforcement for PEP 723 scripts ( #13974 )
2024-10-29 02:11:31 +00:00
flake8_pie
[`flake8-pie`] Mark autofix for `PIE804` as unsafe if the dictionary contains comments ( #18046 )
2025-05-12 10:16:59 -05:00
flake8_print
Rename `ruff` crate to `ruff_linter` ( #7529 )
2023-09-20 08:38:27 +02:00
flake8_pyi
[`flake8-pyi`] Fix `custom-typevar-for-self` with string annotations (`PYI019`) ( #18311 )
2025-06-16 10:47:17 -04:00
flake8_pytest_style
[`flake8-pytest-style`] Don't recommend `usefixtures` for parametrize values in `PT019` ( #17650 )
2025-05-14 10:31:42 -04:00
flake8_quotes
Implement template strings ( #17851 )
2025-05-30 15:00:56 -05:00
flake8_raise
Avoid false-positives for parens-on-raise with futures.exception() ( #10206 )
2024-03-03 00:28:51 +00:00
flake8_return
[`flake8-return`] Fix `RET504` autofix generating a syntax error ( #18428 )
2025-06-11 13:38:42 +00:00
flake8_self
[`flake8-self`] Ignore attribute accesses on instance-like variables (`SLF001`) ( #16149 )
2025-02-23 10:00:49 +00:00
flake8_simplify
[`flake8-simplify`] Correct behavior for `str.split`/`rsplit` with `maxsplit=0` (`SIM905`) ( #18075 )
2025-05-14 14:20:18 -04:00
flake8_slots
Avoid recommending `__slots__` for classes that inherit from more than `namedtuple` ( #12531 )
2024-07-26 14:24:40 +00:00
flake8_tidy_imports
Rename `ruff` crate to `ruff_linter` ( #7529 )
2023-09-20 08:38:27 +02:00
flake8_todos
[`flake8-todos`] Allow VSCode GitHub PR extension style links in `missing-todo-link` (`TD003`) ( #15519 )
2025-01-15 23:47:33 +00:00
flake8_type_checking
Fixes how the checker visits `typing.cast`/`typing.NewType` arguments ( #17538 )
2025-04-23 09:26:00 +02:00
flake8_unused_arguments
Consider `__new__` methods as special function type for enforcing class method or static method rules ( #13305 )
2025-02-16 14:12:25 -06:00
flake8_use_pathlib
[flake8_use_pathlib]: Replace os.symlink with Path.symlink_to (PTH211) ( #18337 )
2025-05-28 12:39:05 +02:00
flynt
Rename `ruff` crate to `ruff_linter` ( #7529 )
2023-09-20 08:38:27 +02:00
isort
enforce required imports even with useless alias ( #14287 )
2024-11-14 15:39:38 -06:00
mccabe
Rename `ruff` crate to `ruff_linter` ( #7529 )
2023-09-20 08:38:27 +02:00
numpy
Ignore `NPY201` inside `except` blocks for compatibility with older numpy versions ( #12490 )
2024-07-24 20:03:23 +00:00
pandas_vet
Limit inplace diagnostics to methods that accept inplace ( #9495 )
2024-01-12 14:12:54 -05:00
pep8_naming
[`pep8-naming`] Suppress fix for `N804` and `N805` if the recommend name is already used ( #18472 )
2025-06-11 07:58:55 +02:00
perflint
[`perflint`] fix missing parentheses for lambda and ternary conditions (PERF401, PERF403) ( #18412 )
2025-06-05 09:57:08 -05:00
pycodestyle
[`pycodestyle`] Fix `E731` autofix creating a syntax error for expressions spanned across multiple lines ( #18479 )
2025-06-13 08:44:15 +02:00
pydoclint
Fix typos found by codespell ( #14863 )
2024-12-09 09:32:12 +00:00
pydocstyle
[`pydocstyle`] Handle arguments with the same names as sections (`D417`) ( #16011 )
2025-02-11 12:05:29 -05:00
pyflakes
[ty] Don't warn `yield` not in function when `yield` is in function ( #18008 )
2025-05-21 18:16:25 +02:00
pygrep_hooks
Respect per-file ignores for blanket and redirected noqa rules ( #11728 )
2024-06-04 03:57:59 +00:00
pylint
[pylint] Fix `PLW0128` to check assignment targets in square brackets and after asterisks ( #18665 )
2025-06-16 15:02:30 -04:00
pyupgrade
[`pyupgrade`] Suppress `UP008` diagnostic if `super` symbol is not builtin ( #18688 )
2025-06-16 15:09:31 -04:00
refurb
[`refurb`] Make the fix for `FURB163` unsafe for `log2`, `log10`, `*args`, and deleted comments ( #18645 )
2025-06-16 18:13:47 +00:00
ruff
[`ruff`] Check for non-context-manager use of `pytest.raises`, `pytest.warns`, and `pytest.deprecated_call` (`RUF061`) ( #17368 )
2025-06-16 13:03:54 -04:00
syntax_errors
[semantic-syntax-tests] Add test fixtures for `AwaitOutsideAsyncFunction` ( #17785 )
2025-05-05 14:02:06 -04:00
tryceratops
Recode `TRY302` to `TRY203` ( #13502 )
2024-10-17 16:35:12 +01:00
__init__.py
[`pylint`] (Re-)Implement `import-private-name` (`C2701`) ( #9553 )
2024-01-16 14:03:11 -05:00