There are three concerns with the footer. First, it is
auto-generated, and as best practice you shouldn't store
auto-generated components in version control -
By that reasoning, one should never store a checksum inside a
version-controlled file. This is a very reasonable position, assuming
that a version control system could never ever have a bug that
corrupts a file.
Second, it duplicates information found both in file metadata and (in
greater detail) the version control log itself
Given your first objection, I presume that you are too young to have
learned one fact of digital life: Any piece of information about a
file not contained within the file will eventually become separated
from the file and lost. That is why, if you write code based on a
TLA+ spec, a copy of that spec should be embedded as a comment within
the code. Unfortunately, the method with which information is encoded
in a file is an important piece of information that cannot be
contained in the file. Hence, all files will eventually become
unreadable. My solution has been to encode all my source files in
ASCII, which I seem to have correctly predicted will outlive me.
Third, it will cause merge conflicts any time two users edit a spec
concurrently - even if their edits are to completely different parts
of the file.
Leslie