-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Insights: astral-sh/ruff
Overview
63 Pull requests merged by 18 people
-
[red-knot] Use React suspense to show loading spinner
#16986 merged
Mar 26, 2025 -
[syntax-errors] Multiple assignments in
case
pattern#16957 merged
Mar 26, 2025 -
[syntax-errors] Irrefutable case pattern before final case
#16905 merged
Mar 26, 2025 -
[
airflow
] refactor: remove unnecessarySome
incheck_method
,check_class_attribute
(AIR302
)#16975 merged
Mar 26, 2025 -
[red-knot] A
FunctionType
can be a subtype ofCallable
(but never the other way around)#16970 merged
Mar 25, 2025 -
Update dependency vite to v6.2.3
#16972 merged
Mar 25, 2025 -
[red-knot] Use
web-time
instead ofFileTime::now
#16967 merged
Mar 25, 2025 -
[red-knot] Fix panic on cyclic
*
imports#16958 merged
Mar 24, 2025 -
[red-knot] Fix gradual equivalence for callable types
#16887 merged
Mar 24, 2025 -
[red-knot] simplify "removing" in UnionBuilder::add
#16947 merged
Mar 24, 2025 -
[red-knot] Add initial support for
*
imports#16923 merged
Mar 24, 2025 -
[red-knot] Default playground to Python 3.13 for real
#16956 merged
Mar 24, 2025 -
[red-knot] Add more tests for
*
imports#16955 merged
Mar 24, 2025 -
[red-knot] Default playground to Python 3.13
#16952 merged
Mar 24, 2025 -
Update Rust crate getrandom to v0.3.2
#16939 merged
Mar 24, 2025 -
Update PyO3/maturin-action digest to 22fe573
#16932 merged
Mar 24, 2025 -
[red-knot] Demote the
negation_reverses_subtype_order
test back to flaky#16951 merged
Mar 24, 2025 -
[airflow] refactor: combine similar case condition (AIR302)
#16944 merged
Mar 24, 2025 -
Update astral-sh/setup-uv digest to 2269511
#16937 merged
Mar 24, 2025 -
Update taiki-e/install-action digest to 914ac1e
#16938 merged
Mar 24, 2025 -
[syntax-errors] Fix false positive for parenthesized tuple index
#16948 merged
Mar 24, 2025 -
[red-knot] Add settings support to playground
#16929 merged
Mar 24, 2025 -
Update actions/cache digest to 5a3ec84
#16934 merged
Mar 24, 2025 -
Update actions/upload-artifact digest to ea165f8
#16936 merged
Mar 24, 2025 -
Update Rust crate tempfile to v3.19.1
#16941 merged
Mar 24, 2025 -
Update Rust crate mimalloc to v0.1.44
#16940 merged
Mar 24, 2025 -
Update actions/download-artifact digest to 95815c3
#16935 merged
Mar 24, 2025 -
Update Swatinem/rust-cache digest to 9d47c6a
#16933 merged
Mar 24, 2025 -
Fixing more spelling errors
#16926 merged
Mar 23, 2025 -
[red-knot] Do not emit
invalid-return-type
for abstract functions#16900 merged
Mar 23, 2025 -
[
refurb
] Document whyUserDict
,UserList
,UserString
are preferred overdict
,list
,str
(FURB189
)#16927 merged
Mar 23, 2025 -
[red-knot] Disambiguate display for intersection types
#16914 merged
Mar 23, 2025 -
Fix typos
#16908 merged
Mar 23, 2025 -
[red-knot] fix ordering of
ClassDef
semantic index building#16915 merged
Mar 23, 2025 -
[
pylint
] Fix typo in documentation of PLC1802#16920 merged
Mar 23, 2025 -
Fixing various spelling errors
#16924 merged
Mar 23, 2025 -
[red-knot] Log sys-prefix origin for easier debugging
#16921 merged
Mar 23, 2025 -
[red-knot] Support calling a
typing.Callable
#16888 merged
Mar 22, 2025 -
[red-knot] Check assignability for two callable types
#16845 merged
Mar 22, 2025 -
[red-knot] Fix disambiguate display for union types
#16907 merged
Mar 22, 2025 -
[red-knot] Add line number to mdtest panic message about language tag mismatch
#16906 merged
Mar 22, 2025 -
[syntax-errors] Duplicate type parameter names
#16858 merged
Mar 21, 2025 -
[syntax-errors] Start detecting compile-time syntax errors
#16106 merged
Mar 21, 2025 -
Update replacement paths for AIR302
#16876 merged
Mar 21, 2025 -
[red-knot] Avoid false-positive diagnostics on
*
import statements#16899 merged
Mar 21, 2025 -
[red-knot] Add failing tests for
*
imports#16873 merged
Mar 21, 2025 -
[red-knot] Break up call binding into two phases
#16546 merged
Mar 21, 2025 -
Bump 0.11.2
#16896 merged
Mar 21, 2025 -
Use the common
OperatorPrecedence
for the parser#16747 merged
Mar 21, 2025 -
[red-knot] Check subtype relation between callable types
#16804 merged
Mar 21, 2025 -
[red-knot] Check whether two callable types are equivalent
#16698 merged
Mar 21, 2025 -
[red-knot] Ban most
Type::Instance
types in type expressions#16872 merged
Mar 20, 2025 -
Special-case value-expression inference of special form subscriptions
#16877 merged
Mar 20, 2025 -
[syntax-errors] Fix star annotation before Python 3.11
#16878 merged
Mar 20, 2025 -
Recognize
SyntaxError:
as an error code for ecosystem checks#16879 merged
Mar 20, 2025 -
[red-knot] add test cases result in false positive errors
#16856 merged
Mar 20, 2025 -
Bump 0.11.1
#16871 merged
Mar 20, 2025 -
Allow discovery of venv in VIRTUAL_ENV env variable
#16853 merged
Mar 20, 2025 -
Split git pathspecs in change determination onto separate lines
#16869 merged
Mar 20, 2025 -
Use the correct base commit for change determination
#16857 merged
Mar 20, 2025 -
Separate
BitXorOr
intoBitXor
andBitOr
precedence#16844 merged
Mar 20, 2025 -
Server: Allow
FixAll
action in presence of version-specific syntax errors#16848 merged
Mar 20, 2025 -
[
refurb
] Fix starred expressions fix (FURB161
)#16550 merged
Mar 19, 2025
23 Pull requests opened by 13 people
-
[red-knot] Introduce `ArbitraryRule` for property tests
#16862 opened
Mar 20, 2025 -
[pep8-naming] Flag variables bound in match patterns (N806/N815/N816)
#16882 opened
Mar 21, 2025 -
[ruff] Detect mutable defaults in dataclass `field` calls (`RUF008`)
#16883 opened
Mar 21, 2025 -
docs: Correct collections-named-tuple example to use PascalCase assignment
#16884 opened
Mar 21, 2025 -
[pylint] Avoid flattening nested min/max when outer call has single argument (PLW3301)
#16885 opened
Mar 21, 2025 -
[red-knot] Goto type definition
#16901 opened
Mar 21, 2025 -
Implement flat width limits for comprehensions
#16902 opened
Mar 21, 2025 -
[red-knot] fix eager nested scopes handling
#16916 opened
Mar 22, 2025 -
[red-knot] Discover local venv folder in cli
#16917 opened
Mar 22, 2025 -
[red-knot] Make every type a subtype of object
#16960 opened
Mar 25, 2025 -
[airflow] add autofix to AIR302 check_name
#16965 opened
Mar 25, 2025 -
[airflow] fix missing or wrong test cases (AIR302)
#16968 opened
Mar 25, 2025 -
Check `pyproject.toml` correctly when it is passed via stdin
#16971 opened
Mar 25, 2025 -
[red-knot] support narrowing on constants in matches
#16974 opened
Mar 26, 2025 -
[airflow] add autofix to AIR302 check_method
#16976 opened
Mar 26, 2025 -
[airflow] add autofix to AIR302 check_class_attribute
#16977 opened
Mar 26, 2025 -
[airflow] move AIR301 to AIR201
#16978 opened
Mar 26, 2025 -
[`flake8-type-checking`] Treat type statement value as typing references
#16981 opened
Mar 26, 2025 -
[syntax-errors] Store to or delete `__debug__`
#16984 opened
Mar 26, 2025 -
[red-knot] Add run panel
#17002 opened
Mar 26, 2025 -
wip: Add autofix for PYI051
#17003 opened
Mar 26, 2025 -
[red-knot] Reduce false positives on `super()` and enum-class attribute accesses
#17004 opened
Mar 26, 2025
34 Issues closed by 14 people
-
[red-knot] Different diagnostic output formats
#14194 closed
Mar 26, 2025 -
[red-knot] playground support
#11665 closed
Mar 26, 2025 -
[red-knot] support uv workspaces
#17000 closed
Mar 26, 2025 -
F821 "Undefined name" for Literal values
#16985 closed
Mar 26, 2025 -
[red-knot] Playknot crashes when Red-knot panics
#16890 closed
Mar 26, 2025 -
F821 (undefined name) incorrectly flags Python 3.11 forward references
#16982 closed
Mar 26, 2025 -
Consider promoting platform.system over sys.platform and os.name
#5622 closed
Mar 26, 2025 -
Weird N805 functionality when using `aenum`
#16942 closed
Mar 25, 2025 -
Red Knot playground panics when `knot.json` has a path specified
#16966 closed
Mar 25, 2025 -
Daily property test run failed on Sat Mar 22 2025
#16913 closed
Mar 24, 2025 -
False positive for starred arguments with Python 3.10
#16943 closed
Mar 24, 2025 -
[playground] Drag-and-drop inserts `$0`
#16946 closed
Mar 24, 2025 -
Configuring for Neovim - invalid client settings
#16945 closed
Mar 24, 2025 -
[red-knot] Confusing Intersection revealed type
#16911 closed
Mar 24, 2025 -
[red-knot] Protocol method return type is always inferred as `None`
#16895 closed
Mar 23, 2025 -
PLC1802 documentation
#16797 closed
Mar 23, 2025 -
[red-knot] Disambiguate display for intersection types
#16912 closed
Mar 23, 2025 -
Will be there any refactoring features in ruff lsp ?
#16897 closed
Mar 23, 2025 -
Add support for configuring indent-width from user settings in VSCode
#15741 closed
Mar 23, 2025 -
Build fails
#16910 closed
Mar 23, 2025 -
Question about fonts?
#16918 closed
Mar 22, 2025 -
[red-knot] Disambiguate display for union types
#16893 closed
Mar 22, 2025 -
[red-knot] Add line number to mdtest panic message about language tag mismatch
#16898 closed
Mar 22, 2025 -
Ruff fails to detect duplicate type parameter names
#11119 closed
Mar 21, 2025 -
No syntax error for `[(a := ...) for a in b]`
#14395 closed
Mar 21, 2025 -
[red-knot] match arguments to parameters before inferring argument types
#15460 closed
Mar 21, 2025 -
Unify `OperatorPrecedence` enums
#16071 closed
Mar 21, 2025 -
Cannot use star annotation false hit
#16891 closed
Mar 21, 2025 -
[red-knot] Recursive type aliases cause a panic
#16889 closed
Mar 21, 2025 -
[red-knot] Ban most `Type::Instance` types in type expressions
#16851 closed
Mar 20, 2025 -
Incorrect SyntaxError for `*` in strings in annotations (e.g. `Annotated`, `Literal`)
#16874 closed
Mar 20, 2025 -
Add rule to flag when a documented argument does not exist
#16875 closed
Mar 20, 2025 -
Organize imports not working due to version-specific syntax errors
#16841 closed
Mar 20, 2025
50 Issues opened by 29 people
-
[red-knot] release pipeline
#17001 opened
Mar 26, 2025 -
[red-knot] full documentation
#16999 opened
Mar 26, 2025 -
[red-knot] basic usage documentation
#16998 opened
Mar 26, 2025 -
[red-knot] support async/await and Awaitable
#16997 opened
Mar 26, 2025 -
[red-knot] context managers may silence exceptions
#16996 opened
Mar 26, 2025 -
[red-knot] supporting @typing.deprecated
#16995 opened
Mar 26, 2025 -
[red-knot] support named tuples and typing.NamedTuple
#16994 opened
Mar 26, 2025 -
[red-knot] support TypedDict (and Required, NotRequired, ReadOnly)
#16993 opened
Mar 26, 2025 -
[red-knot] support @typing.override
#16992 opened
Mar 26, 2025 -
[red-knot] support TypeVarTuple and Unpack
#16991 opened
Mar 26, 2025 -
[red-knot] support ParamSpec
#16990 opened
Mar 26, 2025 -
[red-knot] support typing.Final annotation
#16989 opened
Mar 26, 2025 -
[red-knot] support `typing.Self`, type of `self`, and type of `cls` on classmethods
#16988 opened
Mar 26, 2025 -
[red-knot] support decorators
#16987 opened
Mar 26, 2025 -
[red-knot] Calling system specific methods and possibly unbound
#16983 opened
Mar 26, 2025 -
SIM102 should be disabled for os.name and platform.system() checks (in addition to sys.platform)
#16980 opened
Mar 26, 2025 -
[red-knot] support Protocols
#16979 opened
Mar 26, 2025 -
Request: Autofix for `stub-body-multiple-statements (PYI048)` with elipsis / pass
#16973 opened
Mar 26, 2025 -
`F841 and F811` On match-case expression
#16969 opened
Mar 25, 2025 -
document side effect of FURB192
#16964 opened
Mar 25, 2025 -
`FIX` rules with expire date or deadlines
#16963 opened
Mar 25, 2025 -
Multilingual support for rules D400 and D415
#16962 opened
Mar 25, 2025 -
Adapt `DOC501` and `DOC502` to handle exception groups
#16961 opened
Mar 25, 2025 -
[red-knot] walrus expressions in a comprehension scope "leak" into the comprehension's enclosing scope
#16954 opened
Mar 24, 2025 -
[red-knot] Implement subtyping between different callable objects
#16953 opened
Mar 24, 2025 -
`pyproject.toml` is ignored when passed via stdin
#16950 opened
Mar 24, 2025 -
Ensure generator used with `contextlib.contextmanager` yields only once
#16949 opened
Mar 24, 2025 -
Ensure properties in Google-style docstrings start the correct way
#16931 opened
Mar 23, 2025 -
Ensure Google-style docstring lines end in a correct character
#16930 opened
Mar 23, 2025 -
[red-knot] detect implicit instance attributes in a generic method
#16928 opened
Mar 23, 2025 -
RET503 reported for method returning None only
#16925 opened
Mar 23, 2025 -
PyUpgrade rule UP007 should be disabled on older Pythons
#16922 opened
Mar 22, 2025 -
[red-knot] Provide context on why an assignment failed
#16919 opened
Mar 22, 2025 -
Catch string format requires a mapping
#16909 opened
Mar 22, 2025 -
SIM110: Recommend proper usage of `all` and `any`
#16904 opened
Mar 21, 2025 -
[Panic] ruff crashes when executed from a deleted folder on mac
#16903 opened
Mar 21, 2025 -
[red-knot] Support narrowing on attribute and subscript expressions
#16894 opened
Mar 21, 2025 -
Disable private-member-access in the tests folder
#16892 opened
Mar 21, 2025 -
Types assigned to a type alias should be moved under type checking block
#16886 opened
Mar 21, 2025 -
[red-knot] Explore alternate implementation for callable type equivalence
#16881 opened
Mar 21, 2025 -
[red-knot] enforce Liskov on subclasses
#16880 opened
Mar 20, 2025 -
[red-knot] enforce type of `ClassVar` in subclasses
#16870 opened
Mar 20, 2025 -
non-unique-enums (PIE796): false positive
#16868 opened
Mar 20, 2025 -
Stabilize `PLR0917`
#16867 opened
Mar 20, 2025 -
Consider using `bitflags` or otherwise unify booleans on `LinterResult` and `Parsed`
#16866 opened
Mar 20, 2025 -
B909 misses dict.keys() deletion
#16865 opened
Mar 20, 2025 -
SQLAlchemy lint rules
#16864 opened
Mar 20, 2025 -
How to check 'missing type annotation for function arguments' only for public functions?
#16863 opened
Mar 20, 2025 -
Check for missing arguments
#16860 opened
Mar 19, 2025 -
RUF009 misses function call in dataclass default
#16859 opened
Mar 19, 2025
38 Unresolved conversations
Sometimes conversations happen on old items that aren’t yet closed. Here is a list of all the Issues and Pull Requests with unresolved conversations.
-
[red-knot] detect unreachable attribute assignments
#16852 commented on
Mar 24, 2025 • 9 new comments -
Request: Autofix for `redundant-numeric-union`/`PYI041` & `redundant-literal-union`/`PYI051`
#14185 commented on
Mar 24, 2025 • 0 new comments -
Implement flake8-broken-line
#3465 commented on
Mar 24, 2025 • 0 new comments -
[red-knot] support * imports
#14169 commented on
Mar 24, 2025 • 0 new comments -
D417 Argument descriptions only required if there is an "Args" section
#2310 commented on
Mar 25, 2025 • 0 new comments -
DTZ007 - arguably a false positive
#13359 commented on
Mar 25, 2025 • 0 new comments -
Implement Pylint
#970 commented on
Mar 25, 2025 • 0 new comments -
Cannot find ruff when used in a venv with --system-site-packages
#15630 commented on
Mar 25, 2025 • 0 new comments -
Airflow 3.0 deprecations
#14626 commented on
Mar 26, 2025 • 0 new comments -
[red-knot] instance attributes
#14164 commented on
Mar 26, 2025 • 0 new comments -
[red-knot] Configuration
#15491 commented on
Mar 26, 2025 • 0 new comments -
C0103/N815: Constant names are not checked against UPPER_CASE naming convention
#2964 commented on
Mar 26, 2025 • 0 new comments -
☂️ Syntax errors raised by the compiler
#11934 commented on
Mar 26, 2025 • 0 new comments -
[red-knot] calls to functions returning `Never`/`NoReturn` are terminal
#16700 commented on
Mar 26, 2025 • 0 new comments -
Dependency Dashboard
#10578 commented on
Mar 26, 2025 • 0 new comments -
[red-knot] Add `__init__` arguments check when doing `try_call` on a class literal
#16512 commented on
Mar 24, 2025 • 0 new comments -
Create `TypeVarInstance` type for legacy typevars
#16538 commented on
Mar 21, 2025 • 0 new comments -
[red-knot] Factor out shared unpacking logic
#16595 commented on
Mar 25, 2025 • 0 new comments -
[perflint] implement quick-fix for manual-dict-comprehension (PERF403)
#16719 commented on
Mar 25, 2025 • 0 new comments -
SWAP and MISSING flake8-annotations (ANN)
#16854 commented on
Mar 19, 2025 • 0 new comments -
Add `--selector` option for `ruff rule`
#16030 commented on
Mar 20, 2025 • 0 new comments -
Implement ANN402
#4460 commented on
Mar 20, 2025 • 0 new comments -
`D102` for "inherited" docstrings.
#2413 commented on
Mar 20, 2025 • 0 new comments -
[red-knot] type context (bidirectional checking)
#16838 commented on
Mar 20, 2025 • 0 new comments -
[red-knot] Go to definition
#16733 commented on
Mar 20, 2025 • 0 new comments -
[red-knot] Non-deferred self-references in annotations
#16341 commented on
Mar 20, 2025 • 0 new comments -
How to avoid checking for problems in VSCODE interactive
#14820 commented on
Mar 21, 2025 • 0 new comments -
Pyspark Linting Rules
#7272 commented on
Mar 21, 2025 • 0 new comments -
Consider removing PD901
#7710 commented on
Mar 21, 2025 • 0 new comments -
[red-knot] Discovery of local venv
#16744 commented on
Mar 21, 2025 • 0 new comments -
Rewrite `os.environ.get` as `os.getenv`
#3608 commented on
Mar 22, 2025 • 0 new comments -
[red-knot] support type aliases (PEP 695, typing.TypeAlias, and bare/implicit)
#15384 commented on
Mar 22, 2025 • 0 new comments -
[red-knot] Support callable types and `typing.Callable`
#15382 commented on
Mar 22, 2025 • 0 new comments -
[red-knot] Change range for `unresolved-attribute` error to attribute
#16828 commented on
Mar 23, 2025 • 0 new comments -
Seeking improved pytest rules, as `flake8-pytest-style` doesn't align with best practices
#8796 commented on
Mar 24, 2025 • 0 new comments -
`E501` and `W505` compatibility?
#16577 commented on
Mar 24, 2025 • 0 new comments -
Rule to enforce import module only
#3045 commented on
Mar 24, 2025 • 0 new comments -
[red-knot] special-case returning NotImplemented
#16661 commented on
Mar 24, 2025 • 0 new comments