help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [OFFTOPIC] Semver (was: Emacs Versions: major, minor and ...?)


From: Emanuel Berg
Subject: Re: [OFFTOPIC] Semver (was: Emacs Versions: major, minor and ...?)
Date: Wed, 30 Jun 2021 21:49:53 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Stefan Monnier via Users list for the GNU Emacs text editor wrote:

> It's simple and clear:
>
> - "micro/patch" changes preserve both forward and
> backward compatibility.
>
> - "minor" changes break forward compatible but not
> backward compatibility.
>
> - "major" changes break both forward and
> backward compatibility.

OK, that's a good definition, backward compatibility I think
one can understand just be thinking about it, if some version
n + 1 is backward compatible then everything that worked for
version n will also work for n + 1.

And forward compatibility, that's the same thing, only instead
of looking backwards, we look into the future, so for the
forward compatible version n + 1 everything that works for
that will also work for version n + 2 (if that's backward
compatible, I suppose the assumption must be?).

But what does that really mean? The second paragraph, I mean?
And how do you know when that happens or doesn't happen?

Backward compatibility, remove something that the old software
relied upon, or change the interface somewhere, e.g.
shuffle around the arguments of some function (yeah, one
shouldn't do that) then the old stuff won't work, so it isn't
backward compatible.

But what do you do to preserve/break forward compatibility?

-- 
underground experts united
https://dataswamp.org/~incal




reply via email to

[Prev in Thread] Current Thread [Next in Thread]