The tests in question are checking that numexpr and numpy give the same
answers (by default, pandas uses numexpr if available for large arrays
but numpy for small ones), and require integers to match exactly. The
failing values are all 15**15, which is 437893890380859375 in exact
arithmetic but 437893890380859392 in double-precision arithmetic.
numpy int**int returns an int but uses doubles internally, so returns
437893890380859392. (Upstream agree this is a bug, but haven't decided
whether it should be an exact int or a float:
https://github.com/numpy/numpy/issues/2475
https://github.com/numpy/numpy/issues/899 )
numexpr in jessie and testing does the same (which is why pandas built
successfully before), but numexpr in sid returns the correct
437893890380859375. (Given how little changed between 2.6.0 and 2.6.1,
https://github.com/pydata/numexpr/commits/master, I suspect the cause of
this may be further up the stack than numexpr itself, but have not
actually done a "compile numexpr 2.6.0 in sid" test.)
Hence, this failure is the result of an improvement(!), and the obvious
workaround to get pandas building again would be to use approximate
rather than exact matching in the tests in question.
(You don't need to rebuild pandas to see this failure: running the test
on its own, i.e. nosetests3 -v pandas/tests/test_expressions.py , is
sufficient.)
- Bug#839327: pandas: FTBFS: tests failures Rebecca N. Palmer
-