I was a happy user of Dexador. Suddenly, a simple dex:get<url>
throws me a
quri.parser::parse-scheme-string is undefined
error.
Trying (dex:get url)
:
0: ("undefined function")
1: (quri.parser::parse-uri-string #<unavailable argument> :start #<unavailable argument> :end #<unavailable argument>)
2: (quri.uri:uri "http://1337x.to/sort-search/sintel/seeders/desc/1/" :start 0 :end nil)
3: (dexador.backend.usocket:request #<unavailable argument> #<unavailable &REST argument> :method #<unused argument> :version #<unused argument> :content #<unavailable argument> :headers #<unavailable ar.
It seems related to my environment. I think it popped out after I downgraded my QL version (because of a Slime error).
edit: I once accepted this error on the debugger, it doesn't pop-up anymore.
It's weird: neither Dexador nor Quri were modified recently. It used to work.
Also, I greped Dexador and Quri, in my QL's local dist projects, to find this function, and it only appears once in Quri. It is not even a defined function, so how could it even work ? (given the package uses cl, quri.error and quri.util) https://github.com/fukamachi/quri/blob/83f3b8612be826b602f3584acac1b82691a141e6/src/parser.lisp#L96
I deleted the fasl files found in my project.
Anyway, how would you approach this problem ?
I still don't want to upgrade Quicklisp, Slime didn't release a new version.
edit: I upgraded QL, then deleted ~/quicklisp/
and re-installed it, deleted all ~/.cache/common-lisp
: the same.
thanks.
SBCL Debian 1.2.4 (installed 1.4.13, couldn't load my project with another ironclad error). Quicklisp dist "2018-04-30".
I also asked in an issue https://github.com/fukamachi/dexador/issues/61#issuecomment-433672052
The macro used format
to intern new symbols, and I set *print-case*
to :downcase
in my .sbclrc.
There's a fix: https://github.com/fukamachi/quri/pull/24
Deleting the fasl cached in ~/.cache/common-lisp/sbcl-xx/quri/
and quickloading quri was then enough to have the function back.