Subject: Re: bug#22129: python-matplotlib: Non-deterministic build failures on armhf
From: Maxim Cournoyer <[email-masked]>
To: Mark H Weaver <[email-masked]>
Cc: [email-masked]
Date: Fri, 20 Nov 2020 10:07:10 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello Mark,

Mark H Weaver <[email-masked]> writes:

> Over the last month, the 'python-matplotlib' build on armhf has failed
> non-deterministically 4 times due to timeout (1 hour of silence) in the
> same place:
>
> phase `install' succeeded after 71.4 seconds
> starting phase `install-doc'
> Running Sphinx v1.2.3
> Initializing GitHub plugin
> loading pickled environment... failed: [Errno 2] No such file or directory: '/tmp/nix-build-python-matplotlib-1.4.3.drv-0/matplotlib-1.4.3/doc/build/doctrees/environment.pickle'
> [autosummary] generating autosummary for: api/afm_api.rst, api/animation_api.rst, api/api_changes.rst, api/artist_api.rst, api/axes_api.rst, api/axis_api.rst, api/backend_bases_api.rst, api/backend_gtkagg_api.rst, api/backend_pdf_api.rst, api/backend_qt4agg_api.rst, ..., users/recipes.rst, users/screenshots.rst, users/shell.rst, users/style_sheets.rst, users/text_intro.rst, users/text_props.rst, users/tight_layout_guide.rst, users/transforms_tutorial.rst, users/usetex.rst, users/whats_new.rst
> Failed to import 'matplotlib.backends.backend_wxagg': no module named matplotlib.backends.backend_wxagg
> Failed to import 'matplotlib.backends.backend_qt4agg': no module named matplotlib.backends.backend_qt4agg
> animation, api, axes_grid, color, event_handling, images_contours_and_fields, lines_bars_and_markers, misc, mplot3d, pie_and_polar_charts, pylab_examples, shapes_and_collections, showcase, specialty_plots, statistics, style_sheets, subplots_axes_and_figures, tests, text_labels_and_annotations, ticks_and_spines, units, user_interfaces, widgets, 
> building [html]: targets for 127 source files that are out of date
> updating environment: 607 added, 0 changed, 0 removed
> reading sources... [  0%] api/afm_api
> reading sources... [  0%] api/animation_api
> reading sources... [  0%] api/api_changes
> reading sources... [  0%] api/artist_api
> reading sources... [  0%] api/axes_api
> reading sources... [  0%] api/axis_api
> reading sources... [  1%] api/backend_bases_api
> reading sources... [  1%] api/backend_gtkagg_api
> reading sources... [  1%] api/backend_pdf_api
> reading sources... [  1%] api/backend_qt4agg_api
> reading sources... [  1%] api/backend_wxagg_api
> reading sources... [  1%] api/cbook_api
> reading sources... [  2%] api/cm_api
> reading sources... [  2%] api/collections_api
> building of `/gnu/store/0hm09h6a4469z3j2r3p7cm6jiwidm3ff-python-matplotlib-1.4.3.drv' timed out after 3600 seconds of silence
> @ build-failed /gnu/store/0hm09h6a4469z3j2r3p7cm6jiwidm3ff-python-matplotlib-1.4.3.drv - timeout
> guix build: error: build failed: build of `/gnu/store/0hm09h6a4469z3j2r3p7cm6jiwidm3ff-python-matplotlib-1.4.3.drv' failed
>
> In all four cases, the timeout occurred in the same place, after
> printing "reading sources... [ 2%] api/collections_api".
>
> The same builds succeeded on later attempts, e.g.:
>
>   http://hydra.gnu.org:3000/build/864760#tabs-buildsteps
>
>       Mark

I've made a couple Python reproducibility enhancements on the
core-updates branch (commits c94a2864d4 and cf495c934e), which allowed
python-matplotlib to be built reproducibly.

The CI doesn't know of any recent failure for the package on armhf-linux
(see:
http://ci.guix.gnu.org/search?query=python-matplotlib%20system:armhf-linux&border-low-id=2144656).

Closing.

Thank you for the report!

Maxim