emacs-devel
[Top][All Lists]
Advanced

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

Re: scratch/eldoc-xref-project-gnu-elpa-core-packages b1631cd: Turn Eldo


From: Stefan Monnier
Subject: Re: scratch/eldoc-xref-project-gnu-elpa-core-packages b1631cd: Turn Eldoc, Xref and Project into GNU ELPA :core packages
Date: Mon, 11 May 2020 19:17:39 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

> 1. xref and project.el have a cyclic dependency.  xref.el depends
>   (properly) on project.el but it seems project.el also depends on
>   xref.el.
>
>      (defun project--files-in-directory (dir ignores &optional files)
>        (require 'find-dired)
>        (require 'xref)
>        (defvar find-name-arg)
>
>    How should I fix this? Any ideas? Or should I be creative?

IIUC a significant part of project's functionality works fine without
xref, so you could consider that project does not Package-Require
`xref`.

Also it's worth checking if it depend on a *recent* version of xref, or
if it also work with the xref that comes with Emacs-26 or even Emacs-25.

Another option is to bundle them into a single package (`:core` packages
can be composed of several files, see `soap-client` for an example).

> 2. It'd be nice if both xref.el and project.el were available for Emacs
>    26.3.  But project.el in Emacs master depends on fileloop.el,

This dependency is of no real importance: it's only used to provide the
two commands `project-search` and `project-query-replace-regexp` for
which there are many alternatives anyway.  So I wouldn't worry about it.
We could simply change the code to test (fboundp
'fileloop-initialize-replace) and signal a cleaner error (mentioning
that these commands only work in Emacs≥27) than "void-function".


        Stefan




reply via email to

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