Bruno Haible <br...@clisp.org> writes:

>> Spent the day thinking through the concepts and fixing all the problems.
>
> And another problem was that the version number for git repositories
> with local modifications was ending in '-dirty'. Which is problematic,
> because "dirty" is a word with a negative connotation, and making
> local modifications to source code is the *essence* of Free Software.
>
> Where does the mindset come from, to call locally modified source code
> "dirty"?! I guess, it's the mindset of a package author who thinks he's
> the only one who is able to produce correct code, and all other people's
> modifications must be something to warn against, hence the attribute
> "dirty". (Or maybe, in the early history of git, people were looking
> for an antonym of "clean", and picked the first they found?)
>
> In any case, I propose to change git-version-gen to replace "-dirty"
> with "-modified". To give a hacker an honouring word, not a shame word.
Thanks for thinking and cleaning up this area - I won't be able to
provide feedback until I start to use it in some project, but will try
to do so eventually.

I had the same thoughts as you on the '*-dirty' keyword.

However there is a subtlety: modifying a git-owned files lead to version
changes, which after "make dist" in most projects leads to many files
being different compared to upstream version (because of embedded
project version numbers in many generated files).  This makes it
_harder_ to compare what changes someone did compared to upstream.  That
is also against the spirit of free software.

Generally, I have not experienced a scenario where the '-dirty' or now
'-modified' version suffix actually helps with anything, and several
scenarios (like the one with no longer reproducible generated files)
where it actively doesn't contribute.

So I'm curious to find out 1) if there are any good scenarios where
having a *-modified version number is actually useful, and 2) if there
are any objections to just dropping this particular piece of gitisms.

I don't care strongly enough to work on this now though, because I'm
behind getting my projects to use git-version-gen to achieve
reproducible tarballs and get those releases out.

/Simon

Attachment: signature.asc
Description: PGP signature

Reply via email to