From cc3b4453514149e0b7c91b4205ec0c8a4cc228e20eb6e71e2a7137b5eb65b39f Mon Sep 17 00:00:00 2001 From: Matej Cepl Date: Mon, 11 Mar 2024 21:34:09 +0000 Subject: [PATCH] Accepting request 1156451 from home:bnavigator:branches:devel:languages:python - Update to 2.9.0.post0 * Pinned setuptools_scm to <8, which should make the generated _version.py file compatible with all supported versions of Python. (We don't do this at openSUSE, we don't need Python 2 installs from a setuptools_scm v8 build) - Version 2.9.0 * Updated tzdata version to 2024a. (gh pr #1342) * Made all dateutil submodules lazily imported using PEP 562. On Python 3.7+, things like import dateutil; dateutil.tz.gettz("America/New_York") will now work without explicitly importing dateutil.tz, with the import occurring behind the scenes on first use. The old behavior remains on Python 3.6 and earlier. Fixed by Orson Adams. (gh issue #771, gh pr #1007) * Removed a call to datetime.utcfromtimestamp, which is deprecated as of Python 3.12. Reported by Hugo van Kemenade (gh pr #1284), fixed by Thomas Grainger (gh pr #1285). - Provide underscore name: some consuming packages go with that, don't fail unnecessarily - Drop no-utcfromtimestamp.patch OBS-URL: https://build.opensuse.org/request/show/1156451 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-python-dateutil?expand=0&rev=30 --- no-utcfromtimestamp.patch | 48 ------------------------------ python-dateutil-2.8.2.tar.gz | 3 -- python-dateutil-2.9.0.post0.tar.gz | 3 ++ python-python-dateutil.changes | 24 +++++++++++++++ python-python-dateutil.spec | 13 ++++---- 5 files changed, 34 insertions(+), 57 deletions(-) delete mode 100644 no-utcfromtimestamp.patch delete mode 100644 python-dateutil-2.8.2.tar.gz create mode 100644 python-dateutil-2.9.0.post0.tar.gz diff --git a/no-utcfromtimestamp.patch b/no-utcfromtimestamp.patch deleted file mode 100644 index 0ad9414..0000000 --- a/no-utcfromtimestamp.patch +++ /dev/null @@ -1,48 +0,0 @@ -Index: python-dateutil-2.8.2/dateutil/tz/tz.py -=================================================================== ---- python-dateutil-2.8.2.orig/dateutil/tz/tz.py -+++ python-dateutil-2.8.2/dateutil/tz/tz.py -@@ -34,7 +34,7 @@ except ImportError: - from warnings import warn - - ZERO = datetime.timedelta(0) --EPOCH = datetime.datetime.utcfromtimestamp(0) -+EPOCH = datetime.datetime.fromtimestamp(0, tz=datetime.timezone.utc) - EPOCHORDINAL = EPOCH.toordinal() - - -@@ -1809,9 +1809,9 @@ def resolve_imaginary(dt): - def _datetime_to_timestamp(dt): - """ - Convert a :class:`datetime.datetime` object to an epoch timestamp in -- seconds since January 1, 1970, ignoring the time zone. -+ seconds since January 1, 1970, forcing to UTC. - """ -- return (dt.replace(tzinfo=None) - EPOCH).total_seconds() -+ return (dt.replace(tzinfo=datetime.timezone.utc) - EPOCH).total_seconds() - - - if sys.version_info >= (3, 6): -Index: python-dateutil-2.8.2/dateutil/test/test_tz.py -=================================================================== ---- python-dateutil-2.8.2.orig/dateutil/test/test_tz.py -+++ python-dateutil-2.8.2/dateutil/test/test_tz.py -@@ -10,6 +10,7 @@ from datetime import tzinfo - from six import PY2 - from io import BytesIO, StringIO - import unittest -+import warnings - - import sys - import base64 -@@ -2809,3 +2810,10 @@ def test_resolve_imaginary(tzi, dt, dt_e - assert dt_r == dt_exp - assert dt_r.tzname() == dt_exp.tzname() - assert dt_r.utcoffset() == dt_exp.utcoffset() -+ -+ -+def test_epoch(): -+ # We're really try to see that no warnings are raised -+ with warnings.catch_warnings(): -+ warnings.simplefilter("error") -+ assert tz.EPOCH - tz.EPOCH == timedelta(0) diff --git a/python-dateutil-2.8.2.tar.gz b/python-dateutil-2.8.2.tar.gz deleted file mode 100644 index b6fa4f6..0000000 --- a/python-dateutil-2.8.2.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86 -size 357324 diff --git a/python-dateutil-2.9.0.post0.tar.gz b/python-dateutil-2.9.0.post0.tar.gz new file mode 100644 index 0000000..e014435 --- /dev/null +++ b/python-dateutil-2.9.0.post0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3 +size 342432 diff --git a/python-python-dateutil.changes b/python-python-dateutil.changes index d26f960..5e97315 100644 --- a/python-python-dateutil.changes +++ b/python-python-dateutil.changes @@ -1,3 +1,27 @@ +------------------------------------------------------------------- +Tue Mar 5 13:44:20 UTC 2024 - Ben Greiner + +- Update to 2.9.0.post0 + * Pinned setuptools_scm to <8, which should make the generated + _version.py file compatible with all supported versions of + Python. (We don't do this at openSUSE, we don't need Python 2 + installs from a setuptools_scm v8 build) +- Version 2.9.0 + * Updated tzdata version to 2024a. (gh pr #1342) + * Made all dateutil submodules lazily imported using PEP 562. On + Python 3.7+, things like import dateutil; + dateutil.tz.gettz("America/New_York") will now work without + explicitly importing dateutil.tz, with the import occurring + behind the scenes on first use. The old behavior remains on + Python 3.6 and earlier. Fixed by Orson Adams. (gh issue #771, + gh pr #1007) + * Removed a call to datetime.utcfromtimestamp, which is + deprecated as of Python 3.12. Reported by Hugo van Kemenade (gh + pr #1284), fixed by Thomas Grainger (gh pr #1285). +- Provide underscore name: some consuming packages go with that, + don't fail unnecessarily +- Drop no-utcfromtimestamp.patch + ------------------------------------------------------------------- Mon Sep 18 04:39:14 UTC 2023 - Steve Kowalik diff --git a/python-python-dateutil.spec b/python-python-dateutil.spec index 94d6d0e..783fd62 100644 --- a/python-python-dateutil.spec +++ b/python-python-dateutil.spec @@ -1,7 +1,7 @@ # -# spec file +# spec file for package python-python-dateutil # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -27,15 +27,15 @@ %endif %{?sle15_python_module_pythons} Name: python-python-dateutil%{psuffix} -Version: 2.8.2 +Version: 2.9.0.post0 Release: 0 Summary: A Python Datetime Library License: Apache-2.0 OR BSD-3-Clause URL: https://dateutil.readthedocs.org/en/latest/ Source0: https://files.pythonhosted.org/packages/source/p/python-dateutil/python-dateutil-%{version}.tar.gz -Patch0: no-utcfromtimestamp.patch BuildRequires: %{python_module pip} BuildRequires: %{python_module setuptools >= 24.3} +# Don't pin to <8 like upstream does: gh#dateutil/dateutil#1346 BuildRequires: %{python_module setuptools_scm} BuildRequires: %{python_module six >= 1.5} BuildRequires: %{python_module wheel} @@ -43,8 +43,9 @@ BuildRequires: dos2unix BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-six >= 1.5 -Obsoletes: python-dateutil < %{version} -Provides: python-dateutil = %{version} +Obsoletes: python-dateutil < %{version}-%{release} +Provides: python-dateutil = %{version}-%{release} +Provides: python-python_dateutil = %{version}-%{release} BuildArch: noarch %if %{with test} BuildRequires: %{python_module freezegun}