unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Harald Jörg" <haj@posteo.de>
To: emacs-devel@gnu.org
Subject: Re: cperl-mode: Eliminating references to obsolete packages
Date: Thu, 24 Sep 2020 20:43:33 +0200	[thread overview]
Message-ID: <cfed1bf6-fbb0-24dc-d22a-ff64d1ad8ca9@posteo.de> (raw)
In-Reply-To: <jwv1rirp0vw.fsf-monnier+emacs@gnu.org>

Stefan Monnier writes:

> For example that "format-prompt" problem currently also affects the
> python.el GNU ELPA package.  Luckily, AFAICT we haven't yet released
> a new python.el package (because the version number has not been
> bumped), but the problem is real.

I noticed that some of them (but not python.el) contain a comment like
this:

  ;; This is an Elpa :core package. Don't use functionality that is not
  ;; compatible with Emacs 24.1.

...but I don't know whether that actually helps.  For me it would be
rather cumbersome to find out which functionality isn't compatible
with Emacs 24.1.  Some recent doc strings (e.g. time-convert) show it,
some (e.g. format-prompt) don't.

> [...]
> Some automated tests that try to build&compile (and treat warnings as
> errors) those packages on the corresponding oldest Emacs version
> supported would come in handy.

Wouldn't this rule out the type of fallback patch you suggested?  When
I byte-compile-file cperl-mode.el in Emacs 26.1 _with_ your fallback
patch applied, I still get the warning:

    In end of data:
    cperl-mode.el:8736:1:Warning: the function ‘format-prompt’ is
    not known to be defined.

Sorta obvious, though: The compilation step doesn't _run_ the fboundp
safeguard.

Anyway: Are there frameworks for such tests in the Emacs repository?
On GitHub, I can apply stuff from
https://github.com/marketplace/actions/emacs-lisp-check, but as of now
this also gives false positives:

    github-actions / test-on-self (26.1, true)
    cperl-mode.el#L5880
    You should depend on (emacs "27.1") if you need ‘cperl-force-face’.

This is fairly idiotic since "my" cperl-mode.el itself _defines_
cperl-force-face.  Somehow the check seems to "know" what's
available in vanilla Emacs 26.1 and 27.1.  I discovered that GitHub
action in Sacha Chua's blog
https://sachachua.com/blog/2020/06/2020-06-22-emacs-news/ and just
gave it a try without actually understanding what I was doing :)
-- 
Cheers,
haj



  reply	other threads:[~2020-09-24 18:43 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-23 18:37 cperl-mode: Eliminating references to obsolete packages Harald Jörg
2020-09-23 19:16 ` Stefan Monnier
2020-09-23 19:38   ` Harald Jörg
2020-09-23 19:50     ` Stefan Monnier
2020-09-24 15:34       ` Harald Jörg
2020-09-24 17:09         ` Stefan Monnier
2020-09-24 18:43           ` Harald Jörg [this message]
2020-09-24 22:20             ` Stefan Monnier

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=cfed1bf6-fbb0-24dc-d22a-ff64d1ad8ca9@posteo.de \
    --to=haj@posteo.de \
    --cc=emacs-devel@gnu.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 public inbox

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

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).