On Sat Feb 14, 2026 at 3:53 AM CST, Mathieu Dubois-Briand wrote: > On Fri Feb 13, 2026 at 1:42 AM CET, Randolph Sapp via lists.openembedded.org > wrote: >> From: Randolph Sapp <[email protected]> >> >> Anything that defines multiple git sources should have the largest value >> taken when calculating the SOURCE_DATE_EPOCH for a package. >> >> The previous iteration actually introduced some degree of randomness, as >> it would stop on the first git repository reported by os.walk, which >> does not assure any specific ordering by default. >> >> Signed-off-by: Randolph Sapp <[email protected]> >> --- > > Hi Randolph, > > Thanks for trying to fix this. However, it looks like this is causing > another intermittent issue. > > We got the following error on the autobuilder: > > ERROR: libjitterentropy-3.6.3-r0 do_unpack: Error executing a python function > in exec_func_python() autogenerated: > ... > File: > '/srv/pokybuild/yocto-worker/qemux86-world/build/layers/openembedded-core/meta/lib/oe/reproducible.py', > lineno: 107, function: get_source_date_epoch_from_git > 0103: bb.debug(1, "%s does not have a valid HEAD: %s" % > (gitpath, p.stdout.decode('utf-8'))) > 0104: continue > 0105: > 0106: bb.debug(1, "git repository: %s" % gitpath) > *** 0107: p = subprocess.run(['git', '-c', 'log.showSignature=false', > '--git-dir', gitpath, 'log', '-1', '--pretty=%ct'], > 0108: check=True, stdout=subprocess.PIPE) > 0109: sources_dates.append(int(p.stdout.decode('utf-8'))) > 0110: > 0111: if sources_dates: > File: '/usr/lib64/python3.13/subprocess.py', lineno: 577, function: run > 0573: # We don't call process.wait() as .__exit__ does that > for us. > 0574: raise > 0575: retcode = process.poll() > 0576: if check and retcode: > *** 0577: raise CalledProcessError(retcode, process.args, > 0578: output=stdout, stderr=stderr) > 0579: return CompletedProcess(process.args, retcode, stdout, stderr) > 0580: > 0581: > Exception: subprocess.CalledProcessError: Command '['git', '-c', > 'log.showSignature=false', '--git-dir', > '/srv/pokybuild/yocto-worker/qemux86-world/build/build/tmp/work/x86-64-v3-poky-linux/libjitterentropy/3.6.3/sources/libjitterentropy-3.6.3/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/tests/raw-entropy/recording_userspace/jitterentropy/.git/', > 'log', '-1', '--pretty=%ct']' returned non-zero exit status 128. > > > https://autobuilder.yoctoproject.org/valkyrie/#/builders/59/builds/3177 > https://autobuilder.yoctoproject.org/valkyrie/#/builders/3/builds/3231 > https://autobuilder.yoctoproject.org/valkyrie/#/builders/6/builds/3194 > https://autobuilder.yoctoproject.org/valkyrie/#/builders/37/builds/3345 > > I only saw it on libjitterentropy so far. I quickly tried to reproduce > locally, without any success. Yet I confirm dropping this patch solve > the issue. > > Can you have a look? > > Thanks, > Mathieu
Oh, a recursive symbolic link. Fun. I thought glob didn't traverse links by default. Guess I was thinking about Pathlib's version. I'll go back to a modified os.walk version since that supports more python versions and has an explicit 'followlinks' parameter. - Randolph
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#231272): https://lists.openembedded.org/g/openembedded-core/message/231272 Mute This Topic: https://lists.openembedded.org/mt/117785484/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
