File python3-python-dateutil.spec of Package python3-python-dateutil

#
# spec file for package python3-python-dateutil
#
# Copyright (c) 2021 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/
#


Name:           python3-python-dateutil
Version:        2.8.2
Release:        0
Summary:        A Python Datetime Library
License:        BSD-3-Clause
Group:          Development/Libraries/Python
URL:            https://dateutil.readthedocs.org/en/latest/
Source0:        https://pypi.io/packages/source/p/python-dateutil/python-dateutil-%{version}.tar.gz
Patch0:         remove_setuptools_scm.patch
BuildRequires:  fdupes
BuildRequires:  python3
BuildRequires:  python3-pytest >= 1.5
BuildRequires:  python3-setuptools >= 24.3
BuildRequires:  python3-six >= 1.5
Requires:       python3-six >= 1.5
Provides:       python3-dateutil = %{version}
BuildArch:      noarch

%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
   (/etc/localtime, /usr/share/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
%setup -q -n python-dateutil-%{version}
#cleanup and MSdos style end of line separators
sed -i 's/\r$//' LICENSE NEWS PKG-INFO README.rst
rm -f setup.cfg
%patch0 -p1
find dateutil/test/ -type f -name '*.py' -exec sed -ri 's/^from freezegun import .*/import pytest\npytest.skip()/' {} \+
find dateutil/test/ -type f -name '*.py' -exec sed -ri 's/^from hypothesis(\..*?)? import .*/import pytest\npytest.skip()/' {} \+
sed -Ei 's/pytest\.param\(/(/' dateutil/test/test_tz.py
sed -i '/id=/d' dateutil/test/test_tz.py
sed -i '/marks=/,+3d' dateutil/test/test_tz.py
sed -i 's/            ],//' dateutil/test/test_tz.py

%build
%python_build

%install
%python_install
%fdupes -s %{buildroot}%{python3_sitelib}

%check
export LANG=en_US.UTF-8
rm -r build/
%if 0%{?centos_version} == 700
# CentOS 8 has no pytest for python 3.8
%pytest -k 'not test_gettz_zone_wrong_type' --noconftest
%endif

%files
%doc NEWS PKG-INFO README.rst
%license LICENSE
%{python3_sitelib}/dateutil/
%{python3_sitelib}/python_dateutil-%{version}-py*.egg-info

%changelog
openSUSE Build Service is sponsored by