In ttx_diff.py we already erased the head.modified, but we don't also erease the head.created. The latter is also set to the current time when the source does not contain an explicit openTypeHeadCreated (most do not). I have seen random ttx-diffs caused by the fact that sometimes fontc and fontmake builds differs by one or two seconds in the head.created.
For example this one in a recent run of fontc_crater:
Since both compilers support the standard SOURCE_DATE_EPOCH variable for reproducible builds we may well make use of it here.
In ttx_diff.py we already erased the head.modified, but we don't also erease the head.created. The latter is also set to the current time when the source does not contain an explicit openTypeHeadCreated (most do not). I have seen random ttx-diffs caused by the fact that sometimes fontc and fontmake builds differs by one or two seconds in the head.created.
For example this one in a recent run of fontc_crater:
Since both compilers support the standard
SOURCE_DATE_EPOCH
variable for reproducible builds we may well make use of it here.