GNU bug report logs -
#15235
24.3.50; package.el updates load-path too late
Previous Next
Reported by: emacs18 <at> gmail.com
Date: Sun, 1 Sep 2013 16:47:02 UTC
Severity: normal
Merged with 15272,
15523
Found in version 24.3.50
Done: Noam Postavsky <npostavs <at> users.sourceforge.net>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#15235: 24.3.50; package.el updates load-path too late
which was filed against the emacs package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 15235 <at> debbugs.gnu.org.
--
15235: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15235
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Closing since everyone using 24.3.50 must have updated their
*-autoloads.el files by now.
[Message part 3 (message/rfc822, inline)]
A recent change made on bzr trunk is causing one of my ELPA packages to
fail to load due to `load-path' not being updated promptly.
The change in question seems to be Stefan's revision 114047 checked in
on Aug 28, 2013 with check in comment
Don't add unnecessarily to load-path.
The package in question is icicles which I created by putting together a
few files from emacswiki.org which I have been using for several years.
The problem is that icicles-autoloads.el refers to some custom face
which is provided by icicles-face.el in the icicles package directory.
However Stefan's change now evaluates icicles-autoloads.el first then
updates load-path to add path for icicles. Following shows
`package-activate-1' from around August 24:
(defun package-activate-1 (pkg-desc)
(let* ((name (package-desc-name pkg-desc))
(pkg-dir (package-desc-dir pkg-desc)))
(unless pkg-dir
(error "Internal error: unable to find directory for `%s'"
(package-desc-full-name pkg-desc)))
;; Add info node.
(when (file-exists-p (expand-file-name "dir" pkg-dir))
;; FIXME: not the friendliest, but simple.
(require 'info)
(info-initialize)
(push pkg-dir Info-directory-list))
;; Add to load path, add autoloads, and activate the package.
(push pkg-dir load-path)
(load (expand-file-name (format "%s-autoloads" name) pkg-dir) nil t)
(push name package-activated-list)
;; Don't return nil.
t))
Note that (load) of the "-autolads" file comes after updating of
load-path, i.e., (push pkg-dir load-path). Thus icicles-face.el can be
found in this version of package.el.
Shouldn't load-path updated first for the packge being intialized so
that code in "*-autoloads.el" can load other elisp files in the package
directory?
This bug report was last modified 8 years and 333 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.