11 , oldest-supported-numpy
66 buildPythonPackage rec {
71 disabled = pythonOlder "3.9";
73 src = fetchFromGitHub {
76 rev = "refs/tags/v${version}";
77 hash = "sha256-6SgW4BtO7EFnS8P8LL4AGk5EdPwOQ0+is0wXgqsm9w0=";
81 substituteInPlace pyproject.toml \
82 --replace "meson-python==0.13.1" "meson-python>=0.13.1" \
83 --replace "meson==1.2.1" "meson>=1.2.1"
95 ++ versioneer.optional-dependencies.toml
96 ++ lib.optionals (pythonOlder "3.12") [
97 oldest-supported-numpy
100 enableParallelBuilding = true;
102 propagatedBuildInputs = [
109 passthru.optional-dependencies = let
157 output_formatting = [
187 all = lib.concatLists (lib.attrValues extras);
190 nativeCheckInputs = [
196 ] ++ lib.optionals (stdenv.isLinux) [
197 # for locale executable
199 ] ++ lib.optionals (stdenv.isDarwin) [
200 # for locale executable
204 # don't max out build cores, it breaks tests
205 dontUsePytestXdist = true;
207 __darwinAllowLocalNetworking = true;
210 # https://github.com/pandas-dev/pandas/blob/main/test_fast.sh
211 "-m" "'not single_cpu and not slow and not network and not db and not slow_arm'"
212 # https://github.com/pandas-dev/pandas/issues/54907
213 "--no-strict-data-files"
218 # AssertionError: Did not see expected warning of class 'FutureWarning'
219 "test_parsing_tzlocal_deprecated"
220 ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
221 # tests/generic/test_finalize.py::test_binops[and_-args4-right] - AssertionError: assert {} == {'a': 1}
223 # These tests are unreliable on aarch64-darwin. See https://github.com/pandas-dev/pandas/issues/38921.
225 ] ++ lib.optional stdenv.is32bit [
226 # https://github.com/pandas-dev/pandas/issues/37398
227 "test_rolling_var_numerical_issues"
230 # Tests have relative paths, and need to reference compiled C extensions
231 # so change directory where `import .test` is able to be resolved
234 export LC_ALL="en_US.UTF-8"
235 cd $out/${python.sitePackages}/pandas
237 # TODO: Get locale and clipboard support working on darwin.
238 # Until then we disable the tests.
239 + lib.optionalString stdenv.isDarwin ''
240 # Fake the impure dependencies pbpaste and pbcopy
241 echo "#!${runtimeShell}" > pbcopy
242 echo "#!${runtimeShell}" > pbpaste
243 chmod a+x pbcopy pbpaste
244 export PATH=$(pwd):$PATH
247 pythonImportsCheck = [
252 # pandas devs no longer test i686, it's commonly broken
253 # broken = stdenv.isi686;
254 changelog = "https://pandas.pydata.org/docs/whatsnew/index.html";
255 description = "Powerful data structures for data analysis, time series, and statistics";
256 downloadPage = "https://github.com/pandas-dev/pandas";
257 homepage = "https://pandas.pydata.org";
258 license = licenses.bsd3;
260 Flexible and powerful data analysis / manipulation library for
261 Python, providing labeled data structures similar to R data.frame
262 objects, statistical functions, and much more.
264 maintainers = with maintainers; [ raskin fridh knedlsepp ];