突然得到quri.parser::parse方案字符串未定义



我是Dexador的快乐用户。突然,一个简单的dex:get<url>给了我一个

quri.parser::parse-scheme-string is undefined

错误。

正在尝试(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.

这似乎与我的环境有关。我认为它是在我降级QL版本后弹出的(因为Slime错误(。

edit:我曾经在调试器上接受过这个错误,它不再弹出。

奇怪的是:Dexador和Quri最近都没有被修改。它过去很管用。

此外,我在QL的本地dist项目中使用了Dexador和Quri来找到这个函数,它只在Quri中出现过一次。它甚至不是一个定义的函数,那么它怎么可能工作呢?(给定包使用cl、quri.error和quri.util(https://github.com/fukamachi/quri/blob/83f3b8612be826b602f3584acac1b82691a141e6/src/parser.lisp#L96

我删除了在我的项目中找到的fasl文件。

不管怎样,你会如何处理这个问题?

我仍然不想升级Quicklisp,Slime没有发布新版本。

编辑:我升级了QL,然后删除了~/quicklisp/并重新安装,删除了所有~/.cache/common-lisp:相同。

谢谢。

SBCL Debian 1.2.4(安装于1.4.13,由于另一个铁的错误无法加载我的项目(。Quicklisp dist"2018-04-30"。

我还在一期杂志上问https://github.com/fukamachi/dexador/issues/61#issuecomment-433672052

宏使用format来插入新符号,我在.sbclrc.中将*print-case*设置为:downcase

有一个解决方案:https://github.com/fukamachi/quri/pull/24

删除~/.cache/common-lisp/sbcl-xx/quri/中缓存的fasl并快速加载quri就足以恢复该函数。

最新更新