Notes for qtwebsockets-opensource-src - reproducible builds result

Version annotated: 5.3.2-5
Identified issues:
Identifier: randomness_in_qdoc
Description Non-deterministic order of and elements in XML. See
https://sources.debian.net/src/qtbase-opensource-src/latest/src/tools/qdoc/helpprojectwriter.cpp/?hl=630#L787
etc.
Identifier: captures_build_dir_in_qmake_prl_files
Description QMAKE_PRL_BUILD_DIR contains the absolute build path.
Identifier: build_path_in_qdoc
Description eg. filepath elements
Identifier: timestamps_in_qhc
URL https://wiki.debian.org/ReproducibleBuilds/TimestampsInDatabaseGeneratedByQhelpgenerator
Description There has been done a lot of reproducible fixes in 5.5.0, so it is worth to
wait entering this version sid before retrying.
.
qhelpgenerator inserts a timestamp into documentation (qhc) files,
which are sqlite3 databases. The timestamp used now respects
SOURCE_DATE_EPOCH, but is still affected by timezone.
.
https://codesearch.debian.net/search?q=Q_UNLIKELY.*SOURCE_DATE_EPOCH&literal=0
.
sqlite3 databases appear to be reproducible in themselves, but qhelp
generator is using various file IDs which become non-deterministic due to
map access. For example
.
https://sources.debian.net/src/qt4-x11/latest/tools/assistant/lib/qhelpgenerator.cpp/?hl=742#L742
.
I suspect we just need a few sorts (and some time to build qt4-x11...)
.
Also
.
https://sources.debian.org/src/qttools-opensource-src/latest/src/assistant/help/qhelpcollectionhandler.cpp/?hl=1639#L1639
.
debian bug https://bugs.debian.org/875847
.
upstream bug https://bugreports.qt.io/browse/QTBUG-62697
Comments: Build path in /usr/share/qt5/doc/qtwebsockets/qtwebsockets.index.
 

Our notes about issues affecting packages are stored in notes.git and are targeted at packages in Debian in 'unstable/amd64' (unless they say otherwise).