Emacs packages that override built-in features ignored when compiled

  • Open
  • quality assurance status badge
Details
One participant
  • Jelle Licht
Owner
unassigned
Submitted by
Jelle Licht
Severity
normal
J
J
Jelle Licht wrote on 19 May 15:00 +0200
(address . bug-guix@gnu.org)
87ttiudkhv.fsf@fsfe.org
Hi all,

What I think happens is that Emacs code that is compiled against an
(Emacs) feature that is available as both a built-in and provided
(propagated) input seems to 'compile' Emacs code against the built-in
version.

Case in point:
Built-in jsonrpc feature for Emacs 29.3 has the following slot:
-events-buffer-scrollback-size t 'eieio--unbound

The version of jsonrpc as packaged in emacs-jsonrpc (and also propagated by
our emacs-eglot package):
-events-buffer-config t '(:size nil :format full)

Reproducer:

Run:

guix shell --container --preserve=TERM emacs emacs-eglot -- emacs -nw -Q,
`M-x describe-symbol` -> jsonrpc-connection -> notice that the help
buffer lists the details from the built-in jsonrpc class, while the link
to "jsonrpc.el" at the top of the *Help* buffer links (correctly) to the
more recent version (as propagated by emacs-eglot), which makes me think
it's not a load-path issue.

AFAICT this means that we will run into issues once a library
(e.g. emacs-eglot) starts depending on slots present in the (propagated)
emacs-jsonrpc, but not the built-in jsonrpc version.

Thanks,
- Jelle
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 71065@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 71065
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch