diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2021-06-21 17:32:00 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2021-06-21 17:32:00 +0100 |
commit | 61f10f985e19dfe20a4d9552902625edd5b6eabb (patch) | |
tree | 50db31971b38c4e0358253ef5005058a46fc773e /dev-python/pytables | |
parent | 34dea8e38f88007799629d0a56b12dec480b1d21 (diff) |
gentoo resync : 21.06.2021
Diffstat (limited to 'dev-python/pytables')
-rw-r--r-- | dev-python/pytables/Manifest | 4 | ||||
-rw-r--r-- | dev-python/pytables/files/pytables-3.6.1-numpy-float.patch | 176 | ||||
-rw-r--r-- | dev-python/pytables/files/pytables-3.6.1-py310.patch | 49 | ||||
-rw-r--r-- | dev-python/pytables/pytables-3.6.1.ebuild | 31 |
4 files changed, 247 insertions, 13 deletions
diff --git a/dev-python/pytables/Manifest b/dev-python/pytables/Manifest index 0569c648710c..041cb176e785 100644 --- a/dev-python/pytables/Manifest +++ b/dev-python/pytables/Manifest @@ -1,3 +1,5 @@ +AUX pytables-3.6.1-numpy-float.patch 7336 BLAKE2B 7322dea9dcc5d115dd7fe8a92e5547359c2496326f7195d6b14f596ea8eaf69b8b3e583a7de68bb22c9346073de31e46e9bf36babc423eecd1e36772d6a6e094 SHA512 2807aa3ddcb9a9e0cd086e621d9a906c6de9c49ac1668f261ac284b7b28841c36645e42557fbe3b45b21dab9c8551fc022d5496658d8ed267516d54021791ef5 +AUX pytables-3.6.1-py310.patch 1960 BLAKE2B fd0dede7bf5b515e03d7f936b2e512b815053aed8a4e5fad6f68844a3cb99b3d51a44d8c665d6113c79bb44cafd4f85d12142d1a94e70bef454970498b1909b3 SHA512 06d28a86fad569373304167440d364341a32121c6f7fb6d777d7c320c97c6e3903f862f5372dc85b5c6f953b168aa26029d0559004003526730e9b5af3284dda DIST tables-3.6.1.tar.gz 4641089 BLAKE2B 4ef44b1263f40babe6719bac911ab191e9cb0c58c377705b755fa83f1fba5af1d0fab10b0b45bd6af619a9dce4842a80afad8d8fbab64c3be4f35a1b3f117ee3 SHA512 7f018b70251095049bce9075be4e19f72efba9d39121a35c4521f634b1dd5b81ab6de47df3bb44ad6b8b2dbdbff4e6d0985ad1a7b2f13b44f920c0935e5830ff -EBUILD pytables-3.6.1.ebuild 1683 BLAKE2B a2ae71e2caf405cde677f9f17b61fa388cf51cc5ffceec7d17bbfaecffaffed6832a7038ed09cbb17545e1d268bc6c06df58ec73c77a3b4c6c9e56e03994b2ac SHA512 02d1329941bf7d3accff065dc0f6512a2f8068817e94648b63fa6cece9ccea342c8b236b976bbddb7bbdf659c456981897680b9a1ba65efd94c2571e6cf823ba +EBUILD pytables-3.6.1.ebuild 1764 BLAKE2B 89b8f0309c49c54e4c2dc991cf21bd8271616c917f79b9f52ca21da9d755672cd00138741c664b41249b160467d73563cc7db1fb190baf9d56f0fb288d8a5f5b SHA512 bce9783d8f90e6543d6680c866be5fcd7c06d22d3c8011e1d1934926f87c0ba87d05767a09bbd2e0470b818efe431aec61f2986cb2d500bab6224f906fd6f23b MISC metadata.xml 894 BLAKE2B 279b64a5124a6471b3ea6ed8d2f82b8d62e5d8bc809168fb2ae1c3bfd8cfa07428c2ff7f07deb5042a6ccb5ba7af43bc45d0db82b9cfc79fa5d19c090d0500a3 SHA512 88dd752e6014f6f133b5df7db6c2aafce0b9da8cdbc057493916dbfbe1da4bf52e0ed43d570d68035fc8f12302794a381a54f5b07b9726b52601724163bc672c diff --git a/dev-python/pytables/files/pytables-3.6.1-numpy-float.patch b/dev-python/pytables/files/pytables-3.6.1-numpy-float.patch new file mode 100644 index 000000000000..71fa3b85dacf --- /dev/null +++ b/dev-python/pytables/files/pytables-3.6.1-numpy-float.patch @@ -0,0 +1,176 @@ +From d2a480d14f29fb1d2baee292bc6a2cca4817dcbd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl> +Date: Sun, 24 Jan 2021 16:36:21 +0100 +Subject: [PATCH] Use lowercase float/int as numpy dtype + +Float64 is gone with numpy 1.20, which causes doctests to fail +(https://bugzilla.redhat.com/show_bug.cgi?id=1914335). + +Similarly all uses of Float32, Int32 should be replaced by float32 and int32. + +>>> numpy.__version__ +'1.19.4' +>>> [k for k in numpy.sctypeDict.keys() if str(k).lower().startswith('float')] +['float16', 'Float16', 'float32', 'Float32', 'float64', 'Float64', 'float128', 'Float128', 'float_', 'float'] + +>>> numpy.__version__ +'1.20.0rc2' +>>> [k for k in numpy.sctypeDict.keys() if str(k).lower().startswith('float')] +['float16', 'float32', 'float64', 'float128', 'float_', 'float'] +--- + bench/bsddb-table-bench.py | 10 +++++----- + bench/postgres-search-bench.py | 4 ++-- + bench/pytables-search-bench.py | 6 +++--- + bench/recarray2-test.py | 2 +- + bench/shelve-bench.py | 10 +++++----- + bench/sqlite-search-bench.py | 4 ++-- + tables/atom.py | 2 +- + 7 files changed, 19 insertions(+), 19 deletions(-) + +diff --git a/bench/bsddb-table-bench.py b/bench/bsddb-table-bench.py +index dd9f875b..a2e02361 100644 +--- a/bench/bsddb-table-bench.py ++++ b/bench/bsddb-table-bench.py +@@ -83,11 +83,11 @@ def createFile(filename, totalrows, recsize, verbose): + # Get the record object associated with the new table + if recsize == "big": + isrec = Big() +- arr = np.array(np.arange(32), type=np.Float64) +- arr2 = np.array(np.arange(32), type=np.Float64) ++ arr = np.array(np.arange(32), type=np.float64) ++ arr2 = np.array(np.arange(32), type=np.float64) + elif recsize == "medium": + isrec = Medium() +- arr = np.array(np.arange(2), type=np.Float64) ++ arr = np.array(np.arange(2), type=np.float64) + else: + isrec = Small() + # print d +@@ -107,8 +107,8 @@ def createFile(filename, totalrows, recsize, verbose): + #d['TDCcount'] = i % 256 + d['ADCcount'] = (i * 256) % (1 << 16) + if recsize == "big": +- #d.float1 = np.array([i]*32, np.Float64) +- #d.float2 = np.array([i**2]*32, np.Float64) ++ #d.float1 = np.array([i]*32, np.float64) ++ #d.float2 = np.array([i**2]*32, np.float64) + arr[0] = 1.1 + d['float1'] = arr + arr2[0] = 2.2 +diff --git a/bench/postgres-search-bench.py b/bench/postgres-search-bench.py +index d2c9f4f4..7fe83f6a 100644 +--- a/bench/postgres-search-bench.py ++++ b/bench/postgres-search-bench.py +@@ -15,11 +15,11 @@ def flatten(l): + + + def fill_arrays(start, stop): +- col_i = numpy.arange(start, stop, type=numpy.Int32) ++ col_i = numpy.arange(start, stop, type=numpy.int32) + if userandom: + col_j = numpy.random.uniform(0, nrows, size=[stop - start]) + else: +- col_j = numpy.array(col_i, type=numpy.Float64) ++ col_j = numpy.array(col_i, type=numpy.float64) + return col_i, col_j + + # Generator for ensure pytables benchmark compatibility +diff --git a/bench/pytables-search-bench.py b/bench/pytables-search-bench.py +index 726d30b1..6417186b 100644 +--- a/bench/pytables-search-bench.py ++++ b/bench/pytables-search-bench.py +@@ -37,11 +37,11 @@ def create_db(filename, nrows): + stop = (j + 1) * step + if stop > nrows: + stop = nrows +- arr_f8 = np.arange(i, stop, type=np.Float64) +- arr_i4 = np.arange(i, stop, type=np.Int32) ++ arr_f8 = np.arange(i, stop, type=np.float64) ++ arr_i4 = np.arange(i, stop, type=np.int32) + if userandom: + arr_f8 += np.random.normal(0, stop * scale, shape=[stop - i]) +- arr_i4 = np.array(arr_f8, type=np.Int32) ++ arr_i4 = np.array(arr_f8, type=np.int32) + recarr = np.rec.fromarrays([arr_i4, arr_i4, arr_f8, arr_f8]) + table.append(recarr) + j += 1 +diff --git a/bench/recarray2-test.py b/bench/recarray2-test.py +index a8602d80..bf55389d 100644 +--- a/bench/recarray2-test.py ++++ b/bench/recarray2-test.py +@@ -22,7 +22,7 @@ delta = 0.000001 + # Creation of recarrays objects for test + x1 = np.array(np.arange(reclen)) + x2 = chararray.array(None, itemsize=7, shape=reclen) +-x3 = np.array(np.arange(reclen, reclen * 3, 2), np.Float64) ++x3 = np.array(np.arange(reclen, reclen * 3, 2), np.float64) + r1 = recarray.fromarrays([x1, x2, x3], names='a,b,c') + r2 = recarray2.fromarrays([x1, x2, x3], names='a,b,c') + +diff --git a/bench/shelve-bench.py b/bench/shelve-bench.py +index d30739d8..a591ed1e 100644 +--- a/bench/shelve-bench.py ++++ b/bench/shelve-bench.py +@@ -65,8 +65,8 @@ def createFile(filename, totalrows, recsize): + # Get the record object associated with the new table + if recsize == "big": + d = Big() +- arr = NA.array(NA.arange(32), type=NA.Float64) +- arr2 = NA.array(NA.arange(32), type=NA.Float64) ++ arr = NA.array(NA.arange(32), type=NA.float64) ++ arr2 = NA.array(NA.arange(32), type=NA.float64) + elif recsize == "medium": + d = Medium() + else: +@@ -87,15 +87,15 @@ def createFile(filename, totalrows, recsize): + #d.TDCcount = i % 256 + d.ADCcount = (i * 256) % (1 << 16) + if recsize == "big": +- #d.float1 = NA.array([i]*32, NA.Float64) +- #d.float2 = NA.array([i**2]*32, NA.Float64) ++ #d.float1 = NA.array([i]*32, NA.float64) ++ #d.float2 = NA.array([i**2]*32, NA.float64) + arr[0] = 1.1 + d.float1 = arr + arr2[0] = 2.2 + d.float2 = arr2 + pass + else: +- d.float1 = NA.array([i ** 2] * 2, NA.Float64) ++ d.float1 = NA.array([i ** 2] * 2, NA.float64) + #d.float1 = float(i) + #d.float2 = float(i) + d.grid_i = i +diff --git a/bench/sqlite-search-bench.py b/bench/sqlite-search-bench.py +index 76dc7c57..dc611695 100644 +--- a/bench/sqlite-search-bench.py ++++ b/bench/sqlite-search-bench.py +@@ -136,10 +136,10 @@ CREATE INDEX ivar3 ON small(var3); + if randomvalues: + var3 = np.random.uniform(minimum, maximum, shape=[j - i]) + else: +- var3 = np.arange(i, j, type=np.Float64) ++ var3 = np.arange(i, j, type=np.float64) + if noise: + var3 += np.random.uniform(-3, 3, shape=[j - i]) +- var2 = np.array(var3, type=np.Int32) ++ var2 = np.array(var3, type=np.int32) + var1 = np.array(None, shape=[j - i], dtype='s4') + if not heavy: + for n in range(j - i): +diff --git a/tables/atom.py b/tables/atom.py +index f92e16ad..f93d915b 100644 +--- a/tables/atom.py ++++ b/tables/atom.py +@@ -338,7 +338,7 @@ class Atom(metaclass=MetaAtom): + Traceback (most recent call last): + ... + ValueError: unknown NumPy scalar type: 'S5' +- >>> Atom.from_sctype('Float64') ++ >>> Atom.from_sctype('float64') + Float64Atom(shape=(), dflt=0.0) + + """ +-- +2.32.0 + diff --git a/dev-python/pytables/files/pytables-3.6.1-py310.patch b/dev-python/pytables/files/pytables-3.6.1-py310.patch new file mode 100644 index 000000000000..600516d16396 --- /dev/null +++ b/dev-python/pytables/files/pytables-3.6.1-py310.patch @@ -0,0 +1,49 @@ +From 2431150d691f5ccdb3da204a46e346c156ea2523 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl> +Date: Mon, 16 Nov 2020 10:53:05 +0100 +Subject: [PATCH] doctest: adjust __init__ TypeError formatting + +Python3.10 includes the class name in the TypeError string for +__init__(), so the literal match does not work anymore. +--- + tables/atom.py | 4 ++-- + tables/filters.py | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/tables/atom.py b/tables/atom.py +index 81d37c54..9cfd8609 100644 +--- a/tables/atom.py ++++ b/tables/atom.py +@@ -569,10 +569,10 @@ class Atom(metaclass=MetaAtom): + >>> atom3 = atom1.copy(shape=(2, 2)) + >>> print(atom3) + Int32Atom(shape=(2, 2), dflt=0) +- >>> atom1.copy(foobar=42) ++ >>> atom1.copy(foobar=42) #doctest: +ELLIPSIS + Traceback (most recent call last): + ... +- TypeError: __init__() got an unexpected keyword argument 'foobar' ++ TypeError: ...__init__() got an unexpected keyword argument 'foobar' + + """ + newargs = self._get_init_args() +diff --git a/tables/filters.py b/tables/filters.py +index f809ce77..7cb9b02d 100644 +--- a/tables/filters.py ++++ b/tables/filters.py +@@ -432,10 +432,10 @@ class Filters: + Filters(complevel=0, shuffle=False, bitshuffle=False, fletcher32=False, least_significant_digit=None) + >>> print(filters3) + Filters(complevel=1, complib='zlib', shuffle=False, bitshuffle=False, fletcher32=False, least_significant_digit=None) +- >>> filters1.copy(foobar=42) ++ >>> filters1.copy(foobar=42) #doctest: +ELLIPSIS + Traceback (most recent call last): + ... +- TypeError: __init__() got an unexpected keyword argument 'foobar' ++ TypeError: ...__init__() got an unexpected keyword argument 'foobar' + + """ + +-- +2.32.0 + diff --git a/dev-python/pytables/pytables-3.6.1.ebuild b/dev-python/pytables/pytables-3.6.1.ebuild index 0c4f1afc0ab4..67448098a5b3 100644 --- a/dev-python/pytables/pytables-3.6.1.ebuild +++ b/dev-python/pytables/pytables-3.6.1.ebuild @@ -1,10 +1,9 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 -DISTUTILS_USE_SETUPTOOLS=rdepend -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{8..10} ) PYTHON_REQ_USE="threads(+)" MY_PN=tables @@ -15,6 +14,7 @@ inherit distutils-r1 flag-o-matic DESCRIPTION="Hierarchical datasets for Python" HOMEPAGE="https://www.pytables.org/" SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" SLOT="0" KEYWORDS="amd64 ~arm ~arm64 x86 ~amd64-linux ~x86-linux" @@ -22,26 +22,33 @@ LICENSE="BSD" IUSE="doc examples test" RESTRICT="!test? ( test )" -RDEPEND=" +DEPEND=" app-arch/bzip2:0= app-arch/lz4:0= >=app-arch/zstd-1.0.0:= >=dev-libs/c-blosc-1.11.1:0= dev-libs/lzo:2= >=dev-python/numpy-1.8.1[${PYTHON_USEDEP}] - >=dev-python/numexpr-2.5.2[${PYTHON_USEDEP}] - dev-python/six[${PYTHON_USEDEP}] >=sci-libs/hdf5-1.8.15:0= " -DEPEND="${RDEPEND} +RDEPEND="${DEPEND} + >=dev-python/numexpr-2.5.2[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}]" +BDEPEND=" >=dev-python/cython-0.21[${PYTHON_USEDEP}] - test? ( dev-python/mock[${PYTHON_USEDEP}] ) + test? ( + dev-python/mock[${PYTHON_USEDEP}] + ${RDEPEND} + ) " -S="${WORKDIR}/${MY_P}" - DOCS=( RELEASE_NOTES.txt THANKS ) +PATCHES=( + "${FILESDIR}"/${P}-numpy-float.patch + "${FILESDIR}"/${P}-py310.patch +) + python_prepare_all() { export HDF5_DIR="${EPREFIX}"/usr rm tables/*.c || die @@ -58,7 +65,7 @@ python_compile() { python_test() { cd "${BUILD_DIR}"/lib* || die - ${EPYTHON} tables/tests/test_all.py || die + "${EPYTHON}" tables/tests/test_all.py -v || die } python_install_all() { |