]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-118798: Remove deprecated isdst parameter from `email.utils.localtime` (#118799)
authorHugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Thu, 9 May 2024 09:17:02 +0000 (12:17 +0300)
committerGitHub <noreply@github.com>
Thu, 9 May 2024 09:17:02 +0000 (03:17 -0600)
Doc/library/email.utils.rst
Doc/whatsnew/3.14.rst
Lib/email/utils.py
Lib/test/test_email/test_utils.py
Misc/NEWS.d/next/Library/2024-05-08-23-16-50.gh-issue-118798.Q_ybqP.rst [new file with mode: 0644]

index 6f0bed130bc64c53468614a606c98da7b3ebb985..43e5b25df01f79435f0bf722734bfd80261c4188 100644 (file)
@@ -17,8 +17,7 @@ module:
    arguments, return current time.  Otherwise *dt* argument should be a
    :class:`~datetime.datetime` instance, and it is converted to the local time
    zone according to the system time zone database.  If *dt* is naive (that
-   is, ``dt.tzinfo`` is ``None``), it is assumed to be in local time.  The
-   *isdst* parameter is ignored.
+   is, ``dt.tzinfo`` is ``None``), it is assumed to be in local time.
 
    .. versionadded:: 3.3
 
index 496a5d8ae7bc5e3b4dbbe4f3560f6e5d2e61b385..24b6b617fe17dc973076d89508f781613dea51fa 100644 (file)
@@ -101,6 +101,15 @@ Deprecated
 Removed
 =======
 
+email
+-----
+
+* The *isdst* parameter has been removed from :func:`email.utils.localtime`.
+  (Contributed by Hugo van Kemenade in :gh:`118798`.)
+
+Others
+------
+
 * Using :data:`NotImplemented` in a boolean context will now raise a :exc:`TypeError`.
   It had previously raised a :exc:`DeprecationWarning` since Python 3.9. (Contributed
   by Jelle Zijlstra in :gh:`118767`.)
index 103cef61a8353880f649460f450009246ef99b49..6d897ca8eeee9157221660f25224b83ae856bd1d 100644 (file)
@@ -466,23 +466,15 @@ def collapse_rfc2231_value(value, errors='replace',
 # better than not having it.
 #
 
-def localtime(dt=None, isdst=None):
+def localtime(dt=None):
     """Return local time as an aware datetime object.
 
     If called without arguments, return current time.  Otherwise *dt*
     argument should be a datetime instance, and it is converted to the
     local time zone according to the system time zone database.  If *dt* is
     naive (that is, dt.tzinfo is None), it is assumed to be in local time.
-    The isdst parameter is ignored.
 
     """
-    if isdst is not None:
-        import warnings
-        warnings._deprecated(
-            "The 'isdst' parameter to 'localtime'",
-            message='{name} is deprecated and slated for removal in Python {remove}',
-            remove=(3, 14),
-            )
     if dt is None:
         dt = datetime.datetime.now()
     return dt.astimezone()
index d04b3909efa643816da3f03971e6c4f8ebbd2da2..8556a93699d19420186370c1a250026a9477394d 100644 (file)
@@ -154,10 +154,6 @@ class LocaltimeTests(unittest.TestCase):
         t1 = utils.localtime(t0)
         self.assertEqual(t1.tzname(), 'EET')
 
-    def test_isdst_deprecation(self):
-        with self.assertWarns(DeprecationWarning):
-            t0 = datetime.datetime(1990, 1, 1)
-            t1 = utils.localtime(t0, isdst=True)
 
 # Issue #24836: The timezone files are out of date (pre 2011k)
 # on Mac OS X Snow Leopard.
diff --git a/Misc/NEWS.d/next/Library/2024-05-08-23-16-50.gh-issue-118798.Q_ybqP.rst b/Misc/NEWS.d/next/Library/2024-05-08-23-16-50.gh-issue-118798.Q_ybqP.rst
new file mode 100644 (file)
index 0000000..28847e1
--- /dev/null
@@ -0,0 +1,2 @@
+The *isdst* parameter has been removed from :func:`email.utils.localtime`.
+Patch by Hugo van Kemenade.