Closed bmwiedemann closed 1 year ago
Thanks for the report, although I don't think this is an issue with Pyface. I'm not sure why your build is touching the icons.zip file. You should be able to treat that as a fixed asset from the point of view of linux packaging.
It seems, icons.zip is modified by the unittests:
https://code.opensuse.org/package/python-pyface/blob/3ea62406bddb3d455d2d0cc4be6661d24d7b95ea/f/python-pyface.spec#_88
maybe in pyface/image/tests/test_image.py
?
Yes, I think there are tests which test the correct regeneration of the zip archives. Tests shouldn't be run on as part of actually creating a build artefact though? I'd think you'd want to run the tests on the result of the reproducible build.
This seems to be an effect of how we build with rpmbuild
. There tests run before bundling up files. Will try to avoid it there.
We solved it now via https://build.opensuse.org/request/show/1131679 by copying PYTHONPATH / python_sitelib
before a test.
Environment
OS: all (openSUSE-Tumbleweed-20230728) Python version: all
Description
While working on reproducible builds for openSUSE, I found that building our
python-pyface
package twice resulted in such diffs:There should be a way to get deterministic build results, e.g. allow to override the build timestamp with
SOURCE_DATE_EPOCH
.Steps to Reproduce
do a clean build twice