27/11/2023 18:00, Bruce Richardson:
> On Mon, Nov 27, 2023 at 05:45:52PM +0100, Thomas Monjalon wrote:
> > 06/07/2023 14:49, Christian Ehrhardt:
> > > On Mon, Jul 3, 2023 at 5:29 PM Thomas Monjalon <tho...@monjalon.net> 
> > > wrote:
> > > >
> > > > 29/06/2023 14:58, christian.ehrha...@canonical.com:
> > > > > From: Christian Ehrhardt <christian.ehrha...@canonical.com>
> > > > >
> > > > > By adding -j we build in parallel, to make building on multiprocessor
> > > > > machines more effective. While that works it does also break
> > > > > reproducible builds as the order of the sphinx generated 
> > > > > searchindex.js
> > > > > is depending on execution speed of the individual processes.
> > > > [...]
> > > > > -if Version(ver) >= Version('1.7'):
> > > > > -    sphinx_cmd += ['-j', 'auto']
> > > >
> > > > What is the impact on build speed on an average machine?
> > > 
> > > Hi,
> > > I haven't tested this in isolation as it was just a mandatory change
> > > on the Debian/Ubuntu side.
> > > And the time for exactly and only the doc build is hidden inside the
> > > concurrency of meson.
> > > But I can compare a full build [1] and a full build with the change [2].
> > > 
> > > That is an average build machine and it is 35 seconds slower with the
> > > change to no more do doc builds in parallel.
> > 
> > I would prefer adding an option for reproducible build
> > (which is not a common requirement).
> > 
> Taking a slightly different tack, is it possible to sort the searchindex.js
> file post-build, so that even reproducible builds get the benefits of
> parallelism?

We never got a response to this question.

I apply this patch, but I'm waiting for an effort in the direction
Bruce is proposing.

I remove the line "from packaging.version import Version" which becomes useless.
Same for PIPE and STDOUT.

For now we are slowing down the build of docs because there is a strong push
for reproducibility and not enough effort for doing it efficiently.


Reply via email to