Fix #19491, crash when using enable_error_code value of wrong type in pyproject.toml#19494
Merged
hauntsaninja merged 11 commits intopython:masterfrom Aug 8, 2025
Merged
Fix #19491, crash when using enable_error_code value of wrong type in pyproject.toml#19494hauntsaninja merged 11 commits intopython:masterfrom
hauntsaninja merged 11 commits intopython:masterfrom
Conversation
This comment has been minimized.
This comment has been minimized.
sterliakov
reviewed
Jul 25, 2025
Co-authored-by: Stanislav Terliakov <50529348+sterliakov@users.noreply.github.com>
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
This comment has been minimized.
This comment has been minimized.
Contributor
Author
|
The fact that we're now raising an error instead of allowing the value to go through and yet the test apparently still passes makes me wonder if the test is wrong. Or maybe I just got lucky and the implications of raising an error result in the same error message and thus pass the test the same way. |
sterliakov
suggested changes
Jul 30, 2025
This comment has been minimized.
This comment has been minimized.
This was referenced Jul 31, 2025
wyattscarpenter
commented
Aug 1, 2025
Ah, this should be object, not Any, shouldn't it? And while I'm at it, I can simplify the split regex
This comment has been minimized.
This comment has been minimized.
sterliakov
approved these changes
Aug 1, 2025
Collaborator
sterliakov
left a comment
There was a problem hiding this comment.
Looks great, thanks!
hauntsaninja
reviewed
Aug 2, 2025
I'm committing this because it's very convenient through the web interface, but I will presumably have to make a second commit to change the test output that depends on this Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
wyattscarpenter
commented
Aug 3, 2025
…st change for friendlier error message
Contributor
|
According to mypy_primer, this change doesn't affect type check results on a corpus of open source code. ✅ |
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.
Fixes #19491
If you give a string in toml, you get Invalid error code(s): whatever. However, if you give a value that doesn't mean a string in toml, you get a crash like TypeError: 'int' object is not iterable.
I suspect this would also apply to many other pyproject.toml values if you set them wrong, because we pass many of them immediately into try_split, which tries to iterate them.
I have added a (fairly minimal) test for this behavior.