help-gnu-emacs
[Top][All Lists]
Advanced

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

Package update error on OSX


From: wtm
Subject: Package update error on OSX
Date: Fri, 27 Feb 2015 09:50:09 -0600

Hello,

I've encountered a error while loading my init.el that I'm having
difficulty troubleshooting.  I'm using Emacs 24.4 on 10.10.2.  The text of
the error looks like this:

Warning (initialization): An error occurred while loading
`/Users/wmonro1/.emacs.d/init.el':

,----
| Wrong type argument: arrayp, ([cl-struct-package-desc ace-jump-mode
(20140616 115) a quick cursor location minor mode for emacs nil nil nil
/Users/wmonro1/.emacs.d/elpa/ace-jump-mode-20140616.115 nil nil])
`----

1.  The first thing I noticed about this error was that it only occurs when
I update my packages on my OSX machines and not my Linux laptop.  Package
updating is prompted every seven days using some Lisp that I borrowed from
Lars Tveito's excellent configuration (https://github.com/larstvei/dot-emacs).
This code (see below) was working fine for several months.

I believe this code is obtaining the shell environment variables on OSX:

,----
| (when (memq window-system '(mac ns))
|     (upgrade-or-install-package 'exec-path-from-shell))
|   (package-initialize))
`----

I believe this code is prompting the package update and defining the
packages:

,----
| (when (and do-package-update-on-init
|                 (y-or-n-p "Update all packages?"))
|        (package-refresh-contents)
|
|        (let* ((packages
|                '(ace-jump-mode     ; quick cursor location minor mode
|                  auto-compile      ; automatically compile Emacs Lisp
libraries
|                  auto-complete     ; auto completion
|                  bind-key          ; a new way to bind keys from sacha
chua
|                  dired-details     ; make file details hide-able in dired
|                  dired-details+    ; Enhancements to library
dired-details+
|                  dired+            ; extensions to dired
|                  elscreen          ; window session manager
|                  expand-region     ; Increase selected region by semantic
units
|                  flx-ido           ; flx integration for ido
|                  ido-vertical-mode ; Makes ido-mode display vertically.
|                  js2-mode          ; Improved JavaScript editing mode
|                  magit             ; control Git from Emacs
|                  markdown-mode     ; Emacs Major mode for
Markdown-formatted files.
|                  monokai-theme     ; A fruity color theme for Emacs.
|                  move-text         ; Move current line or region with
M-up or M-down
|                  moz               ; Lets current buffer interact with
inferior mozilla
|                  moz-controller    ; Control Firefox from
Emacs
|                  multiple-cursors  ; Multiple cursors for Emacs.
|                  org               ; Outline-based notes management and
organizer
| ;;               org-crypt         ; encryption for use within org-mode
|                  org-habit         ; org-mode habits
|                  org-journal       ; Org-mode journal mode
|                  org-velocity      ; notational velocity and org-mode
http://orgmode.org/worg/org-contrib/org-velocity.html
|                  paredit           ; minor mode for editing parentheses
|                  powerline         ; Rewrite of Powerline
|                  pretty-lambdada   ; the word `lambda' as the Greek
letter.
|                  smex              ; M-x interface with Ido-style fuzzy
matching.
|                  undo-tree         ; Treat undo history as a tree
|                  use-package       ; sacha chua uses this to call certain
packages
|                  yasnippet         ; yasnippet is a snippet extension tool
|                  web-mode))        ; Autonomous major mode for editing
web templates with HTML, CSS, Javascript
|               ;; Fetch dependencies from all packages.
|               (reqs (mapcar 'dependencies packages))
|               ;; Append these to the original list, and remove any
duplicates.
|               (packages (delete-dups (apply 'append packages reqs))))
|
|          (dolist (package packages)
|            (upgrade-or-install-package package)))
`----

After running emacs -debug-init and prompting the package update
again--package update is prompted by a reading the date in a file,
~/.emacs.d/.package-last-update--I saw the following error:

,----
| Debugger entered--Lisp error: (wrong-type-argument arrayp
([cl-struct-package-desc ace-jump-mode (20140616 115) "a quick cursor
location minor mode for emacs" nil nil nil
"/Users/wmonro1/.emacs.d/elpa/ace-jump-mode-20140616.115" nil nil]))
|   aref(([cl-struct-package-desc ace-jump-mode (20140616 115) "a quick
cursor location minor mode for emacs" nil nil nil
"/Users/wmonro1/.emacs.d/elpa/ace-jump-mode-20140616.115" nil nil]) 0)
|   (memq (aref (cdr pkg-desc) 0) cl-struct-package-desc-tags)
|   (and (memq (aref (cdr pkg-desc) 0) cl-struct-package-desc-tags))
|   (or (and (memq (aref (cdr pkg-desc) 0) cl-struct-package-desc-tags))
(error "%s accessing a non-%s" (quote package-desc-reqs) (quote
package-desc)))
|   (progn (or (and (memq (aref (cdr pkg-desc) 0)
cl-struct-package-desc-tags)) (error "%s accessing a non-%s" (quote
package-desc-reqs) (quote package-desc))) (aref (cdr pkg-desc) 4))
|   (and pkg-desc (progn (or (and (memq (aref (cdr pkg-desc) 0)
cl-struct-package-desc-tags)) (error "%s accessing a non-%s" (quote
package-desc-reqs) (quote package-desc))) (aref (cdr pkg-desc) 4)))
|   (let* ((pkg-desc (assq package package-alist)) (reqs (and pkg-desc
(progn (or (and (memq ... cl-struct-package-desc-tags)) (error "%s
accessing a non-%s" (quote package-desc-reqs) (quote package-desc))) (aref
(cdr pkg-desc) 4))))) (mapcar (quote car) reqs))
|   dependencies(ace-jump-mode)
|   mapcar(dependencies (ace-jump-mode auto-compile auto-complete bind-key
dired-details dired-details+ dired+ elscreen expand-region flx-ido
ido-vertical-mode js2-mode magit markdown-mode monokai-theme move-text moz
moz-controller multiple-cursors org org-habit org-journal org-velocity
paredit powerline pretty-lambdada smex undo-tree use-package yasnippet
web-mode))
|   (let* ((packages (quote (ace-jump-mode auto-compile auto-complete
bind-key dired-details dired-details+ dired+ elscreen expand-region flx-ido
ido-vertical-mode js2-mode magit markdown-mode monokai-theme move-text moz
moz-controller multiple-cursors org org-habit org-journal org-velocity
paredit powerline pretty-lambdada smex undo-tree use-package yasnippet
web-mode))) (reqs (mapcar (quote dependencies) packages)) (packages
(delete-dups (apply (quote append) packages reqs)))) (let ((--dolist-tail--
packages) package) (while --dolist-tail-- (setq package (car
--dolist-tail--)) (upgrade-or-install-package package) (setq
--dolist-tail-- (cdr --dolist-tail--)))))
|   (progn (package-refresh-contents) (let* ((packages (quote
(ace-jump-mode auto-compile auto-complete bind-key dired-details
dired-details+ dired+ elscreen expand-region flx-ido ido-vertical-mode
js2-mode magit markdown-mode monokai-theme move-text moz moz-controller
multiple-cursors org org-habit org-journal org-velocity paredit powerline
pretty-lambdada smex undo-tree use-package yasnippet web-mode))) (reqs
(mapcar (quote dependencies) packages)) (packages (delete-dups (apply
(quote append) packages reqs)))) (let ((--dolist-tail-- packages) package)
(while --dolist-tail-- (setq package (car --dolist-tail--))
(upgrade-or-install-package package) (setq --dolist-tail-- (cdr
--dolist-tail--))))) (if (memq window-system (quote (mac ns))) (progn
(upgrade-or-install-package (quote exec-path-from-shell))))
(package-initialize))
|   (if (and do-package-update-on-init (y-or-n-p "Update all packages?"))
(progn (package-refresh-contents) (let* ((packages (quote (ace-jump-mode
auto-compile auto-complete bind-key dired-details dired-details+ dired+
elscreen expand-region flx-ido ido-vertical-mode js2-mode magit
markdown-mode monokai-theme move-text moz moz-controller multiple-cursors
org org-habit org-journal org-velocity paredit powerline pretty-lambdada
smex undo-tree use-package yasnippet web-mode))) (reqs (mapcar (quote
dependencies) packages)) (packages (delete-dups (apply (quote append)
packages reqs)))) (let ((--dolist-tail-- packages) package) (while
--dolist-tail-- (setq package (car --dolist-tail--))
(upgrade-or-install-package package) (setq --dolist-tail-- (cdr
--dolist-tail--))))) (if (memq window-system (quote (mac ns))) (progn
(upgrade-or-install-package (quote exec-path-from-shell))))
(package-initialize)))
|   eval-buffer(#<buffer  *load*> nil "/Users/wmonro1/.emacs.d/init.el" nil
t)  ; Reading at buffer position 10959
|   load-with-code-conversion("/Users/wmonro1/.emacs.d/init.el"
"/Users/wmonro1/.emacs.d/init.el" t t)
|   load("/Users/wmonro1/.emacs.d/init" t t)
|   #[0 "\205\262    \306=\203\307\310Q\202;
 
\311=\204\307\312Q\202;\313\307\314\315#\203*\316\202;\313\307\314\317#\203:\320\nB\321\202;\316\322\323\322\211#\210
\322=\203a\324\325\326\307\327Q!\"\323\322\211#\210 \322=\203`\210
\203\243\330 !\331\232\203\243\332
!\211\333P\334!\203}\211\202\210\334!\203\207\202\210\314\262\203\241\335
\"\203\237\336\337
#\210\340\341!\210\266\f?\205\260\314\323\342\322\211#)\262\207"
[init-file-user system-type delayed-warnings-list user-init-file
inhibit-default-init inhibit-startup-screen ms-dos "~" "/_emacs" windows-nt
"/.emacs" directory-files nil "^\\.emacs\\(\\.elc?\\)?$" "~/.emacs"
"^_emacs\\(\\.elc?\\)?$" (initialization "`_emacs' init file is deprecated,
please use `.emacs'") "~/_emacs" t load expand-file-name "init"
file-name-as-directory "/.emacs.d" file-name-extension "elc"
file-name-sans-extension ".el" file-exists-p file-newer-than-file-p message
"Warning: %s is newer than %s" sit-for 1 "default"] 7 "\n\n(fn)"]()
|   command-line()
|   normal-top-level()
`----

I'm new to the Emacs debugger and backtrace and although I'm working my way
through Introduction to Emacs Programming in Emacs Lisp, I'm not sure how
to make sense of this.  But I did notice the following:

2. Emacs is looking for an array and does not find one.  I tried to
investigate `cl-struct-package-desc' but I couldn't find out very much.
Searching for a function by that name brings up no match and using `M-x
apropos' just pointed me to a variable, `cl-struct-package-desc-tags'.  Not
sure if that's related or not.

3. Emacs always mentioned the first package in my list of packages to
update in the error.  The package, `ace-jump-mode', that Emacs mentions is
the first one in a list of packages in my init.el file that are updated.  I
tried removing `ace-jump-mode' and found that doing so resulted in the next
package (e.g., `auto-compile') being mentioned in the error message.

So, I'm not really sure how to proceed beyond this with my
troubleshooting.  It seems like the problem could be related to the shell
environment somehow since it's only occuring on OSX but I'm at a loss as to
what to do.

Thank you for taking the time to read this, if you have any advice about
how to proceed with troubleshooting, I'd certainly appreciate it.

Best regards,

Will


reply via email to

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