# # spec file for package python-pytz # # 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/ # # Ensure you update the tzdata_version for any minor version increase # otherwise the update python library has the incorrect timezone data. %define tzdata_version 2021a %define oldpython python %{?!python_module:%define python_module() python-%{**} python3-%{**}} %{?!pyunittest:%define pyunittest(+abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-=) \\\ %{lua: local args = rpm.expand("%**"); local broot = rpm.expand("%buildroot"); local intro = "%{python_expand PYTHONPATH=${PYTHONPATH:+$PYTHONPATH:}" .. broot .. "%{$python_sitelib} PYTHONDONTWRITEBYTECODE=1 $python -m unittest "; print(rpm.expand(intro .. args .. "}")) } } %define skip_python2 1 Name: python-pytz Version: 2021.1 Release: 5.1 Summary: World timezone definitions, modern and historical License: MIT Group: Development/Languages/Python URL: https://pythonhosted.org/pytz/ Source: https://files.pythonhosted.org/packages/source/p/pytz/pytz-%{version}.tar.gz Source2: https://files.pythonhosted.org/packages/source/p/pytz/pytz-%{version}.tar.gz.asc Source90: %{name}.keyring # PATCH-FIX-UPSTREAM fix-tests.patch -- Remote tests which are known to be broken Patch0: fix-tests.patch # PATCH-FIX-UPSTREAM 0001-Fix-tests-for-older-timezone-versions.patch -- https://code.launchpad.net/~toabctl/pytz/+git/pytz/+merge/326419 Patch2: 0001-Fix-tests-for-older-timezone-versions.patch BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: python-rpm-macros BuildRequires: timezone >= %{tzdata_version} Requires: python-base Requires: timezone >= %{tzdata_version} BuildArch: noarch %ifpython2 Provides: %{oldpython}-tz = %{version} Obsoletes: %{oldpython}-tz < %{version} %endif %python_subpackages %description pytz - World Timezone Definitions for Python pytz brings the Olson tz database into Python. This library allows accurate and cross platform timezone calculations using Python 2.4 or higher. It also solves the issue of ambiguous times at the end of daylight savings, which you can read more about in the Python Library Reference (``datetime.tzinfo``). Amost all of the Olson timezones are supported. %prep %setup -q -n pytz-%{version} %autopatch -p1 # For rpmlint warning: remove shebang from python library: sed -i '/^#!/d' ./pytz/tzfile.py # Help Python 2.7 unittest touch pytz/tests/__init__.py %build %python_build %install %python_install # Replace custom data with symlink to /usr/share/zoneinfo %{python_expand rm -r %{buildroot}%{$python_sitelib}/pytz/zoneinfo ln -s %{_datadir}/zoneinfo %{buildroot}%{$python_sitelib}/pytz/zoneinfo %fdupes %{buildroot}%{$python_sitelib} } %check %pyunittest discover -v %pre if [ $1 -gt 1 ] ; then [ "$(readlink -e %{python_sitelib}/pytz/zoneinfo)" == "%{python_sitelib}/pytz/zoneinfo" ] && rm -rf %{python_sitelib}/pytz/zoneinfo fi || : %files %{python_files} %license LICENSE.txt %doc README.rst %{python_sitelib}/pytz %{python_sitelib}/pytz-%{version}-py*.egg-info %changelog * Thu Jul 8 2021 Matej Cepl - Add %%pyunittest shim for platforms where it is missing. * Thu Jun 24 2021 Matej Cepl - Remove real directory of %%{python_sitelib}/pytz/zoneinfo when upgrading, before it is replaced by a symlink (bsc#1185748). * Fri May 28 2021 pgajdos@suse.com - %%check: use %%pyunittest rpm macro * Tue Feb 23 2021 Ben Greiner - Bump tzdata_version * Tue Feb 9 2021 Dirk Müller - update to 2021.1: * update to IANA 2021a timezone release * Tue Dec 29 2020 Dirk Müller - update to 2020.5: * update to IANA 2020e timezone release * Thu Nov 26 2020 Dirk Mueller - update to 2020.4: * update to IANA 2020d timezone release * Sat May 2 2020 Arun Persaud - specfile: * be more specific in %%files section * README.txt -> README.rst - update to version 2020.1: * Test against Python 3.8 and Python 3.9 * Bump version numbers to 2020.1/2020a * Base class for all errors * Add flake8 settings * IANA 2020a * Fix remaining references to README.txt * Update README.md * Use .rst extension for reStructuredText * typo * highlight codes * use .rst extension name * Tidelift links * Add links for security reports * Update LICENSE.txt * Create FUNDING.yml * Make FixedOffset part of public API * Mon Feb 24 2020 Steve Kowalik - Update to 2019.3 * IANA 2019c * Tue Aug 27 2019 John Vandenberg - Add versioned dependency on timezone database to ensure the correct data is installed - Remove system_zoneinfo.patch, and instead add a symlink to the system timezone database - Replace unnecessary pytest, adding a missing __init__.py in the tests to allow the test suite to work on Python 2.7 without pytest * Fri Aug 9 2019 Ondřej Súkup - update to 2019.2 * IANA 2019b * Defer generating case-insensitive lookups * Tue Apr 16 2019 Ondřej Súkup - update to 2019.1 * Raise UnknownTimeZoneError if provided timezone name is None * Use early python2 compatible str formatting * timezone constructor arg is case-insensitive * Add _all_timezones_lower_to_standard to gen_tzinfo * Sun Feb 17 2019 John Vandenberg - Use more useful and clean https://pythonhosted.org/pytz/ as URL - Use fdupes - Add missing dependency on Python runtime, and install using setuptools. - update to 2018.9 * IANA 2018i * Replace all references to deprecated easy_install with pip * Add _all_timezones_lower_to_standard to gen_tzinfo * timezone constructor arg is case-insensitive * Use early python2 compatible str formatting * Raise UnknownTimeZoneError if provided timezone name is None * Make timezone lookup case insensitive - from 2018.7 * IANA 2018g - from 2018.6 * IANA 2018f * Promote BaseTzInfo to public API for type checking * Update dev notes for Ubuntu 18.04 containers * Add warnings to examples showing what not to do * Wed Jan 9 2019 mcepl@suse.com - Replace nose test runner with pytest (py2k stdlib unittest runner is not sufficient to run the test suite here). - Refresh patches fix-tests.patch, system_zoneinfo.patch, 0001-Fix-tests-for-older-timezone-versions.patch * Tue Dec 4 2018 Matej Cepl - Remove superfluous devel dependency for noarch package * Sat Jun 30 2018 astieger@suse.com - update to 2018.5: * various python compatibility fixes - fix upstream signing key * Sat Feb 17 2018 arun@gmx.de - specfile: * update copyright year * move from zip to tar.gz * updated line number in patches and fixed whitespace issues: o 0001-Fix-tests-for-older-timezone-versions.patch o fix-tests.patch o system-zoneinfo.patch - update to version 2018.3: * Test updates for Iana 2018c changes * delint * lint target & update iana build rule * Bump version numbers to 2018.3/2018c * Include license file in the generated wheel package * Update travis config * Thu Nov 2 2017 arun@gmx.de - updated system_zoneinfo.patch - update to version 2017.3: * PYTZ_TZDATADIR environment variable override of database location * Allow pickles from Python2 to be unpickled with Python3 * Remove unmaintained CHANGES.txt * Test with Python 3.6 * Detect compiled tzfiles by sniffing magic * Squashed 'tz/' changes from f8ebe3a64..e6ff702de * Be explicit about supported Python versions * Fixed README.txt to not issue warnings. * Wed Jun 28 2017 tbechtold@suse.com - add 0001-Fix-tests-for-older-timezone-versions.patch . This fixes the tests on SLE12SP2 and SLE12SP3 * Wed Apr 5 2017 jmatejek@suse.com - create correct backwards-compatible Obsoletes/Provides - revert to semantic PyPI URLs * Mon Apr 3 2017 astieger@suse.com - update to 2017.2: * include IANA 2017b, tests assume >= 2017a is used * drop pytz-2016.10-fix-tests-with-2017a.patch, upstream * Mon Mar 20 2017 dimstar@opensuse.org - Apply pytz-2016.10-fix-tests-with-2017a.patch for Tumbleweed buildin. * Thu Mar 16 2017 toddrme2178@gmail.com - Implement single-spec version * Wed Mar 15 2017 astieger@suse.com - update to 2016.10: * includes IANA 2016j * No longer fails with timezone-2017a bsc#1027705 add pytz-2016.10-fix-tests-with-2017a.patch * Mon Apr 25 2016 astieger@suse.com - update to 2016.4 * including fixes for Venezuela (America/Caracas) boo#975875 * Mon Feb 1 2016 toddrme2178@gmail.com - update to version 2015.7: * Improved localtime handling, and added a localize() method enabling correct creation of local times. * Mon Oct 5 2015 mcihar@suse.cz - update to 2015.6 * update Olson/IANA database * Sun Apr 19 2015 benoit.monin@gmx.fr - update to version 2015.2: * update to Olson/IANA database version 2015b * Wed Jan 14 2015 mcihar@suse.cz - Do not remove internal timezone database on older distributions where it is still required * Wed Jan 7 2015 dmueller@suse.com - update to 2014.10: + Database update to 2014j * Thu Nov 13 2014 aplanas@suse.com - Use system tz database instead pytz one + Add system_zoneinfo.patch + Add timezone requirement * Tue Nov 11 2014 idonmez@suse.com - Update to pytz 2014.9 + Database updated to 2014i * Thu Jul 24 2014 mcihar@suse.com - Run test suite during build (required disabling of one test as it is known to be broken) - Disable broken test (fix-tests.patch) * Wed Jul 23 2014 mcihar@suse.cz - Update to pytz 2014.4 + Database update to 2014d * Sat Apr 12 2014 aj@ajaissle.de - Update to pytz 2014.2 + Olson/IANA databse version 2014b + No code changes in this release * Mon Jan 13 2014 dmueller@suse.com - update to 2013.9: - Olson database 2013i * Fri Nov 8 2013 aj@ajaissle.de - New upstream release 2013.8 - IANA database version 2013h - No code changes * Mon Oct 21 2013 speilicke@suse.com - Update to version 2013.7: + No changes * Tue Sep 17 2013 dmueller@suse.com - update to 2013d: * sync with timezone 2013d release * Tue Apr 30 2013 dmueller@suse.com - remove conflicts with timezone, breaks the build * Tue Apr 30 2013 dmueller@suse.com - add provides/obsoletes on python(3)-tz * Mon Apr 29 2013 dmueller@suse.com - update to 2013b: * Sync with timezone 2013b release * Mon Jan 14 2013 p.drouand@gmail.com - Initial python3 support * Mon Jan 14 2013 p.drouand@gmail.com - Update to 2012j version: * Add python3 support - Fix a shebang RPMLint warning * Wed Mar 21 2012 saschpe@gmx.de - Initial version