all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Dmitry Gutov <dgutov@yandex.ru>
Cc: stephen@xemacs.org, dak@gnu.org, emacs-devel@gnu.org,
	monnier@iro.umontreal.ca, rms@gnu.org
Subject: Re: RCS, again: another removed functionality: undo last-checkin
Date: Thu, 01 Oct 2015 20:52:35 +0300	[thread overview]
Message-ID: <83si5u8oik.fsf@gnu.org> (raw)
In-Reply-To: <560D6F13.3090005@yandex.ru>

> Cc: monnier@iro.umontreal.ca, rms@gnu.org, stephen@xemacs.org, dak@gnu.org,
>  emacs-devel@gnu.org
> From: Dmitry Gutov <dgutov@yandex.ru>
> Date: Thu, 1 Oct 2015 20:36:19 +0300
> 
> On 10/01/2015 04:07 PM, Eli Zaretskii wrote:
> 
> > No.  Existing features might make no sense if (a) they didn't make
> > sense when introduced (it happens!),
> 
> You mean features that were useless or broken from the start?

Yes, something like that.

> > or (b) if the reason for their
> > existence is no longer valid, like a program that is no longer
> > available, or operation that is impossible with today's platforms, or
> > so clearly unused that there's no doubt it could be still useful to
> > anyone.
> 
> ...or became irreparably broken over time. That's a pretty high standard 
> to consider a feature for removal.

I indeed think that features should rarely be removed, only added.

> When I said "doesn't make sense", I meant sense in the context of the VC 
> framework. Which supposedly has some internal logic, ergonomics, etc.

Yes, but different VCSes have different internal logic, so something
might make sense with RCS, but not with Git, or vice versa.  That's
the crux of the problem we are discussing, I think, so the question is
whether a feature must make sense for every back-end for it to be
considered as sensible.

> > Breaking backward compatibility is about the worst crime package
> > maintainers could commit, in my opinion.  (I know it's not shared by
> > many of the others.)
> 
> This general opinion (and you're not alone holding it) is one of the 
> most tedious parts of the Emacs ecosystem, IME. It's not that I *love* 
> removing features, but being unable to do that at all makes the burden 
> of a maintainer harder when making changes or adding new features.

We do remove features that are obsolete or no longer needed.  E.g.,
see the 'lisp/obsolete' directory.  And yes, it is harder to make
changes while keeping backward compatibility.  But I don't think the
"solution" of breaking backward compatibility is the main or even
desirable one.  It should be the last resort, unless we are sure the
feature is of no use.

> > It makes veteran users of a package feel like
> > second-class citizens whose needs and workflows can be disregarded all
> > too easily.
> 
> Removing features is always a tradeoff. While no one wants to make old 
> users sad, if their needs would still be achievable at the cost of 
> workflow changes, we should be able to make that sacrifice.

For some features, a change of the workflow could be justified, for
others, those which are too popular and ubiquitous with their users,
it can't.  I disagree that this sacrifice is always possible, let
alone desirable.  Especially when the change in the workflow boils
down to "do it from outside Emacs".

> At some point in the future (distant, in all likelihood, so this is just 
> a rough example), I imagine that would mean sacrificing support for 
> antique VC backends entirely, in favor of simpler VC implementation, or 
> better support of the newer backends.

I think there's a better alternative: start a new front end, which
will only support a subset of back-ends.  Then the elders can
peacefully continue using the old front-end, which will more or less
stop being developed, only maintained whenever some of the
infrastructure changes absolutely require that.

> There's nothing stopping the veterans from adopting modern VCSes,
> you know.

Muscle memory is what stopping them.  It's a powerful thing.



  reply	other threads:[~2015-10-01 17:52 UTC|newest]

Thread overview: 140+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-20 14:33 RCS, again: another removed functionality: undo last-checkin Uwe Brauer
2015-09-20 14:51 ` Eli Zaretskii
2015-09-20 14:58   ` Eli Zaretskii
2015-09-20 15:39     ` Uwe Brauer
2015-09-21  3:49       ` Stephen J. Turnbull
2015-09-25  7:53         ` Uwe Brauer
2015-09-20 15:40   ` Uwe Brauer
2015-09-20 16:30 ` Stefan Monnier
2015-09-20 19:59   ` Uwe Brauer
2015-09-20 20:01   ` Uwe Brauer
2015-09-20 23:24   ` Dmitry Gutov
2015-09-21  6:50     ` Eli Zaretskii
2015-09-21  7:25       ` David Kastrup
2015-09-21  7:56         ` Eli Zaretskii
2015-09-21  8:13           ` David Kastrup
2015-09-21  8:16             ` Eli Zaretskii
2015-09-21  8:27               ` David Kastrup
2015-09-21  8:37                 ` Eli Zaretskii
2015-09-21  8:58                   ` David Kastrup
2015-09-21  9:42                     ` Eli Zaretskii
2015-09-21 10:18                       ` David Kastrup
2015-09-21 10:21                       ` Bastian Beischer
2015-09-22  6:56           ` Richard Stallman
2015-09-22 11:49             ` Stephen J. Turnbull
2015-09-22 22:02               ` Richard Stallman
2015-09-22 22:49                 ` Óscar Fuentes
2015-09-23  6:40                   ` Eli Zaretskii
2015-09-23  7:18                     ` David Kastrup
2015-09-23  8:28                     ` Stephen J. Turnbull
2015-09-23  9:54                       ` Eli Zaretskii
2015-09-23 22:09                   ` Richard Stallman
2015-09-23  5:36                 ` Dmitry Gutov
2015-09-23  6:52                   ` Eli Zaretskii
2015-09-23 13:26                   ` Stefan Monnier
2015-09-23 13:39                     ` Eli Zaretskii
2015-09-23 15:02                       ` Stefan Monnier
2015-09-23 15:13                         ` David Kastrup
2015-09-23 15:31                           ` Andreas Schwab
2015-09-23 14:38                     ` Stephen J. Turnbull
2015-09-23 14:59                     ` Dmitry Gutov
2015-09-23 15:21                       ` Stefan Monnier
2015-09-23 15:27                         ` Dmitry Gutov
2015-09-23 17:33                           ` Stefan Monnier
2015-09-30  2:27                             ` Dmitry Gutov
2015-09-30  4:53                               ` Stefan Monnier
2015-09-30  6:46                                 ` Eli Zaretskii
2015-09-30  8:37                                   ` Stefan Monnier
2015-09-30  8:52                                     ` Eli Zaretskii
2015-09-30 11:35                                       ` Dmitry Gutov
2015-09-30 12:39                                         ` Stefan Monnier
2015-10-01  2:22                                           ` Richard Stallman
2015-10-01  2:32                                             ` Dmitry Gutov
2015-10-02  2:27                                               ` Richard Stallman
2015-10-02  6:37                                                 ` Dmitry Gutov
2015-10-02  7:17                                                   ` Andreas Schwab
2015-10-02  7:38                                                   ` Eli Zaretskii
2015-10-03  1:37                                                   ` Richard Stallman
2015-10-02  6:56                                                 ` Eli Zaretskii
2015-10-03  1:37                                                   ` Richard Stallman
2015-09-30 14:00                                         ` Eli Zaretskii
2015-10-01  2:34                                           ` Dmitry Gutov
2015-10-01  7:06                                             ` Eli Zaretskii
2015-10-01 19:43                                               ` Dmitry Gutov
2015-10-01 19:59                                                 ` Eli Zaretskii
2015-10-01 20:06                                                   ` Dmitry Gutov
2015-10-01 20:12                                                     ` Eli Zaretskii
2015-10-01 20:22                                                       ` Dmitry Gutov
     [not found]                                                         ` <83a8s28gun.fsf@gnu.org>
2015-10-01 21:01                                                           ` Alan Mackenzie
2015-10-01 21:04                                                             ` Dmitry Gutov
2015-10-01 21:01                                                           ` Dmitry Gutov
2015-10-02  6:32                                                             ` Eli Zaretskii
2015-10-02  6:41                                                               ` Dmitry Gutov
2015-10-02  7:39                                                                 ` Eli Zaretskii
2015-09-30 12:38                                       ` Stefan Monnier
2015-10-02  2:27                                         ` Richard Stallman
2015-10-02  2:27                                   ` Richard Stallman
2015-10-02  2:24                                 ` Richard Stallman
2015-10-02  3:34                                   ` Stefan Monnier
2015-10-02  7:11                                     ` Eli Zaretskii
2015-10-02 12:54                                       ` Stefan Monnier
2015-10-02 13:42                                         ` Eli Zaretskii
2015-10-02 14:32                                           ` Dmitry Gutov
2015-10-02 14:40                                             ` Eli Zaretskii
2015-10-02 14:54                                               ` Dmitry Gutov
2015-10-02 14:59                                                 ` Eli Zaretskii
2015-10-02 15:44                                                   ` Stefan Monnier
2015-10-02 16:32                                                   ` Dmitry Gutov
2015-09-30  6:37                               ` Eli Zaretskii
2015-09-30 11:27                                 ` Dmitry Gutov
2015-09-30 14:13                                   ` Eli Zaretskii
2015-10-01  2:47                                     ` Dmitry Gutov
2015-10-01  7:18                                       ` Eli Zaretskii
2015-10-01 12:54                                         ` Dmitry Gutov
2015-10-01 13:07                                           ` Eli Zaretskii
2015-10-01 17:36                                             ` Dmitry Gutov
2015-10-01 17:52                                               ` Eli Zaretskii [this message]
2015-10-01 19:29                                                 ` Dmitry Gutov
2015-10-01 19:54                                                   ` Eli Zaretskii
2015-10-01 20:13                                                     ` Dmitry Gutov
2015-10-01 23:55                                               ` Drew Adams
2015-10-02  0:07                                                 ` Dmitry Gutov
2015-10-02  6:16                                                   ` Drew Adams
2015-10-02  2:27                                             ` Richard Stallman
2015-10-02  4:07                                               ` Dmitry Gutov
2015-10-02  4:13                                               ` Dmitry Gutov
2015-09-23 19:03                     ` Uwe Brauer
2015-09-23 22:12                     ` Richard Stallman
2015-09-25  8:29                       ` Uwe Brauer
2015-09-26  1:10                         ` Richard Stallman
2015-09-23 22:10                   ` Richard Stallman
2015-09-25  8:30                     ` Uwe Brauer
2015-09-23  6:37                 ` Eli Zaretskii
2015-09-21 13:13         ` Stefan Monnier
2015-09-21 13:59           ` David Kastrup
2015-09-21 18:39           ` Stefan Monnier
2015-09-21 14:02       ` Dmitry Gutov
2015-09-21 16:07         ` Eli Zaretskii
2015-09-21 16:58           ` Dmitry Gutov
2015-09-21 17:06             ` Eli Zaretskii
2015-09-21 17:24               ` Dmitry Gutov
2015-09-21 19:17                 ` Eli Zaretskii
2015-09-21 19:30                   ` David Kastrup
2015-09-21 19:33                   ` Dmitry Gutov
2015-09-21 19:53                     ` Eli Zaretskii
2015-09-22  0:39                       ` Stephen J. Turnbull
2015-09-22  6:18                         ` Eli Zaretskii
2015-09-22 13:08                       ` Dmitry Gutov
2015-09-22 13:45                         ` Eli Zaretskii
2015-09-22 18:59                           ` Dmitry Gutov
2015-09-22 19:05                             ` Eli Zaretskii
2015-09-23  5:54                               ` Dmitry Gutov
2015-09-23  6:58                                 ` Eli Zaretskii
2015-09-23 14:49                                   ` Dmitry Gutov
2015-09-23 22:08                               ` Richard Stallman
2015-09-21 19:18                 ` Eli Zaretskii
2015-09-22  0:26                   ` Stephen J. Turnbull
2015-09-22  6:16                     ` Eli Zaretskii
2015-09-22 12:32                       ` Stefan Monnier
2015-09-22  6:32                     ` Steinar Bang
2015-09-20 17:09 ` Steinar Bang

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

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

  git send-email \
    --in-reply-to=83si5u8oik.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=dak@gnu.org \
    --cc=dgutov@yandex.ru \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=rms@gnu.org \
    --cc=stephen@xemacs.org \
    /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.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.