Subject: [bug#74137] Commit hashes in the version-string.

From: Simon Tournier <[email-masked]>
Date: Mon, 10 Mar 2025 17:00:25 +0100

Hi,

Euh, when Reviewing the Work of Others [1], it appears to me a case of
“spending time proportional to the stakes(1)” where (1) reads:

        (1) The tendency to discuss minute details at length is often
        referred to as “bikeshedding”, where much time is spent
        discussing each one’s preference for the color of the shed at
        the expense of progress made on the project to keep bikes dry.

Because the package at hand is 11 years old with just 3 commits and less
than one hundred of Emacs Lisp line of code.  There is more characters
in this message than in the source code itself. ;-)

Concretely, we are speaking about alternative (A) or (B), right?

      (define-public emacs-vi-tilde-fringe
        (let ((commit "f1597a8d54535bb1d84b442577b2024e6f910308")
              (revision "0"))
          (package
            (name "emacs-vi-tilde-fringe")
  (A)       (version (git-version "1.0" revision commit))
  (B)       (version "1.0")
            (source
             (origin
               (method git-fetch)
               (uri (git-reference
                     (url "https://github.com/syl20bnr/vi-tilde-fringe")
                     (commit commit)))
               (file-name (git-file-name name version))

And that, concretely, changes nothing because no one expect to have
another version after 11 years of inactivity. :-)

My own preference is about (A) because it appears to me more consistent
with the rest.  Somehow, my understanding is the rule of thumb: use this
’revision’ and ’commit’ when there is no Git-based tag (release).  And
somehow, a kind of advertisement.  At least, as a user that’s how I
consider package with version ending with short commit hash: it’s not an
official Git-based tag.

Nicolas, Ian, any strong objection with option (A)?

Cheers,
simon

1: https://guix.gnu.org/manual/devel/en/guix.html#Reviewing-the-Work-of-Others