python / python/cpython

datetime.astimezone() returns DST name for negative timestamp on Windows

Offen
#148,658 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

interpreter-core OS-windows type-bug
Vorherrschende Sprache
Python
Sterne
77.2k
Forks
35.9k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

Bug report

Bug description:
PS C:\Users\yukih\Downloads> .\python-3.15.0a8-embed-amd64\python.exe
WARN: Could not find the platform standard library directory! The Python 'home' directory was set to 'C:\\Users\\yukih\\Downloads\\python-3.15.0a8-embed-amd64', is this correct?
Python 3.15.0a8 (tags/v3.15.0a8:55ea59e, Apr  7 2026, 14:21:25) [MSC v.1950 64 bit (AMD64)] on win32
>>> from datetime import datetime
>>>
>>> datetime.fromtimestamp(-1).astimezone()
datetime.datetime(1970, 1, 1, 8, 59, 59, tzinfo=datetime.timezone(datetime.timedelta(seconds=32400), 'Tokyo Daylight Time'))
>>>
>>> datetime.fromtimestamp(0).astimezone()
datetime.datetime(1970, 1, 1, 9, 0, tzinfo=datetime.timezone(datetime.timedelta(seconds=32400), 'Tokyo Standard Time'))

I expected "Tokyo Standard Time".

CPython versions tested on:

3.15

Operating systems tested on:

Windows

Linked PRs
  • gh-148673

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die Fälle mit negativen und null Zeitstempeln unter Windows mit datetime.fromtimestamp(...).astimezone() zu reproduzieren, und untersuche anschließend den Einstiegspunkt datetime.astimezone sowie den verknüpften PR gh-148673. Als erledigt gilt die Aufgabe, wenn der negative Zeitstempel den erwarteten Namen "Tokyo Standard Time" meldet, ohne das Verhalten für den Zeitstempel null zu beeinträchtigen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
backend, operating-systems
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
20/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.