Repository navigation
[pycodestyle] Don't treat None, True, or False as keywords (E271-E274) - #29322
Merged
Merged
Conversation
|
| code | total | + violation | - violation | + fix | - fix |
|---|---|---|---|---|---|
| multiple-spaces-before-keyword | 16 | 0 | 16 | 0 | 0 |
| RUF100 | 1 | 1 | 0 | 0 | 0 |
ntBre
approved these changes
Oct 13, 2026
pycodestyle] Don't treat None, True, or False as keywords (E271-E274)
ntBre
enabled auto-merge (squash)
October 13, 2026 14:14
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
pycodestyle excludes None, True and False from its keyword list (KEYWORDS = kwlist - SINGLETONS), but ruff was still flagging whitespace around them in E271-E274. E275 already handles this correctly, so I just added the same
!is_singleton()check in whitespace_around_keywords.rs.The example from the issue used to give E272, now it passes. Two existing fixture cases (
True and FalseandTrue\t\tand\tFalse) now report what pycodestyle reports, so I moved them under their own#:headers and added a few new cases to E27.py.cargo test -p ruff_linter passes and clippy is clean.
E225/E226 seem to have the same mismatch. I left that out to keep this small, happy to open a separate issue.
I used an AI assistant while working on this. I went through the change myself and checked it against pycodestyle.
Fixes #29215