On 2019-03-21 20:45 +1100, Brendan O'Dea wrote: > On Wed, Mar 20, 2019 at 10:21:39AM +0100, Gianfranco Costamagna wrote: >>Looks like README needs a newer timestamp wrt help2man.PL file? > [...] >>dpkg-buildpackage: info: host architecture amd64 >> fakeroot debian/rules clean >>test README -nt help2man.PL # maintainer sanity check >>make: *** [debian/rules:40: clean] Error 1 > > Well this is odd, it seems that there has been a change in dpkg-source which > breaks this particular sanity check (intended to ensure that I've run the > maint-prep step since updating the version in help2man.PL). > > I suspect that it is related to reproducible builds, since the timestamps that > ended up in the tarball have been changed to the changlog timestamp (in fact > there are no files in the tarball with later dates).
There has indeed been such a change in dpkg-source: ,---- | - Generate reproducible source tarballs by using the new GNU tar | --clamp-mtime option in Dpkg::Source::Archive, to make sure no file | in source packages has an mtime later than the changelog entry time. `---- However, that was in version 1.18.10, uploaded July 2016. It seems that in previous versions of help2man help2man.PL was older than debian/changelog, so you did not hit the problem. > ~/debian/help2man-1.47.9 $ ls -l README help2man.PL > -rw-r--r-- 1 bod bod 540 2019-03-18 19:16 README > -rwxr-xr-x 1 bod bod 23166 2019-03-18 19:13 help2man.PL > ~/debian/help2man-1.47.9 $ tar tvJf ../help2man-1.47.9.tar.xz > help2man-1.47.9/README help2man-1.47.9/help2man.PL > -rw-r--r-- 0/0 540 2019-03-18 19:10 help2man-1.47.9/README > -rwxr-xr-x 0/0 23166 2019-03-18 19:10 help2man-1.47.9/help2man.PL > ~/debian/help2man-1.47.9 $ dpkg-parsechangelog -S Date > Mon, 18 Mar 2019 19:10:35 +1100 > > I'll try to find a way to revise this check that will be more robust to this > kind of timestamp modification. Somewhat annoyingly, the "test" builtin has > -nt and -ot options, but no way to test that timestamps are newer or equal (or > even just equal). A negated test with the -ot option might help: ! test README -ot help2man.PL # maintainer sanity check Cheers, Sven