GNU bug report logs -
#40406
python-matplotlib fails to build on i686-linux
Previous Next
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#40406: python-matplotlib fails to build on i686-linux
which was filed against the guix package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 40406 <at> debbugs.gnu.org.
--
40406: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=40406
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Hello Diego,
Diego Nicola Barbato <dnbarbato <at> posteo.de> writes:
> Hey,
>
> Diego Nicola Barbato <dnbarbato <at> posteo.de> writes:
>
> [...]
>
>> Apparently there is nothing wrong with the slider. Instead matrix
>> multiplication, which is used under the hood for transformations, seems
>> to sometimes produce incorrect results on i686-linux. I have reported
>> this as a separate bug (https://debbugs.gnu.org/41665).
>
> I got this wrong: This issue isn't caused by the Numpy bug, since
> Matplotlib doesn't use Numpy for transformations. Both bugs are caused
> by the excess precision of the x87 FPU's floating point registers.
>
> I've attached a patch which makes sure that the C and C++ extensions are
> compiled with -ffloat-store. This doesn't get rid of all possible
> rounding errors but it's enough for the slider test to pass.
Thanks for the investigationd and workaround! I've tested it and it
seems to work well. I've pushed a slightly modified version to master
as commit 81643c4cf3e61f5a98b92a72a92c230f5e7ca905.
Thank you!
Closing.
Maxim
[Message part 3 (message/rfc822, inline)]
Hi Guix,
The package python-matplotlib fails to build during the check phase on
i686-linux. The test failure appears to be deterministic:
--8<---------------cut here---------------start------------->8---
=================================== FAILURES ===================================
_______________________ test_slider_horizontal_vertical ________________________
def test_slider_horizontal_vertical():
fig, ax = plt.subplots()
slider = widgets.Slider(ax=ax, label='', valmin=0, valmax=24,
valinit=12, orientation='horizontal')
slider.set_val(10)
assert slider.val == 10
# check the dimension of the slider patch in axes units
box = slider.poly.get_extents().transformed(ax.transAxes.inverted())
> assert_allclose(box.bounds, [0, 0, 10/24, 1])
E AssertionError:
E Not equal to tolerance rtol=1e-07, atol=0
E
E Mismatch: 25%
E Max absolute difference: 1.11022302e-16
E Max relative difference: 2.66453526e-16
E x: array([ 0.000000e+00, -2.310706e-18, 4.166667e-01, 1.000000e+00])
E y: array([0. , 0. , 0.416667, 1. ])
/gnu/store/8g8yfikj63wf0y3hwvpk00hqj5wpfs7v-python-matplotlib-3.1.2/lib/python3.7/site-packages/matplotlib/tests/test_widgets.py:333: AssertionError
--8<---------------cut here---------------end--------------->8---
Im currently on commit 151f3d4.
Regards,
Diego
This bug report was last modified 4 years and 241 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.