#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 , 5 years ago
| Triage Stage: | Unreviewed → Accepted |
|---|
comment:5 by , 4 years ago
| Has patch: | set |
|---|---|
| Owner: | changed from to |
| Status: | new → assigned |
| Triage Stage: | Accepted → Ready for checkin |
comment:6 by , 4 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.
Initial PR for Django 3.2