Observe:
; SLIME 2008-02-10 STYLE-WARNING: redefining EMACS-INSPECT (#<BUILT-IN-CLASS FUNCTION>) in DEFMETHOD CL-USER> (require :swank)
...
debugger invoked on a SIMPLE-TYPE-ERROR: *PACKAGE* can't be a deleted package: *PACKAGE* has been reset to #<PACKAGE "COMMON-LISP-USER">.
Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name): 0: [ABORT ] Return to SLIME's top level. 1: [CLOSE-CONNECTION] Close SLIME connection 2: Exit debugger, returning to top level.
(SB-INT:SANE-PACKAGE)
The quick and dirty fix is:
--- swank-loader.lisp.orig 2008-02-14 10:56:14.078125000 -0600 +++ swank-loader.lisp 2008-02-14 10:56:30.828125000 -0600 @@ -19,7 +19,7 @@ ;; (load ".../swank-loader.lisp")
(eval-when (:compile-toplevel :load-toplevel :execute) - (when (find-package :swank) + (when (and (find-package :swank) (not (asdf:find-system :swank))) (delete-package :swank) (delete-package :swank-io-package) (delete-package :swank-backend)))
Matthew Swank <akopa.gmane.poster <at> gmail.com> writes:
Observe:
; SLIME 2008-02-10 STYLE-WARNING: redefining EMACS-INSPECT (#<BUILT-IN-CLASS FUNCTION>) in DEFMETHOD CL-USER> (require :swank)
...
debugger invoked on a SIMPLE-TYPE-ERROR: *PACKAGE* can't be a deleted package: *PACKAGE* has been reset to #<PACKAGE "COMMON-LISP-USER">.
The reason this matters (to me at least), is that it makes Stefil impossible to use for interactive testing as Stefil expects that: 1. I am interacting with my lisp using slime. 2. It can include swank and a system dependency.
I am a little surprised that no one else reported a problem.
Matt
Matthew D.Swank akopa.gmane.poster@gmail.com writes:
debugger invoked on a SIMPLE-TYPE-ERROR: *PACKAGE* can't be a deleted package: *PACKAGE* has been reset to #<PACKAGE "COMMON-LISP-USER">.
[...]
I am a little surprised that no one else reported a problem.
See http://article.gmane.org/gmane.lisp.slime.devel/7039.
Luis Oliveira <luismbo <at> gmail.com> writes:
Matthew D.Swank <akopa.gmane.poster <at> gmail.com> writes:
I am a little surprised that no one else reported a problem.
My bad.
On Feb 16, 2008, at 14:38 , Luis Oliveira wrote:
Matthew D.Swank akopa.gmane.poster@gmail.com writes:
debugger invoked on a SIMPLE-TYPE-ERROR: *PACKAGE* can't be a deleted package: *PACKAGE* has been reset to #<PACKAGE "COMMON-LISP-USER">.
[...]
I am a little surprised that no one else reported a problem.
No offense, but several people have warned before and after this change that deleting packages behind the user's back is not such a great idea. Perhaps this patch could be reverted until someone figures out a better solution?
My two cents.
Michael
On 2/16/08, Michael Weber michaelw+slime@foldr.org wrote:
No offense, but several people have warned before and after this change that deleting packages behind the user's back is not such a great idea. Perhaps this patch could be reverted until someone figures out a better solution?
Signal an error, with a restart to nuke the packages and another to continue with the old ones?
Cheers,
-- Nikodemus
* Matthew D.Swank [2008-02-16 10:08+0100] writes:
Matthew Swank <akopa.gmane.poster <at> gmail.com> writes:
Observe:
; SLIME 2008-02-10 STYLE-WARNING: redefining EMACS-INSPECT (#<BUILT-IN-CLASS FUNCTION>) in DEFMETHOD CL-USER> (require :swank)
...
debugger invoked on a SIMPLE-TYPE-ERROR: *PACKAGE* can't be a deleted package: *PACKAGE* has been reset to #<PACKAGE "COMMON-LISP-USER">.
The reason this matters (to me at least), is that it makes Stefil impossible to use for interactive testing as Stefil expects that: 1. I am interacting with my lisp using slime. 2. It can include swank and a system dependency.
I am a little surprised that no one else reported a problem.
I disabled the delete-package stuff in the CVS version. Deleting old packages was supposed to avoid confusing error messages, but it is actually more confusing than not to deleting them. There's a new function
swank-loader:init &key delete reload
which can be called with :delete t to force the deletion. By default it doesn't delete anything. By default, it also doesn't reload swank, if the swank package already exists.
Helmut.