summaryrefslogtreecommitdiff
path: root/dev-python/pandas
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-08-31 22:12:06 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-08-31 22:12:06 +0100
commit4019251b91707412704a1c46582e25904f8dce54 (patch)
tree19bd46360357ea2d3cb93fb9eb735a4522e8f4e9 /dev-python/pandas
parent260722f712fe06c113e7b13ad2e924ed14aaf0c4 (diff)
gentoo auto-resync : 31:08:2023 - 22:12:06
Diffstat (limited to 'dev-python/pandas')
-rw-r--r--dev-python/pandas/Manifest3
-rw-r--r--dev-python/pandas/files/pandas-2.1.0-build-system.patch53
-rw-r--r--dev-python/pandas/pandas-2.1.0.ebuild94
3 files changed, 136 insertions, 14 deletions
diff --git a/dev-python/pandas/Manifest b/dev-python/pandas/Manifest
index c9faae23453f..2dd46f68f8fa 100644
--- a/dev-python/pandas/Manifest
+++ b/dev-python/pandas/Manifest
@@ -1,3 +1,4 @@
+AUX pandas-2.1.0-build-system.patch 1917 BLAKE2B 22a9e64f6b657394a6f66bbd0fe62c77f7b25bcb1dd2faf528f54cb202a123adfe3da1ed706363d6b6bac5d1852e01b366cf5e551827254038b2700b86877923 SHA512 3c7a9ab7ac8f324674e171c91c21006031882907f47ed5cf9b5a1e02fbc025ed579bdf0622fb392809fa4b9478f6c5492efa38eae166056d9595d2e4ea5821c3
DIST pandas-1.5.1.tar.gz 5199286 BLAKE2B 17d98870f3397d7a9289a18708021a614b1d456e2ea99dae8927727aabb8aab73bd31f25c3035947f8f4c38404e7d971bf999500b300307b19a2cf6029763d0e SHA512 e5f25f21f17f36c6488f14fbfa391beb9f1989652de01cb8346d2826dead9331fea27295ee1e6f42d0875f2f1a91fcd23d606edd339432589bca5ba8d89e5ecd
DIST pandas-1.5.2.tar.gz 5201551 BLAKE2B c6a8156a6c116f1b576837882e4ad4ada6cf21bf72acd673d74bdb1dda4f97f88a5e6422e8f8ad2fbbb85a334cd68cb0abae316d5826c54a85baf8b325ab6183 SHA512 1e6b653ff418c839895946123f90fffcfafd57f24dfbd6bae4e9988893b7d57d6276ed101112c8f9730af53f600d006fe3a53bbed597c0376856f2cfc90c1f05
DIST pandas-1.5.3.tar.gz 5203060 BLAKE2B 846a6caa8ead6a2556303494f92e2091582d8fcde2aee424fa172c4e29c189a7305261f6a931a20249e969668646ff4a3d605ee1b57785fa3677dfbd137b3602 SHA512 3c725c33dcaf78b952d2eb966ced73ff0073162a01d3cbcb722d58d8f12a82163e6e684c27284c735bdfb32dea263b960f70f6a80ff93e6b316316d40835ae35
@@ -13,5 +14,5 @@ EBUILD pandas-2.0.0.ebuild 7485 BLAKE2B f8e46eb256077d91844b5c158aed257f4072e57d
EBUILD pandas-2.0.1.ebuild 7523 BLAKE2B 06f0c8337b31b89535745057efe19d192f6fcd4cb5d1e0eda8b3f3bc809533618cad487885159a04b8475b413e87640be62b376bac3364a2fbee83f49a91691f SHA512 9d7aa683cf0bae4f847d1e28eaf5b1100bfffad292b8a95d5a857e21307a82a95058c13957d3452730c88f31d1cb2aa28990d10457e1b28a779cf567ee03a1f4
EBUILD pandas-2.0.2.ebuild 7601 BLAKE2B 806c707327c80b0e914e4a6e804aab5f24f7ca1fd79fe3ac15dbc1cba63ca65d8b7df97b2d78722f8526e3a32c07b8f31bb8ea418d886387fb711a6090453cb9 SHA512 98960556415b55c48f9123006791066e22cb8ac199c5571926b03ac709057036fefab6c9c4f3361b2cd0adaba59d51caa8a327d98327feda9fff79f2c78c2351
EBUILD pandas-2.0.3-r1.ebuild 10112 BLAKE2B 46ee9d87dec04e79937dafc79104bbca11fc45d7ea2e45e985cd4bf90f355def967060d22dd807b90d968b359a9d63c80c965cacb148da1310d074a905cf22d1 SHA512 090f1a1fc78d920b9d5b38e932c285100b01607b6ab54d2839d70db9954f5bf12c3d1beba74f05feac13f11b132f4af2ae6e297a54fc785e63fa6cf55feda7b9
-EBUILD pandas-2.1.0.ebuild 4801 BLAKE2B ffcc48186e67d4d61b79c931ba4e0590ab321bd1156a832fdd06e9bc7f7a49df48be8a6752b9bce7df589bdce9567324bf2c5ce9878aabe4e5e44b51901d74e7 SHA512 5398a5f31608ea0056e6f4cb9c510568f543daad488b0e2bc4dd48f4b2048c1b9e109beb2cac4eeb030ccdb7c7a12204001f531f0f1854b20fc1c30f0d95c8df
+EBUILD pandas-2.1.0.ebuild 8709 BLAKE2B 39cc2e325bd4a93eb61dee4c4f2c9151d557509cc15369ba536297d5d34cd0ab94dd0c44835088bd598a35dbec8d701f46c6c447142b8238e18fadfce4ca2f89 SHA512 0fcf4d85df5871701cf9ee6ae8cbf2872dd0078b71458d9b1a9fb30df0b03b9a2ca65996d9a03dc426ede462f85ed6a1c4d1947a760072b425d874bbb3f82097
MISC metadata.xml 920 BLAKE2B d6bd854acdd851d578038657d91adaedf4f220dbdc5905ebba5e35e74437c6d5bc2384061f7796a6f359aa128c526485635debfd0e1a9646d09daed740167c87 SHA512 dcd949e89cae9df918acb3cf8be5ad8c396ee5e646d2179aa2b646fafa15ffc11e9ccf853df8d7fdcc787f88ce7063639d8d87715aaba943774edc8ad98b540a
diff --git a/dev-python/pandas/files/pandas-2.1.0-build-system.patch b/dev-python/pandas/files/pandas-2.1.0-build-system.patch
new file mode 100644
index 000000000000..3f858647f919
--- /dev/null
+++ b/dev-python/pandas/files/pandas-2.1.0-build-system.patch
@@ -0,0 +1,53 @@
+From 2e8e37e495b85856bb440e67db9a6a72a37cfedd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Thu, 31 Aug 2023 18:21:26 +0200
+Subject: [PATCH] Fix build system problems
+
+Fix missing dependency for interval library, and workaround duplicate
+__init__.py files.
+
+https://github.com/pandas-dev/pandas/issues/54888
+https://github.com/pandas-dev/pandas/issues/54889
+---
+ pandas/_libs/meson.build | 7 ++-----
+ pandas/_libs/tslibs/meson.build | 4 ----
+ 2 files changed, 2 insertions(+), 9 deletions(-)
+
+diff --git a/pandas/_libs/meson.build b/pandas/_libs/meson.build
+index f302c64..07d2d8a 100644
+--- a/pandas/_libs/meson.build
++++ b/pandas/_libs/meson.build
+@@ -69,7 +69,8 @@ libs_sources = {
+ 'index': {'sources': ['index.pyx', _index_class_helper]},
+ 'indexing': {'sources': ['indexing.pyx']},
+ 'internals': {'sources': ['internals.pyx']},
+- 'interval': {'sources': ['interval.pyx', _intervaltree_helper]},
++ 'interval': {'sources': ['interval.pyx', _intervaltree_helper],
++ 'deps': _khash_primitive_helper_dep},
+ 'join': {'sources': ['join.pyx', _khash_primitive_helper],
+ 'deps': _khash_primitive_helper_dep},
+ 'lib': {'sources': ['lib.pyx', 'src/parser/tokenizer.c']},
+@@ -113,8 +114,4 @@ foreach ext_name, ext_dict : libs_sources
+ )
+ endforeach
+
+-py.install_sources('__init__.py',
+- pure: false,
+- subdir: 'pandas/_libs')
+-
+ subdir('window')
+diff --git a/pandas/_libs/tslibs/meson.build b/pandas/_libs/tslibs/meson.build
+index 14d2eef..a862345 100644
+--- a/pandas/_libs/tslibs/meson.build
++++ b/pandas/_libs/tslibs/meson.build
+@@ -30,7 +30,3 @@ foreach ext_name, ext_dict : tslibs_sources
+ install: true
+ )
+ endforeach
+-
+-py.install_sources('__init__.py',
+- pure: false,
+- subdir: 'pandas/_libs/tslibs')
+--
+2.42.0
+
diff --git a/dev-python/pandas/pandas-2.1.0.ebuild b/dev-python/pandas/pandas-2.1.0.ebuild
index 9de1179c87be..327bd80ea823 100644
--- a/dev-python/pandas/pandas-2.1.0.ebuild
+++ b/dev-python/pandas/pandas-2.1.0.ebuild
@@ -10,7 +10,7 @@ PYTHON_REQ_USE="threads(+)"
VIRTUALX_REQUIRED="manual"
-inherit distutils-r1 multiprocessing optfeature virtualx
+inherit distutils-r1 multiprocessing optfeature pypi virtualx
DESCRIPTION="Powerful data structures for data analysis and statistics"
HOMEPAGE="
@@ -18,19 +18,10 @@ HOMEPAGE="
https://github.com/pandas-dev/pandas/
https://pypi.org/project/pandas/
"
-SRC_URI="
- https://github.com/pandas-dev/pandas/releases/download/v${PV}/${P}.tar.gz
-"
-S=${WORKDIR}/${P/_/}
SLOT="0"
LICENSE="BSD"
-# new meson build that:
-# 1) sometimes fails on .pxi.in → .pyx ordering
-# https://github.com/pandas-dev/pandas/issues/54889
-# 2) creates a broken wheel with two pandas/_libs/__init__.py files
-# https://github.com/pandas-dev/pandas/issues/54888
-KEYWORDS=""
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
IUSE="full-support minimal test X"
RESTRICT="!test? ( test )"
@@ -97,6 +88,7 @@ BDEPEND="
>=dev-python/pytest-xdist-2.2.0[${PYTHON_USEDEP}]
>=dev-python/psycopg-2.9.3:2[${PYTHON_USEDEP}]
>=dev-python/xlsxwriter-3.0.3[${PYTHON_USEDEP}]
+ sys-apps/which
x11-misc/xclip
x11-misc/xsel
)
@@ -108,16 +100,92 @@ RDEPEND="
full-support? ( ${OPTIONAL_DEPEND} )
"
+PATCHES=(
+ "${FILESDIR}/${P}-build-system.patch"
+)
+
src_test() {
virtx distutils-r1_src_test
}
python_test() {
+ local EPYTEST_DESELECT=(
+ # test for rounding errors, fails if we have better precision
+ # e.g. on amd64 with FMA or on arm64
+ # https://github.com/pandas-dev/issues/38921
+ tests/window/test_rolling.py::test_rolling_var_numerical_issues
+
+ # TODO; unhappy about DISPLAY?
+ tests/test_downstream.py::test_seaborn
+
+ # OOMs
+ tests/io/parser/test_c_parser_only.py::test_bytes_exceed_2gb
+
+ # TODO: numexpr says "forbidden control characters"
+ tests/computation/test_eval.py::TestOperations::test_multi_line_expression_local_variable
+ 'tests/computation/test_eval.py::test_query_token[numexpr-Temp(\xb0C)]'
+ tests/frame/test_query_eval.py::TestDataFrameQueryBacktickQuoting::test_lots_of_operators_string
+ tests/frame/test_query_eval.py::TestDataFrameQueryBacktickQuoting::test_multiple_spaces
+ tests/frame/test_query_eval.py::TestDataFrameQueryBacktickQuoting::test_parenthesis
+ tests/frame/test_query_eval.py::TestDataFrameQueryBacktickQuoting::test_start_with_spaces
+ tests/frame/test_query_eval.py::TestDataFrameQueryNumExprPandas::test_local_syntax
+ tests/frame/test_query_eval.py::TestDataFrameQueryNumExprPandas::test_local_variable_with_in
+ tests/frame/test_query_eval.py::TestDataFrameQueryNumExprPandas::test_nested_scope
+ tests/frame/test_query_eval.py::TestDataFrameQueryNumExprPandas::test_query_scope
+
+ # TODO: missing data not covered by --no-strict-data-files?
+ tests/io/xml/test_xml.py::test_empty_stylesheet
+ tests/io/xml/test_xml.py::test_wrong_file_path
+
+ # TODO
+ tests/frame/test_arithmetic.py::TestFrameFlexArithmetic::test_floordiv_axis0_numexpr_path
+
+ # deprecation warning
+ tests/io/pytables/test_retain_attributes.py::test_retain_index_attributes2
+
+ # Needs 64-bit time_t (TODO: split into 32-bit arch only section)
+ tests/tseries/offsets/test_year.py::test_add_out_of_pydatetime_range
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BusinessDay]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BusinessHour]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BusinessMonthEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BusinessMonthBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BQuarterEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BQuarterBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-CustomBusinessDay]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-CustomBusinessHour]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-CustomBusinessMonthEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-CustomBusinessMonthBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-MonthEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-MonthBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-SemiMonthBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-SemiMonthEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-QuarterEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-LastWeekOfMonth]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-WeekOfMonth]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-Week]'
+
+ # alignment issues: bug #911660 (fixed upstream but not yet in a release)
+ # https://github.com/pandas-dev/issues/54391
+ tests/io/sas/test_byteswap.py::test_float_byteswap
+
+ # hdf / pytables have alignment problems: bug #911660
+ # https://github.com/pandas-dev/issues/54396
+ tests/io/pytables/test_append.py::test_append_frame_column_oriented
+ tests/io/pytables/test_store.py::test_select_filter_corner
+ )
+
local -x LC_ALL=C.UTF-8
cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
"${EPYTHON}" -c "import pandas; pandas.show_versions()" || die
- epytest pandas --skip-slow --skip-network -m "not single" \
- -n "$(makeopts_jobs)" || die "Tests failed with ${EPYTHON}"
+ # --no-strict-data-files is necessary since upstream prevents data
+ # files from even being included in GitHub archives, sigh
+ epytest pandas/tests \
+ --no-strict-data-files \
+ --maxfail=32 \
+ -m "not single and not slow and not network" \
+ -n "$(makeopts_jobs)" --dist=worksteal ||
+ die "Tests failed with ${EPYTHON}"
+ rm test-data.xml || die
}
pkg_postinst() {