[Top][All Lists]

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

RE: How to find when a feature was introduced

From: Drew Adams
Subject: RE: How to find when a feature was introduced
Date: Fri, 8 Jul 2016 05:44:47 +0000 (UTC)

> > > So now I need to tell my students gnu-apl-mode will not run in emacsen
> > > less than version X   How to find out X?
> M-x view-emacs-news RET C-s FEATURE

That works for some features/functions/variables/..., but not for
others.  It depends on how well and even whether the thing in question
is called out clearly in the NEWS.


I keep multiple Emacs binaries and check them when needed.  But I do
that because I maintain some of my libraries across multiple releases.
(Many people will not bother to do this.)

If I have a library that fundamentally makes use of some feature that
is only available starting with release N.M then that's the minimum
release I support for that library - e.g., `apu.el' is Emacs 24+ 
because it is all about Unicode.

But if a library just makes incidental use of some feature - it is
not essential to the library, then I support older releases that
don't provide that feature, and I conditionalize its use within
the library using `fboundp', `boundp', `featurep', or even a
release-number check, whichever is most specific but still
sufficient to distinguish whatever is involved.

Yes, that means extra maintenance work.  But there are lots of
Emacs users (most!) who do _not_ use the latest release.  I see
too many libraries (IMHO) that evolve to gratuitously use recent
constructs, which means some of their users can lose the
possibility of using them.

By "gratuitously" here I mean that the library maintainer and the
library itself do not really gain anything important by such a
change.  Obviously, if a new feature enables you to do something
really different (e.g. bidi support) or really better, then there
is no reason not to take advantage of it.

But many changes I see are little more than cosmetic, and if such
a case throws library users by the wayside then I think that's a
waste.  On the other hand, it can make things easier for a library
maintainer not to have to worry about supporting more than the
latest release...


reply via email to

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