GNU bug report logs - #63625
29.0.90; package-install inserts package directory into load-path twice.

Previous Next

Package: emacs;

Reported by: todd smith <toddasmith <at> mac.com>

Date: Sun, 21 May 2023 07:33:01 UTC

Severity: normal

Tags: fixed

Found in version 29.0.90

Fixed in version 29.1

Done: Robert Pluim <rpluim <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #32 received at 63625 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: Philip Kaludercic <philipk <at> posteo.net>, 63625 <at> debbugs.gnu.org,
 todd smith <toddasmith <at> mac.com>
Subject: Re: bug#63625: 29.0.90; package-install inserts package directory
 into load-path  twice.
Date: Mon, 22 May 2023 17:36:09 +0200
>>>>> On Mon, 22 May 2023 11:04:46 -0400, Stefan Monnier via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> said:

    >> `file-name-directory' will return nil for names with no slashes in
    >> them, but I donʼt know if thatʼs possible here.

    Stefan> I think `load-file-name` is always absolute, so I think we should be
    Stefan> safe, but that's the question, yes.

This is where we quote Knuth on the difference between proof and
testing :-)

    >> I *think* we can use `when-let*' here, since subr.el is preloaded.

    Stefan> Please don't, it's too recently introduced IMO and such generated files
    Stefan> may be loaded in older Emacsen.

OK

    Stefan> (package--reload-previously-loaded pkg-desc))
    Stefan> (with-demoted-errors "Error loading autoloads: %s"
    Stefan> (load (package--autoloads-file-name pkg-desc) nil t))
    Stefan> -        (add-to-list 'load-path (directory-file-name pkg-dir)))
    Stefan> +        ;; FIXME: Since 2013 (commit 4fac34cee97a), the autoload files take
    Stefan> +        ;; care of changing the `load-path', so maybe it's time to
    Stefan> +        ;; remove this fallback code?
    Stefan> +        (unless (or (member (file-name-as-directory pkg-dir) load-path)
    Stefan> +                    (member (directory-file-name pkg-dir) load-path))
    Stefan> +          (add-to-list 'load-path pkg-dir)))

    Stefan> Maybe we can have that patch in emacs-29 and remove the code altogether
    Stefan> on `master`?

That seems reasonable. Eli?

Robert
-- 




This bug report was last modified 2 years and 55 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.