#32365 closed New feature (fixed)
Update timezone implementation to use zoneinfo
Reported by: | Carlton Gibson | Owned by: | Carlton Gibson |
---|---|---|---|
Component: | Utilities | Version: | 3.1 |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Ready for checkin | |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
Python 3.9 introduced zoneinfo
timezone objects, with backports available to Python 3.6.
As per discussion on mailing list we will adopt zoneinfo
in Django 4.0, using a pytz
compatibility shim for those who need it until Django 5.0.
In addition, as per follow-up discussion, we will make it possible to use zoneinfo
objects from Django 3.2, leaving any handling of DST changes to early-adopter user code. (make_aware()
's is_dst
likely to be deprecated in Django 4.0 — see follow-up discussion and comment on initial PR.)
Change History (14)
comment:2 by , 4 years ago
Triage Stage: | Unreviewed → Accepted |
---|
comment:5 by , 3 years ago
Has patch: | set |
---|---|
Owner: | changed from | to
Status: | new → assigned |
Triage Stage: | Accepted → Ready for checkin |
comment:6 by , 3 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
In 306607d5b99b6eca6ae2c1e726d8eb32b9b2ca1b:
Fixed #32365 -- Made zoneinfo the default timezone implementation.
Thanks to Adam Johnson, Aymeric Augustin, David Smith, Mariusz Felisiak, Nick
Pope, and Paul Ganssle for reviews.
Original PoC PR to open discussion
Initial PR for Django 3.2