From eaf2b68e8476c3408aec41d61533fb3d6e1d1ef6 Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Fri, 1 Mar 2024 19:16:29 +0200 Subject: [PATCH] gh-116035: Document that both tzinfo and fold are ignored in comparisons if tzinfo is the same (GH-116187) This mostly restores information removed in c12240ed28aac6494750e00143bc550c4d6d8ad1 (GH-114749). (cherry picked from commit 05b04903a14279421ecdc6522b8202822de6ebb5) Co-authored-by: Serhiy Storchaka --- Doc/library/datetime.rst | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Doc/library/datetime.rst b/Doc/library/datetime.rst index d38b966086a29f..3a7fe4676a1736 100644 --- a/Doc/library/datetime.rst +++ b/Doc/library/datetime.rst @@ -1193,6 +1193,9 @@ Supported operations: that are not also :class:`!datetime` instances, even if they represent the same date. + If both comparands are aware, and have the same :attr:`!tzinfo` attribute, + the :attr:`!tzinfo` and :attr:`~.datetime.fold` attributes are ignored and + the base datetimes are compared. If both comparands are aware and have different :attr:`~.datetime.tzinfo` attributes, the comparison acts as comparands were first converted to UTC datetimes except that the implementation never overflows. @@ -1207,6 +1210,9 @@ Supported operations: as well as a :class:`!datetime` object and a :class:`!date` object that is not also a :class:`!datetime` instance, raises :exc:`TypeError`. + If both comparands are aware, and have the same :attr:`!tzinfo` attribute, + the :attr:`!tzinfo` and :attr:`~.datetime.fold` attributes are ignored and + the base datetimes are compared. If both comparands are aware and have different :attr:`~.datetime.tzinfo` attributes, the comparison acts as comparands were first converted to UTC datetimes except that the implementation never overflows. @@ -1752,8 +1758,8 @@ Naive and aware :class:`!time` objects are never equal. Order comparison between naive and aware :class:`!time` objects raises :exc:`TypeError`. -If both comparands are aware, and have -the same :attr:`~.time.tzinfo` attribute, the common :attr:`!tzinfo` attribute is +If both comparands are aware, and have the same :attr:`~.time.tzinfo` +attribute, the :attr:`!tzinfo` and :attr:`!fold` attributes are ignored and the base times are compared. If both comparands are aware and have different :attr:`!tzinfo` attributes, the comparands are first adjusted by subtracting their UTC offsets (obtained from ``self.utcoffset()``).