Cider: ошибка eldoc при попытке завершения символа

Созданный на 22 апр. 2020  ·  8Комментарии  ·  Источник: clojure-emacs/cider

Снапшот CIDER 0.25.0 (пакет: 20200420.735), nREPL 0.6.0
Clojure 1.10.1, Java 1.8.0_242
Убунту 18.04

clj-tools ответ
В буфере clojure оцените (Cck k), затем введите следующие два выражения:

(require '[clojure.string :as str])
str/bl<TAB>

причины:

 Suppress eldoc-error 

1. Unhandled java.lang.Exception
   Either "symbol", or ("class", "member") must be supplied

                  info.clj:   71  cider.nrepl.middleware.info/info
                  info.clj:   61  cider.nrepl.middleware.info/info
                  info.clj:   85  cider.nrepl.middleware.info/eldoc-reply
                  info.clj:   83  cider.nrepl.middleware.info/eldoc-reply
        error_handling.clj:  160  cider.nrepl.middleware.util.error-handling/eval1768/fn
              MultiFn.java:  234  clojure.lang.MultiFn/invoke
                  info.clj:   96  cider.nrepl.middleware.info/handle-info
                  info.clj:   95  cider.nrepl.middleware.info/handle-info
                  Var.java:  388  clojure.lang.Var/invoke
                 nrepl.clj:  181  cider.nrepl/wrap-info/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  167  cider.nrepl/wrap-format/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  306  cider.nrepl/wrap-profile/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  426  cider.nrepl/wrap-trace/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:   95  cider.nrepl/wrap-slurp/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
             load_file.clj:   81  nrepl.middleware.load-file/wrap-load-file/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  463  cider.nrepl/wrap-version/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  103  cider.nrepl/wrap-apropos/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  111  cider.nrepl/wrap-classpath/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  137  cider.nrepl/wrap-debug/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  163  cider.nrepl/wrap-enlighten/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  473  cider.nrepl/wrap-xref/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  455  cider.nrepl/wrap-undef/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  444  cider.nrepl/wrap-tracker/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  397  cider.nrepl/wrap-stacktrace/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:   83  cider.nrepl/wrap-content-type/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 nrepl.clj:  200  cider.nrepl/wrap-inspect/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                caught.clj:   97  nrepl.middleware.caught/wrap-caught/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                 print.clj:  234  nrepl.middleware.print/wrap-print/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
               session.clj:  272  nrepl.middleware.session/session/fn
            middleware.clj:   16  nrepl.middleware/wrap-conj-descriptor/fn
                server.clj:   18  nrepl.server/handle*
                server.clj:   15  nrepl.server/handle*
                server.clj:   27  nrepl.server/handle/fn
                  core.clj: 2030  clojure.core/binding-conveyor-fn/fn
                  AFn.java:   18  clojure.lang.AFn/call
           FutureTask.java:  266  java.util.concurrent.FutureTask/run
   ThreadPoolExecutor.java: 1149  java.util.concurrent.ThreadPoolExecutor/runWorker
   ThreadPoolExecutor.java:  624  java.util.concurrent.ThreadPoolExecutor$Worker/run
               Thread.java:  748  java.lang.Thread/run

Самый полезный комментарий

Пожалуйста!

Я также отправил совместимый снимок, так как заметил, что вы не единственный, кого это изменение задело. Кстати, в cider.el есть константа, которую всегда можно проверить, если есть сомнения в том, что они используют правильную версию cider-nrepl :

(defconst cider-required-middleware-version "0.25.0-alpha1"
  "The CIDER nREPL version that's known to work properly with CIDER.")

Все 8 Комментарий

Какая у вас версия cider-nrepl ? Мне кажется, что ваш клиент и промежуточное ПО не синхронизированы.

Я использую cider-nrepl 0.25.0-SNAPSHOT , вот команда, которую я запускаю, чтобы запустить repl:

clj -A:datomic-pro:dev -Sdeps '{:deps {cider/cider-nrepl {:mvn/version "0.25.0-SNAPSHOT"}}}' -m nrepl.cmdline --middleware "[cider.nrepl/cider-middleware]"

Проблема исчезнет, ​​когда вы переключитесь на cider-nrepl 0.25.0-alpha1. Время от времени я сокращаю релизы, чтобы снимки не синхронизировались с клиентом.

Спасибо! - могу подтвердить, что переход на cider-nrepl 0.25.0-alpha1 действительно решает проблему для меня :+1:
Где лучше всего проверять наличие новых выпусков cider-nrepl пожалуйста?

Думаю, это будет clojars . Хотя я удивлен, что вы не получили предупреждения. В конфигурации CIDER требуется версия alpha1, но я предполагаю, что логика сравнения версий считает, что снимок и альфа достаточно близки.

Думаю, это будет clojars . Хотя я удивлен, что вы не получили предупреждения. В конфигурации CIDER требуется версия alpha1, но я предполагаю, что логика сравнения версий считает, что снимок и альфа достаточно близки.

Я обнаружил, что обычно получаю эти предупреждения (необходимо обновить cider-nrepl ), еще раз спасибо!

Пожалуйста!

Я также отправил совместимый снимок, так как заметил, что вы не единственный, кого это изменение задело. Кстати, в cider.el есть константа, которую всегда можно проверить, если есть сомнения в том, что они используют правильную версию cider-nrepl :

(defconst cider-required-middleware-version "0.25.0-alpha1"
  "The CIDER nREPL version that's known to work properly with CIDER.")

то же самое здесь -> исправлено путем удаления зависимости от ~/.lein/profile.clj

Была ли эта страница полезной?
0 / 5 - 0 рейтинги