all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Basil L. Contovounesios" <contovob@tcd.ie>
To: emacs-devel@gnu.org
Subject: How to warn about obsolete file in ELPA package
Date: Sat, 06 Feb 2021 12:19:29 +0000	[thread overview]
Message-ID: <87ft29o0by.fsf@tcd.ie> (raw)

I'm preparing to update the dash package on GNU ELPA and MELPA.
One of the planned changes for this upcoming 2.18.0 release is
the consolidation of its two constituent files dash.el and
dash-functional.el.

The latter was split off as a separate file in the past due its reliance
on lexical-binding.  Since then, dash.el has also come to depend on
Emacs 24, so we have agreed to move the definitions in
dash-functional.el to dash.el and eventually delete dash-functional.el.

The problem is that GNU ELPA has historically bundled both dash.el and
dash-functional.el under the dash package, and MELPA has bundled each as
a separate package.  In either case, a transitional dash-functional.el
file/package must be kept around for a while for backward compatibility.

We would like to emit an obsoletion warning when dash-functional.el is
used, similar to the one for lisp/obsolete/* libraries.  Hopefully such
a warning will be seen as helpful and actionable rather than annoying.

What is the best way to go about this to cover the cases where
dash-functional.el is byte-compiled, installed, or loaded?

One simple way is a top-level (lwarn 'dash :warning "Foo"), but the
message printed during byte-compilation is not recognised in
*compilation* buffers as a warning, so I fear the message may go
unnoticed.

Another option is a top-level (byte-compile-warn "Foo").  This isn't
picked up as a warning either, but at least the file name is fontified
with font-lock-function-name-face, so it sticks out a bit more.

Any suggestions along these or any better lines are most welcome.

If you're interested in the relevant discussions, see the following:
https://github.com/magnars/dash.el/wiki/Obsoletion-of-dash-functional.el
https://github.com/magnars/dash.el/issues/356

TIA,

-- 
Basil



             reply	other threads:[~2021-02-06 12:19 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-06 12:19 Basil L. Contovounesios [this message]
2021-02-06 13:17 ` How to warn about obsolete file in ELPA package Basil L. Contovounesios
2021-02-06 15:03 ` Stefan Monnier
2021-02-06 17:50   ` Basil L. Contovounesios
2021-02-06 18:25     ` Stefan Monnier
2021-02-06 18:40       ` Basil L. Contovounesios
2021-02-06 19:36   ` Philipp
2021-02-07  3:54     ` 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

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

  git send-email \
    --in-reply-to=87ft29o0by.fsf@tcd.ie \
    --to=contovob@tcd.ie \
    --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 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.