While packaging this project for Fedora, we encountered test failures:
test entropy::tests::test_kl ... ok
test entropy::tests::test_kl_with_noisy_negative_qs - should panic ... FAILED
test histogram::bins::bins_tests::get_panics_for_out_of_bounds_indexes - should panic ... ok
test entropy::tests::test_cross_entropy_with_noisy_negative_qs - should panic ... FAILED
test histogram::strategies::auto_tests::empty_arrays_are_bad ... ok
I have tried locally with --profile dev/release and confirmed that the failure of "should_panic" is specific to release. We believe the issue is that f64::log does not (always?) panic for negative numbers, instead it would just return NaN.
Edit: we discussed it a bit more and it is more likely because of noisy_float implementation
For each floating point number that is created, a debug_assert! invocation is used to check if it is valid or not.
While packaging this project for Fedora, we encountered test failures:
https://github.com/rust-ndarray/ndarray-stats/blob/2b07b9ede4d307c0e11618e340ddc717e969ef73/src/entropy.rs#L313-L327
I have tried locally with
--profile dev/release
and confirmed that the failure of "should_panic" is specific torelease
. We believe the issue is thatf64::log
does not (always?) panic for negative numbers, instead it would just return NaN.Edit: we discussed it a bit more and it is more likely because of
noisy_float
implementation