diff options
Diffstat (limited to 'dev-python/pytz')
| -rw-r--r-- | dev-python/pytz/Manifest | 4 | ||||
| -rw-r--r-- | dev-python/pytz/files/pytz-2023.2-system-tzinfo.patch | 52 | ||||
| -rw-r--r-- | dev-python/pytz/metadata.xml | 18 | ||||
| -rw-r--r-- | dev-python/pytz/pytz-2026.1_p1.ebuild | 52 | ||||
| -rw-r--r-- | dev-python/pytz/pytz-2026.2.ebuild | 52 |
5 files changed, 178 insertions, 0 deletions
diff --git a/dev-python/pytz/Manifest b/dev-python/pytz/Manifest new file mode 100644 index 000000000000..ce6163ab05bc --- /dev/null +++ b/dev-python/pytz/Manifest @@ -0,0 +1,4 @@ +DIST pytz-2026.1.post1.tar.gz 321088 BLAKE2B 3ce2028abec2a07c753bdd822cb8c86d043e76322321fb96f8ccba19252f46d78a3bc21a7b63feaf2bf922b4aa97854e763fc352428ada9a9b576ecc9c9d0d0c SHA512 58e9ecf500c8945de73c32263bed54fe80770e948f3ad539670927a61b9d099f1a21d4948c5913b0721183d5a77bbf83b7b148f2d1b3bc659b669c4a8eae63f8 +DIST pytz-2026.1.post1.tar.gz.provenance 9503 BLAKE2B 709cc5bead68d64fcc511e734d945b7120517395b74fdd2d363c945bb67960e18644df8328c9b5a92e9a80f2e6be69d5352c390bc3c2b2087fb882108d7d8094 SHA512 2fb3f3d78a71927fb8971ae60360d97ee6c40cfd665f17ca0a5fffd04ca1cc2b67ac3e64faac7c3288abe826b86b97d7fbfb0565ac489e6c625928ce22ab9d74 +DIST pytz-2026.2.tar.gz 320861 BLAKE2B b05b2e3852595dc2b42d38e3c9604410af5889e4110cb28918874e9fe4a6340bda2bbfb469b8f5832d1cb6adb3ac19cc427d5b1d5361927d3a978c1cdeb134cc SHA512 b980715c2bf344734c7c2b1b83e94297a8a501b76e6e728553d99ddc1726aff4eb972c025e482d7dbbd4f11f706b573b5e7a1c030c315fdf556f7ca524436989 +DIST pytz-2026.2.tar.gz.provenance 9433 BLAKE2B 326250578fc445ebae1443b137243391a17b4d86c1a2ed3735676d89bfecd7626ee582f232901134038cea1ebea79a2e9331d94e655dce474fe165d9deee328a SHA512 655c17ef02c19c46689a2a450b8969b4fe74e01988f3a7e2994b343dadb2b509479dfa0467c5a379060ec52bab7823f5c52912e83e7bf6b9ad19885f1934c7e4 diff --git a/dev-python/pytz/files/pytz-2023.2-system-tzinfo.patch b/dev-python/pytz/files/pytz-2023.2-system-tzinfo.patch new file mode 100644 index 000000000000..85b639f0e615 --- /dev/null +++ b/dev-python/pytz/files/pytz-2023.2-system-tzinfo.patch @@ -0,0 +1,52 @@ +Inspired by the Fedora patch: +https://src.fedoraproject.org/rpms/pytz/blob/rawhide/f/pytz-zoneinfo.patch + +_allzones() is based on code in gen_tzinfo.py in upstream repo. + +diff --git a/pytz/__init__.py b/pytz/__init__.py +index f89d0eb..d00f3bb 100644 +--- a/pytz/__init__.py ++++ b/pytz/__init__.py +@@ -75,6 +75,21 @@ else: # Python 2.x + return s.encode('ASCII') + + ++def _allzones(): ++ for dirpath, dirnames, filenames in os.walk(_PYTZ_TZDATADIR): ++ for f in filenames: ++ p = os.path.join(dirpath, f) ++ with open(p, 'rb') as tzfile: ++ if tzfile.read(4) == b'TZif': ++ yield os.path.relpath(p, _PYTZ_TZDATADIR) ++ ++ ++_PYTZ_TZDATADIR = os.environ.get('PYTZ_TZDATADIR', '/usr/share/zoneinfo') ++_all_timezones_unchecked = LazyList(x for x in _allzones()) ++all_timezones = _all_timezones_unchecked ++all_timezones_set = LazySet(all_timezones) ++ ++ + def open_resource(name): + """Open a resource from the zoneinfo subdir for reading. + +@@ -88,7 +102,7 @@ def open_resource(name): + for part in name_parts: + if part == os.path.pardir or os.sep in part: + raise ValueError('Bad path segment: %r' % part) +- zoneinfo_dir = os.environ.get('PYTZ_TZDATADIR', None) ++ zoneinfo_dir = _PYTZ_TZDATADIR + if zoneinfo_dir is not None: + filename = os.path.join(zoneinfo_dir, *name_parts) + else: +diff --git a/setup.py b/setup.py +index 24f7f37..b03592c 100644 +--- a/setup.py ++++ b/setup.py +@@ -21,7 +21,6 @@ for dirpath, dirnames, filenames in os.walk(os.path.join('pytz', 'zoneinfo')): + resources.extend([os.path.join(basepath, filename) for filename in filenames]) + package_data = {'pytz': resources} + +-assert len(resources) > 10, 'zoneinfo files not found!' + + setup( + name='pytz', diff --git a/dev-python/pytz/metadata.xml b/dev-python/pytz/metadata.xml new file mode 100644 index 000000000000..d7b6b0fe68c4 --- /dev/null +++ b/dev-python/pytz/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>python@gentoo.org</email> + <name>Python</name> + </maintainer> + <longdescription lang="en"> + 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). + Amost all (over 540) of the Olson timezones are supported. + </longdescription> + <stabilize-allarches /> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/dev-python/pytz/pytz-2026.1_p1.ebuild b/dev-python/pytz/pytz-2026.1_p1.ebuild new file mode 100644 index 000000000000..606702db015d --- /dev/null +++ b/dev-python/pytz/pytz-2026.1_p1.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/stub42/pytz +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="World timezone definitions for Python" +HOMEPAGE=" + https://pythonhosted.org/pytz/ + https://github.com/stub42/pytz/ + https://pypi.org/project/pytz/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + || ( + >=sys-libs/timezone-data-2023b + sys-libs/glibc[vanilla] + ) +" +BDEPEND=" + test? ( + ${RDEPEND} + ) +" + +src_prepare() { + distutils-r1_src_prepare + + # unbundle timezone-data + rm -r pytz/zoneinfo || die + # remove hardcoded list of all timezones but leave subjective set + # of "common timezones" + sed -i -e '/^_all_timezones_unchecked/,/^all_timezones_set/d' pytz/__init__.py || die + eapply "${FILESDIR}"/pytz-2023.2-system-tzinfo.patch +} + +python_test() { + "${EPYTHON}" pytz/tests/test_tzinfo.py -v || + die "Tests fail with ${EPYTHON}" +} diff --git a/dev-python/pytz/pytz-2026.2.ebuild b/dev-python/pytz/pytz-2026.2.ebuild new file mode 100644 index 000000000000..25e025d264d4 --- /dev/null +++ b/dev-python/pytz/pytz-2026.2.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/stub42/pytz +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="World timezone definitions for Python" +HOMEPAGE=" + https://pythonhosted.org/pytz/ + https://github.com/stub42/pytz/ + https://pypi.org/project/pytz/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + || ( + >=sys-libs/timezone-data-2023b + sys-libs/glibc[vanilla] + ) +" +BDEPEND=" + test? ( + ${RDEPEND} + ) +" + +src_prepare() { + distutils-r1_src_prepare + + # unbundle timezone-data + rm -r pytz/zoneinfo || die + # remove hardcoded list of all timezones but leave subjective set + # of "common timezones" + sed -i -e '/^_all_timezones_unchecked/,/^all_timezones_set/d' pytz/__init__.py || die + eapply "${FILESDIR}"/pytz-2023.2-system-tzinfo.patch +} + +python_test() { + "${EPYTHON}" pytz/tests/test_tzinfo.py -v || + die "Tests fail with ${EPYTHON}" +} |
