diff --git a/sphinx/builders/html/__init__.py b/sphinx/builders/html/__init__.py index 922397bd4..db0c9247b 100644 --- a/sphinx/builders/html/__init__.py +++ b/sphinx/builders/html/__init__.py @@ -9,7 +9,7 @@ import re import sys import warnings import zlib -from datetime import datetime +from datetime import datetime, timezone from os import path from typing import IO, Any, Iterable, Iterator, List, Tuple, Type from urllib.parse import quote @@ -432,10 +432,11 @@ class StandaloneHTMLBuilder(Builder): logger.debug( '[build target] targetname %r(%s), template(%s), docname %r(%s)', targetname, - datetime.utcfromtimestamp(targetmtime), - datetime.utcfromtimestamp(template_mtime), + datetime.fromtimestamp(targetmtime, tz=timezone.utc), + datetime.fromtimestamp(template_mtime, tz=timezone.utc), docname, - datetime.utcfromtimestamp(path.getmtime(self.env.doc2path(docname))), + datetime.fromtimestamp(path.getmtime(self.env.doc2path(docname)), + tz=timezone.utc), ) yield docname except OSError: diff --git a/sphinx/util/i18n.py b/sphinx/util/i18n.py index 268633200..177f42840 100644 --- a/sphinx/util/i18n.py +++ b/sphinx/util/i18n.py @@ -193,9 +193,9 @@ def format_date( # See https://wiki.debian.org/ReproducibleBuilds/TimestampsProposal source_date_epoch = os.getenv('SOURCE_DATE_EPOCH') if source_date_epoch is not None: - date = datetime.utcfromtimestamp(float(source_date_epoch)) + date = datetime.fromtimestamp(float(source_date_epoch), tz=timezone.utc) else: - date = datetime.now(timezone.utc).astimezone() + date = datetime.now(tz=timezone.utc).astimezone() result = [] tokens = date_format_re.split(format)