luismbo[m] has quit [Remote host closed the connection]
fivo has joined #slime
luismbo[m] has joined #slime
Kabriel has joined #slime
<Kabriel>
I'm having a bit of trouble with my slime setup. I am using stock debian 10 emacs 26.1, sbcl 1.4.16, slime 2.23 and using quicklisp to load mcclim (mcclim-20190813-git).
<Kabriel>
I get an error that SWANK/BACKEND also exports the following symbols: with a long list
<Kabriel>
I thought maybe I had some stale fasl files, so I removed the .cache/common-lisp/... directory and recompiled everything, but still get the error.
<luis>
Kabriel: sounds like loading mcclim is causing a second swank to be loaded.
<Kabriel>
The folks at #clim assured me that I have a slime setup issue
<Kabriel>
I thought this too, but I can't find where; any tips on debugging
makomo has quit [Quit: WeeChat 2.4]
<luis>
Kabriel: open a fresh SBCL, what does (asdf:system-definition-pathname (asdf:find-system :uiop)) say?
<luis>
Kabriel: open a fresh SBCL, what does (asdf:system-definition-pathname (asdf:find-system :swank)) say?
<Kabriel>
that also worked fine; I did (require 'asdf) (asdf:load-system :swank) (load "~/.local/share/quicklisp/setup.lisp") (ql:quickload 'mcclim)
<luis>
Via SLIME?
<Kabriel>
sorry, this was all in a fresh sbcl. I'll try in slime.
<Kabriel>
ok, via a fresh emacs/slime startup, if I do (asdf:load-system :swank), I get the same error that swank-loader also exports these symbols
<Kabriel>
pathname is /usr/share/common-lisp/source/slime/swank.asd:
<luis>
Kabriel: so, it's surprising that you get an error.
<luis>
Kabriel: what value does sb-ext:*on-package-variance* have?
<Kabriel>
I checked in my .cache directory, and there is only one slime/swank set of fasl files
<luis>
I have a vague memory that ASDF promotes WARNINGs to compilation errors on SBCL. But I'm not seeing that in my setup.
<Kabriel>
(:ERROR T)
<luis>
Ah, there you go.
<luis>
Change that to at least '(:warn (:swank :swank-backend) :error t)
<Kabriel>
So I had to do (setf sb-ext:*on-package-variance* '(:warn (:swank :swank/backend :swank-loader) :error t))
<Kabriel>
and it didn't give an error, but lots of warnings. Is this normal?
<Kabriel>
I mean its the same thing, just telling it to ignore the re-exporting
<Kabriel>
funny, the example in the sbcl manual for on-package-varience is to set swank and swank-backend to warning
<luis>
Kabriel: so, what's happening is that SLIME loads SWANK on its own without ASDF. Loading it via ASDF later causes it to be reloaded and that package issue is expected. Your SBCL setup is causing the warning to be promoted to an error. I wonder why. Did you change that setting? Maybe it's the debian package?
<luis>
Kabriel: not sure if the warning normal, but it is expected. :-)
<Kabriel>
I can't believe it. I thought I had an empty sbclrc file, but it actually sets this variable to error t!
<Kabriel>
the default is to warn, right?
frgo has quit [Remote host closed the connection]
<Kabriel>
luis: thanks much for your help
<luis>
Kabriel: ok, cool. Mystery solved. :-)
<Kabriel>
Is there a way to tell mcclim that swank is actually already loaded?
<Kabriel>
or perhaps tell asdf
edgar-rft has quit [Quit: Leaving]
frgo has joined #slime
<luis>
Kabriel: not that I know of, but there might be some way. It'd help if SLIME loaded SWANK via ASDF. There are some pending merge requests to make it do that.