Skip to content

Commit

Permalink
[3.11] gh-116035: Document that both tzinfo and fold are ignored in c…
Browse files Browse the repository at this point in the history
…omparisons if tzinfo is the same (GH-116187) (GH-116217)

This mostly restores information removed in c12240e (GH-114749).
(cherry picked from commit 05b0490)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
  • Loading branch information
miss-islington and serhiy-storchaka committed Mar 1, 2024
1 parent c363936 commit ac8d995
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions Doc/library/datetime.rst
Expand Up @@ -1185,6 +1185,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.
Expand All @@ -1199,6 +1202,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.
Expand Down Expand Up @@ -1744,8 +1750,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()``).
Expand Down

0 comments on commit ac8d995

Please sign in to comment.