Repository navigation
Recognize naive datetimes with an offsetless tzinfo - #474
Open
KennyMcSimpson wants to merge 1 commit into
Open
KennyMcSimpson wants to merge 1 commit into
KennyMcSimpson wants to merge 1 commit into
Conversation
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.
Python defines a datetime as naive when its
tzinfo.utcoffset(value)returnsNone, even iftzinfoitself is set (official definition). Humanize currently checks onlytzinfo is not None:naturalday()andnaturaldate()fall back to the raw datetime string, whilenaturaltime()raisesTypeError: can't subtract offset-naive and offset-aware datetimesfor this valid naive input.Use
utcoffset() is not Nonein the three awareness checks. Add regressions comparing these datetimes with the same wall-clock value after removingtzinfo, controls for ordinary naive and genuinely aware UTC datetimes, and coverage fornaturaltime()'svalueandwhenarguments independently and together. No exception handling is broadened.Validation on Windows / Python 3.13:
prekpassed every applicable hook exceptvalidate-pyproject: its installed package is missingpyproject_toml.schema.jsonand crashes before validating the unchanged project configuration.Developed with OpenAI Codex assistance.