Dear Maintainer, I am creating a package php-arthurhoaro-web-thumbnailer, and reprotest is sometimes failing in the Salsa CI pipeline. https://salsa.debian.org/php-team/pear/php-arthurhoaro-web-thumbnailer/-/jobs/751213 The failing test case creates a file representing a file in a cache. It expects the modified time of the file to be within 1 hour of current time. I added some prints (cleaned up and commented version below) to help debug: time(): 1631998736 touch($cacheFile); clearstatcache(); // has no effect filemtime($cacheFile): 1589907896 touch("debug-reprotest"); // a new file, see that it behaves the same way filemtime("debug-reprotest"): 1589907896 The difference between time() and filemtime($cacheFile) is 487+ days, the same value is shown passed to faketime in the log. Please consider whether to change the default use of faketime.
control: retitle -1 reprotest: should not default to vary time and date thanks Hi James, thanks for your bug report! I'm not sure if this is a bug in reprotest or faketime, however we know about several scenarios where faketime breaks stuff, thus reprotest should not vary time and date by default, so that reprotest can be run more easily and more successfullly in CI tests. Maybe it's worth to clone this bug and fix the underlying issue too, dunno.------------------------------------------------------------------------------- holger@(debian|reproducible-builds|layer-acht).org PGP fingerprint: B8BF 5413 7B09 D35C F026 FE9D 091A B856 069A AA1C There are no jobs on a dead planet.
merge 961064 1012035 993339 severity 961064 important tags 961064 + help newcomer thanks indeed, merging with "#961064: reprotest: should not default to vary time and date" and raising the severity and tagging help because reprotest is (almost) unmaintained upstream, and tagging newcomer as the fix should be really easy, so if you are looking for ways to start contributing to reproducible builds, please do! ;p :) I'll certainly be happy to review, merge and upload.
Hi, Would you consider this too simplistic? BR, Gábor
Given that the overwhelming majority of reproducible builds issues are time related, and regressions happen all the time, disabling this would fail to catch many issues, for what I believe to be a small minority of affected packages. I have personally run thousands of builds using reprotest, and only rarely have come across this issue. It typically causes issues with packages that patch files at build time, such as applying debian/patches/ ... but most definitely not all patches. The salsa-ci pipelines document how to add custom arguments to reprotest: https://salsa.debian.org/salsa-ci-team/pipeline#adding-extra-arguments-to-reprotest So adding to your configuration: variables: SALSA_CI_REPROTEST_ARGS: --vary=-time Might be good to update their documentation to use the --vary arguments and include -time,-build_path ... I can maybe propose a patch to the salsa-ci team for that. live well, vagrant