I was just going to try asdf-install for the very first time, and it turns out to kill slime. Or more precisely, my lisp and emacs both die (sbcl 0.9.13.21, GNU Emacs 23.0.0.1, slime from CVS as of 2006-06-04).
So to get some more information, I tried again from the *inferioir-lisp* buffer (see beneath my signature, below). I figure the problem is with the debugger trying to print a string containing binary data, and somehow not using the UTF-8 encoding to do it.
I have this charset specification in .emacs:
(setf slime-lisp-implementations '((sbcl ("sbcl") :coding-system utf-8-unix) (cmucl ("cmucl") :coding-system iso-latin-1-unix)))
- Harald
PS. This is the wrong place to ask I know, but can anyone throw any light on the GPG message about "key id 0xNIL ()"?
---------------- This is SBCL 0.9.13.21, an implementation of ANSI Common Lisp. ;;; startup chatter elided * (require :asdf-install) ;;; somewhat verbose output elided * (asdf-install:install :cells) Install where? 1) System-wide install: System in /local/lib/sbcl/site-systems/ Files in /local/lib/sbcl/site/ 2) Personal installation: System in /Users/hanche/.sbcl/systems/ Files in /Users/hanche/.sbcl/site/ --> 1 Downloading 74072 bytes from http://common-lisp.net/project/cells/asdf-install/cells_2.0.tar.gz ...
debugger invoked on a ASDF-INSTALL::KEY-NOT-TRUSTED: GPG warns that the key id 0xNIL () is not fully trusted
Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name): 0: [CONTINUE ] Install the package anyway 1: [SKIP-GPG-CHECK] Don't check GPG signature for this package 2: [ABORT ] Exit debugger, returning to top level.
(ASDF-INSTALL::VERIFY-GPG-SIGNATURE/STRING "-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
(a whole bunch of binary data left out, all part of this humongous string)
" #P"/Users/hanche/CELLS.asdf-install-tmp")
+ Harald Hanche-Olsen hanche@math.ntnu.no:
| I figure the problem is with the debugger trying to print a string | containing binary data, and somehow not using the UTF-8 encoding to | do it.
But if so, one might think that the following test would have the same effect, but it doesn't.
(error (make-string 1 :initial-element (code-char #x81)))
This version of the test, however ...
(let ((x (make-string 128))) (loop for i below 128 do (setf (char x i) (code-char (+ 128 i)))) (error x))
... produced the following message in the minibuffer on the first attempt: (I fished it out of the *Messages* buffer afterwards)
; pipelined request... (swank:listener-eval "(let ((x (make-string 128))) (loop for i below 128 do (setf (char x i) (code-char (+ 128 i)))) (error x)) ")
and on the second attempt, it again killed sbcl and emacs when I selected the restart 0 (abort slime request).
This ought to be easier to reproduce and debug than my asdf-install example.
Oh, I forgot to mention my OS earlier: MacOS X 10.4.6.
- Harald