Update to 2018.5 (#1508227)
This commit is contained in:
parent
b75f883827
commit
568be6b6e6
1
.gitignore
vendored
1
.gitignore
vendored
@ -7,3 +7,4 @@ pytz-2010h.tar.gz
|
|||||||
/pytz-2016.7.tar.gz
|
/pytz-2016.7.tar.gz
|
||||||
/pytz-2016.10.tar.gz
|
/pytz-2016.10.tar.gz
|
||||||
/pytz-2017.2.zip
|
/pytz-2017.2.zip
|
||||||
|
/pytz-2018.5.tar.gz
|
||||||
|
21
Makefile
21
Makefile
@ -1,21 +0,0 @@
|
|||||||
# Makefile for source rpm: pytz
|
|
||||||
# $Id$
|
|
||||||
NAME := pytz
|
|
||||||
SPECFILE = $(firstword $(wildcard *.spec))
|
|
||||||
|
|
||||||
define find-makefile-common
|
|
||||||
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
|
||||||
endef
|
|
||||||
|
|
||||||
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
|
||||||
|
|
||||||
ifeq ($(MAKEFILE_COMMON),)
|
|
||||||
# attept a checkout
|
|
||||||
define checkout-makefile-common
|
|
||||||
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
|
||||||
endef
|
|
||||||
|
|
||||||
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
|
||||||
endif
|
|
||||||
|
|
||||||
include $(MAKEFILE_COMMON)
|
|
@ -1,21 +1,25 @@
|
|||||||
diff --git a/pytz/__init__.py b/pytz/__init__.py
|
diff --git a/pytz/__init__.py b/pytz/__init__.py
|
||||||
index 13c83b1..e8a674f 100644
|
index 120fab4..b0a3826 100644
|
||||||
--- a/pytz/__init__.py
|
--- a/pytz/__init__.py
|
||||||
+++ b/pytz/__init__.py
|
+++ b/pytz/__init__.py
|
||||||
@@ -70,6 +70,9 @@ else: # Python 2.x
|
@@ -73,6 +73,9 @@ else: # Python 2.x
|
||||||
"""
|
"""
|
||||||
return s.encode('ASCII')
|
return s.encode('ASCII')
|
||||||
|
|
||||||
+_tzinfo_dir = os.getenv("TZDIR") or "/usr/share/zoneinfo"
|
+_tzinfo_dir = os.getenv('PYTZ_TZDATADIR') or '/usr/share/zoneinfo'
|
||||||
+if _tzinfo_dir.endswith(os.sep):
|
+if _tzinfo_dir.endswith(os.sep):
|
||||||
+ _tzinfo_dir = _tzinfo_dir[:-1]
|
+ _tzinfo_dir = _tzinfo_dir[:-1]
|
||||||
|
|
||||||
def open_resource(name):
|
def open_resource(name):
|
||||||
"""Open a resource from the zoneinfo subdir for reading.
|
"""Open a resource from the zoneinfo subdir for reading.
|
||||||
@@ -81,19 +84,7 @@ def open_resource(name):
|
@@ -87,23 +90,8 @@ def open_resource(name):
|
||||||
for part in name_parts:
|
for part in name_parts:
|
||||||
if part == os.path.pardir or os.path.sep in part:
|
if part == os.path.pardir or os.path.sep in part:
|
||||||
raise ValueError('Bad path segment: %r' % part)
|
raise ValueError('Bad path segment: %r' % part)
|
||||||
|
- zoneinfo_dir = os.environ.get('PYTZ_TZDATADIR', None)
|
||||||
|
- if zoneinfo_dir is not None:
|
||||||
|
- filename = os.path.join(zoneinfo_dir, *name_parts)
|
||||||
|
- else:
|
||||||
- filename = os.path.join(os.path.dirname(__file__),
|
- filename = os.path.join(os.path.dirname(__file__),
|
||||||
- 'zoneinfo', *name_parts)
|
- 'zoneinfo', *name_parts)
|
||||||
- if not os.path.exists(filename):
|
- if not os.path.exists(filename):
|
||||||
@ -29,14 +33,15 @@ index 13c83b1..e8a674f 100644
|
|||||||
-
|
-
|
||||||
- if resource_stream is not None:
|
- if resource_stream is not None:
|
||||||
- return resource_stream(__name__, 'zoneinfo/' + name)
|
- return resource_stream(__name__, 'zoneinfo/' + name)
|
||||||
+ filename = os.path.join(_tzinfo_dir, *name_parts)
|
+ zoneinfo_dir = os.environ.get('PYTZ_TZDATADIR', _tzinfo_dir)
|
||||||
|
+ filename = os.path.join(zoneinfo_dir, *name_parts)
|
||||||
return open(filename, 'rb')
|
return open(filename, 'rb')
|
||||||
|
|
||||||
|
|
||||||
@@ -490,1044 +481,33 @@ def _test():
|
@@ -484,1042 +472,37 @@ def _test():
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
_test()
|
_test()
|
||||||
|
|
||||||
-all_timezones = \
|
-all_timezones = \
|
||||||
-['Africa/Abidjan',
|
-['Africa/Abidjan',
|
||||||
- 'Africa/Accra',
|
- 'Africa/Accra',
|
||||||
@ -412,7 +417,6 @@ index 13c83b1..e8a674f 100644
|
|||||||
- 'CST6CDT',
|
- 'CST6CDT',
|
||||||
- 'Canada/Atlantic',
|
- 'Canada/Atlantic',
|
||||||
- 'Canada/Central',
|
- 'Canada/Central',
|
||||||
- 'Canada/East-Saskatchewan',
|
|
||||||
- 'Canada/Eastern',
|
- 'Canada/Eastern',
|
||||||
- 'Canada/Mountain',
|
- 'Canada/Mountain',
|
||||||
- 'Canada/Newfoundland',
|
- 'Canada/Newfoundland',
|
||||||
@ -624,13 +628,13 @@ index 13c83b1..e8a674f 100644
|
|||||||
- 'US/Michigan',
|
- 'US/Michigan',
|
||||||
- 'US/Mountain',
|
- 'US/Mountain',
|
||||||
- 'US/Pacific',
|
- 'US/Pacific',
|
||||||
- 'US/Pacific-New',
|
|
||||||
- 'US/Samoa',
|
- 'US/Samoa',
|
||||||
- 'UTC',
|
- 'UTC',
|
||||||
- 'Universal',
|
- 'Universal',
|
||||||
- 'W-SU',
|
- 'W-SU',
|
||||||
- 'WET',
|
- 'WET',
|
||||||
- 'Zulu']
|
- 'Zulu']
|
||||||
|
+
|
||||||
+all_timezones = []
|
+all_timezones = []
|
||||||
+for root, dirs, files in os.walk(_tzinfo_dir):
|
+for root, dirs, files in os.walk(_tzinfo_dir):
|
||||||
+ for exclude in 'posix', 'right':
|
+ for exclude in 'posix', 'right':
|
||||||
@ -641,6 +645,7 @@ index 13c83b1..e8a674f 100644
|
|||||||
+ for tz_file in files
|
+ for tz_file in files
|
||||||
+ if tz_file != 'README' and tz_file != 'Theory'
|
+ if tz_file != 'README' and tz_file != 'Theory'
|
||||||
+ and '.' not in tz_file)
|
+ and '.' not in tz_file)
|
||||||
|
+
|
||||||
all_timezones = LazyList(
|
all_timezones = LazyList(
|
||||||
tz for tz in all_timezones if resource_exists(tz))
|
tz for tz in all_timezones if resource_exists(tz))
|
||||||
|
|
||||||
@ -1085,6 +1090,7 @@ index 13c83b1..e8a674f 100644
|
|||||||
- 'US/Mountain',
|
- 'US/Mountain',
|
||||||
- 'US/Pacific',
|
- 'US/Pacific',
|
||||||
- 'UTC']
|
- 'UTC']
|
||||||
|
+
|
||||||
+common_timezones = [l.split()[2]
|
+common_timezones = [l.split()[2]
|
||||||
+ for l in open(os.path.join(_tzinfo_dir, 'zone.tab'))
|
+ for l in open(os.path.join(_tzinfo_dir, 'zone.tab'))
|
||||||
+ if l != '' and l[0] != '#']
|
+ if l != '' and l[0] != '#']
|
||||||
@ -1098,6 +1104,7 @@ index 13c83b1..e8a674f 100644
|
|||||||
+ 'US/Mountain',
|
+ 'US/Mountain',
|
||||||
+ 'US/Pacific',
|
+ 'US/Pacific',
|
||||||
+ 'UTC'])
|
+ 'UTC'])
|
||||||
|
+
|
||||||
common_timezones = LazyList(
|
common_timezones = LazyList(
|
||||||
tz for tz in common_timezones if tz in all_timezones)
|
tz for tz in common_timezones if tz in all_timezones)
|
||||||
|
|
||||||
|
68
pytz.spec
68
pytz.spec
@ -1,26 +1,17 @@
|
|||||||
%if 0%{?fedora} || 0%{?rhel} >= 8
|
|
||||||
%global with_python3 1
|
|
||||||
%else
|
|
||||||
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
Name: pytz
|
Name: pytz
|
||||||
Version: 2017.2
|
Version: 2018.5
|
||||||
Release: 10%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: World Timezone Definitions for Python
|
Summary: World Timezone Definitions for Python
|
||||||
|
|
||||||
Group: Development/Languages
|
|
||||||
License: MIT
|
License: MIT
|
||||||
URL: http://pytz.sourceforge.net/
|
URL: http://pytz.sourceforge.net/
|
||||||
Source0: https://pypi.io/packages/source/p/%{name}/%{name}-%{version}.zip
|
Source0: %pypi_source
|
||||||
# Patch to use the system supplied zoneinfo files
|
# Patch to use the system supplied zoneinfo files
|
||||||
Patch0: pytz-zoneinfo.patch
|
Patch0: pytz-zoneinfo.patch
|
||||||
# https://bugzilla.redhat.com/1497572
|
# https://bugzilla.redhat.com/1497572
|
||||||
Patch1: remove_tzinfo_test.patch
|
Patch1: remove_tzinfo_test.patch
|
||||||
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
BuildRequires: python2-devel
|
|
||||||
BuildRequires: pytest
|
|
||||||
|
|
||||||
%global _description\
|
%global _description\
|
||||||
pytz brings the Olson tz database into Python. This library allows accurate\
|
pytz brings the Olson tz database into Python. This library allows accurate\
|
||||||
@ -33,84 +24,71 @@ Almost all (over 540) of the Olson timezones are supported.
|
|||||||
|
|
||||||
%description %_description
|
%description %_description
|
||||||
|
|
||||||
|
|
||||||
%package -n python2-%{name}
|
%package -n python2-%{name}
|
||||||
Summary: %summary
|
Summary: %summary
|
||||||
Requires: tzdata
|
|
||||||
%{?python_provide:%python_provide python2-%{name}}
|
%{?python_provide:%python_provide python2-%{name}}
|
||||||
|
BuildRequires: python2-devel
|
||||||
|
BuildRequires: python2-pytest
|
||||||
|
Requires: tzdata
|
||||||
# Remove before F30
|
# Remove before F30
|
||||||
Provides: pytz = %{version}-%{release}
|
Provides: pytz = %{version}-%{release}
|
||||||
Obsoletes: pytz < %{version}-%{release}
|
Obsoletes: pytz < %{version}-%{release}
|
||||||
|
|
||||||
%description -n python2-%{name} %_description
|
%description -n python2-%{name} %_description
|
||||||
|
|
||||||
%if 0%{?with_python3}
|
|
||||||
%package -n python3-%{name}
|
%package -n python3-%{name}
|
||||||
Summary: World Timezone Definitions for Python
|
Summary: %summary
|
||||||
Group: Development/Languages
|
%{?python_provide:%python_provide python3-%{name}}
|
||||||
BuildArch: noarch
|
|
||||||
BuildRequires: python3-devel
|
BuildRequires: python3-devel
|
||||||
BuildRequires: python3-pytest
|
BuildRequires: python3-pytest
|
||||||
Requires: tzdata
|
Requires: tzdata
|
||||||
|
|
||||||
%description -n python3-%{name}
|
%description -n python3-%{name} %_description
|
||||||
pytz brings the Olson tz database into Python. This library allows accurate
|
|
||||||
and cross platform timezone calculations using Python 2.3 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).
|
|
||||||
|
|
||||||
Almost all (over 540) of the Olson timezones are supported.
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%autosetup -p1
|
||||||
%patch0 -p1 -b .zoneinfo
|
|
||||||
%patch1 -p1 -b .removeTest
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%{__python2} setup.py build
|
%py2_build
|
||||||
%if 0%{?with_python3}
|
%py3_build
|
||||||
%{__python3} setup.py build
|
|
||||||
%endif # with_python3
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%{__python2} setup.py install --skip-build --root %{buildroot}
|
%py2_install
|
||||||
chmod +x %{buildroot}%{python2_sitelib}/pytz/*.py
|
|
||||||
rm -r %{buildroot}%{python2_sitelib}/pytz/zoneinfo
|
rm -r %{buildroot}%{python2_sitelib}/pytz/zoneinfo
|
||||||
pathfix.py -pn -i %{__python2} %{buildroot}%{python2_sitelib}
|
pathfix.py -pn -i %{__python2} %{buildroot}%{python2_sitelib}
|
||||||
|
|
||||||
%if 0%{?with_python3}
|
%py3_install
|
||||||
%{__python3} setup.py install --skip-build --root %{buildroot}
|
|
||||||
rm -r %{buildroot}%{python3_sitelib}/pytz/zoneinfo
|
rm -r %{buildroot}%{python3_sitelib}/pytz/zoneinfo
|
||||||
pathfix.py -pn -i %{__python3} %{buildroot}%{python3_sitelib}
|
pathfix.py -pn -i %{__python3} %{buildroot}%{python3_sitelib}
|
||||||
%endif # with_python3
|
|
||||||
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
PYTHONPATH=%{buildroot}%{python2_sitelib} py.test-%{python2_version} -v
|
PYTHONPATH=%{buildroot}%{python2_sitelib} %{__python2} -m pytest -v
|
||||||
%if 0%{?with_python3}
|
PYTHONPATH=%{buildroot}%{python3_sitelib} %{__python3} -m pytest -v
|
||||||
PYTHONPATH=%{buildroot}%{python3_sitelib} py.test-%{python3_version} -v
|
|
||||||
%endif
|
|
||||||
|
|
||||||
|
|
||||||
%files -n python2-%{name}
|
%files -n python2-%{name}
|
||||||
%license LICENSE.txt
|
%license LICENSE.txt
|
||||||
%doc CHANGES.txt README.txt
|
%doc README.txt
|
||||||
%{python2_sitelib}/pytz/
|
%{python2_sitelib}/pytz/
|
||||||
%{python2_sitelib}/*.egg-info
|
%{python2_sitelib}/*.egg-info
|
||||||
|
|
||||||
%if 0%{?with_python3}
|
|
||||||
%files -n python3-pytz
|
%files -n python3-pytz
|
||||||
%license LICENSE.txt
|
%license LICENSE.txt
|
||||||
%doc CHANGES.txt README.txt
|
%doc README.txt
|
||||||
%{python3_sitelib}/pytz/
|
%{python3_sitelib}/pytz/
|
||||||
%{python3_sitelib}/*.egg-info
|
%{python3_sitelib}/*.egg-info
|
||||||
%endif # with_python3
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Aug 23 2018 Miro Hrončok <mhroncok@redhat.com> - 2018.5-1
|
||||||
|
- Update to 2018.5 (#1508227)
|
||||||
|
|
||||||
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2017.2-10
|
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2017.2-10
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||||
|
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
|
diff --git a/pytz/tests/test_tzinfo.py b/pytz/tests/test_tzinfo.py
|
||||||
|
index b2640a8..4f5322b 100644
|
||||||
--- a/pytz/tests/test_tzinfo.py
|
--- a/pytz/tests/test_tzinfo.py
|
||||||
+++ b/pytz/tests/test_tzinfo.py
|
+++ b/pytz/tests/test_tzinfo.py
|
||||||
@@ -146,6 +146,7 @@ class PicklingTest(unittest.TestCase):
|
@@ -155,6 +155,7 @@ class PicklingTest(unittest.TestCase):
|
||||||
self._roundtrip_tzinfo(localized_tz)
|
self._roundtrip_tzinfo(localized_tz)
|
||||||
self._roundtrip_datetime(dt.replace(tzinfo=localized_tz))
|
self._roundtrip_datetime(dt.replace(tzinfo=localized_tz))
|
||||||
|
|
||||||
+ @unittest.skip('Fails with system-wide timezone database')
|
+ @unittest.skip('Fails with system-wide timezone database')
|
||||||
def testRoundtrip(self):
|
def testRoundtrip(self):
|
||||||
dt = datetime(2004, 2, 1, 0, 0, 0)
|
|
||||||
for zone in pytz.all_timezones:
|
for zone in pytz.all_timezones:
|
||||||
|
tz = pytz.timezone(zone)
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (pytz-2017.2.zip) = d67d64a64b4c21e0bd41da56020fc7b016aec9da7f3243f79b65704119f70b8a9cd4f5f905631b6761e06ecef93830e5e479e16c7b1611ac70e0cd2b39d5b916
|
SHA512 (pytz-2018.5.tar.gz) = 35b6bdd25b8e57c693da4379c2032401ef3cf290a57d8448c67dcaf1491a21d27ff25d932ef3ec3a51e31fbb7541e081073f292867a7d1ad47904b69dc7e4863
|
||||||
|
Loading…
Reference in New Issue
Block a user