Bug#1059592: qhelpgenerator-qt5: emits .qch file attribute entries with unpredictable ordering
James Addison
jay at jp-hosting.net
Thu Dec 28 22:17:13 GMT 2023
Package: qhelpgenerator-qt5
Severity: wishlist
Tags: patch
User: reproducible-builds at lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-bugs at lists.alioth.debian.org
Dear Maintainer,
I'm an occasional contributor to Debian's reproducible builds, and noticed
a recent reproducibility test failure[1] for the qtwebview-opensource-src
source package that has a build-dependency on qhelpgenerator-qt5.
The problem relates to a documentation file -- qtwebview.qch -- that is built
by the qhelpgenerator binary.
In particular, when qhelpgenerator collects items for a FileAttributeSetTable
table in the .qch file -- which is a SQLite3 database -- it uses a QT QSet
datastructure. Crucially, that datastructure does _not_ guarantee sort
ordering (neither insertion-order nor key-order) when retrieving items,
as documented[2].
I'll offer a patch shortly that adds a sort step, consistent with another
similar sort that occurs within the same helpgenerator.cpp code file.
In terms of testing: I've confirmed that the package compiles with my patch,
and that the resulting qhelpgenerator-qt5 binary package can be used to build
the src:qtwebview-opensource-src package and produces a qtwebview.qch file with
the expected table records in the expected order.
Thanks,
James
[1] - https://tests.reproducible-builds.org/debian/rb-pkg/trixie/arm64/qtwebview-opensource-src.html
[2] - https://doc.qt.io/qt-5/qset.html
More information about the Reproducible-bugs
mailing list