unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Emanuel Berg via Users list for the GNU Emacs text editor <help-gnu-emacs@gnu.org>
To: help-gnu-emacs@gnu.org
Subject: Re: [OFFTOPIC] Semver (was: Emacs Versions: major, minor and ...?)
Date: Wed, 30 Jun 2021 21:49:53 +0200	[thread overview]
Message-ID: <87v95v5dzy.fsf@zoho.eu> (raw)
In-Reply-To: jwvpmw4e357.fsf-monnier+emacs@gnu.org

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	other threads:[~2021-06-30 19:49 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-26 18:05 Emacs Versions: major, minor and ...? Colin Baxter
2021-06-26 18:27 ` Eli Zaretskii
2021-06-26 19:38   ` Colin Baxter
2021-06-27  5:47     ` Eli Zaretskii
2021-06-28  3:56 ` mrf
2021-06-28  4:22   ` Stefan Monnier via Users list for the GNU Emacs text editor
2021-06-28  5:29     ` Colin Baxter
2021-06-28  5:30     ` mrf
2021-06-28  5:14   ` Colin Baxter
2021-06-29 10:07   ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-06-29 22:11     ` [OFFTOPIC] Semver (was: Emacs Versions: major, minor and ...?) Stefan Monnier via Users list for the GNU Emacs text editor
2021-06-30 19:49       ` Emanuel Berg via Users list for the GNU Emacs text editor [this message]
2021-06-30 20:00         ` [OFFTOPIC] Semver Stefan Monnier via Users list for the GNU Emacs text editor
2021-07-05 21:30           ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-07-06  9:28             ` Yuri Khan
2021-07-06  9:54               ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-07-06 11:49                 ` Yuri Khan
2021-07-06 16:29                   ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-07-06 17:00                   ` [External] : " Drew Adams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87v95v5dzy.fsf@zoho.eu \
    --to=help-gnu-emacs@gnu.org \
    --cc=moasenwood@zoho.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).