From f4bbc33f1a5c3b260ad4aca3e7232f7153544c7d Mon Sep 17 00:00:00 2001 From: Takeshi KOMIYA Date: Sat, 29 Jun 2019 10:38:17 +0900 Subject: [PATCH] format_date(): use "aware" local datetime by default (refs: #6528) This gives system timezone information to default value of ``format_date()``. And it does not modifies the timestamp to UTC. --- sphinx/util/i18n.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sphinx/util/i18n.py b/sphinx/util/i18n.py index d0b2fa1e2..bfd43e19e 100644 --- a/sphinx/util/i18n.py +++ b/sphinx/util/i18n.py @@ -12,7 +12,7 @@ import os import re import warnings from collections import namedtuple -from datetime import datetime +from datetime import datetime, timezone from os import path from typing import Callable, Generator, List, Set, Tuple @@ -274,7 +274,7 @@ def format_date(format: str, date: datetime = None, language: str = None) -> str if source_date_epoch is not None: date = datetime.utcfromtimestamp(float(source_date_epoch)) else: - date = datetime.utcnow() + date = datetime.now(timezone.utc).astimezone() result = [] tokens = date_format_re.split(format)