python-python-dateutil/python-python-dateutil.spec
Matej Cepl cc3b445351 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
2024-03-11 21:34:09 +00:00

121 lines
3.7 KiB
RPMSpec

#
# spec file for package python-python-dateutil
#
# 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
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define oldpython python
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test"
%define psuffix -test
%bcond_without test
%else
%define psuffix %{nil}
%bcond_with test
%endif
%{?sle15_python_module_pythons}
Name: python-python-dateutil%{psuffix}
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
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}
BuildRequires: dos2unix
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-six >= 1.5
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}
BuildRequires: %{python_module hypothesis}
BuildRequires: %{python_module pytest}
BuildRequires: timezone
%endif
%ifpython2
Obsoletes: %{oldpython}-dateutil < %{version}
Provides: %{oldpython}-dateutil = %{version}
%endif
%python_subpackages
%description
The python dateutil module provides powerful extensions to the standard
datetime module.
* Computing of relative deltas (next month, next year, next monday,
last week of month, etc.)
* Computing of relative deltas between two given dates and/or
datetime objects
* Computing of dates based on very flexible recurrence rules, using
a superset of the iCalendar specification. Parsing of RFC strings
is supported as well.
* Generic parsing of dates in almost any string format.
* Timezone (tzinfo) implementations for tzfile(5) format files
(%{_sysconfdir}/localtime, %{_datadir}/zoneinfo, etc.), TZ environment
string (in all known formats), iCalendar format files, given
ranges (with help from relative deltas), local machine timezone,
fixed offset timezone, UTC timezone, and Windows registry-based
time zones.
* Internal up-to-date world timezone information based on Olson's
database.
* Computing of Easter Sunday dates for any given year, using Western,
Orthodox or Julian algorithms.
%prep
%autosetup -p1 -n python-dateutil-%{version}
#cleanup and MSdos style end of line separators
dos2unix LICENSE NEWS PKG-INFO README.rst
%build
%pyproject_wheel
%install
%if !%{with test}
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%endif
%if %{with test}
%check
rm setup.cfg
export LANG=en_US.UTF-8
%pytest
%endif
%if !%{with test}
%files %{python_files}
%doc NEWS PKG-INFO README.rst
%license LICENSE
%{python_sitelib}/dateutil
%{python_sitelib}/python_dateutil-%{version}.dist-info
%endif
%changelog