[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Preliminary review of dpkg-genbuildinfo


On Mon, 2015-04-27 at 14:14:57 +0200, Jérémy Bobbio wrote:
> Jérémy Bobbio:
> > > > +foreach my $file (sort $dist->get_files()) {
> > > 
> > > Why the sort, the function is supposed to preserve the same insertion
> > > order.
> > 
> > Now I think I remember what was happening. In case of parallel builds,
> > it might be possible that files get added to debian/files in different
> > orders. […]
> Now this happened again on vim. The order of files in the .changes is
> not stable:
> https://reproducible.debian.net/dbd/unstable/amd64/vim_7.4.712-1.debbindiff.html
> The full build log is available at:
> https://jenkins.debian.net/job/reproducible_builder_zeta/6733/consoleText

> Any idea why files in the .changes gets written in a different order?
> (the .buildinfo is fine)

Yes! Parallel builds, which I confirmed you are using from the logs,
and I guess I assumed you where not using.

In any case, given this, your initial change does make sense, but I
think it's in the wrong place. I've instead modified Dpkg::Dist::Files
to always sort the files list, so that any other program parsing that
file will automatically get reproducible results.

Initially I wanted to preserve the insertion order to preserve
compatibility with the previous implementation, but always sorting these
seems right to me so I went ahead with that now.


Reply to: