Code completion works consistently.
Actual behaviorRelevant completion candidates disappear from the list randomly (I noticed this at least for local bindings and keywords).
Steps to reproduce the problemThis is tricky, because sometimes it works and sometimes not.
deps.edn
project and define some function with local bindings:(defn foo [bar] (let [my-local-variable "Hello"] (println __poin-is-here__)))
my-local-variable
(maybe remove some characters then type again)my-local-variable
won't be in the list of company/cofru candidates.Relevant nREPL messages:
(-->
id "29"
op "complete"
session "b73b77fd-9a14-47a3-9d5b-d6daeead5e1a"
time-stamp "2024-01-29 12:30:02.303359000"
context "(defn foo
[bar]
(let [my-local-variable "Hello"]
(pr..."
enhanced-cljs-completion? "t"
ns #("com.example.app" 0 15 (face font-lock-type-face cider-block-dynamic-font-lock t cider-locals nil fontified t))
prefix "my-"
)
(<--
id "29"
session "b73b77fd-9a14-47a3-9d5b-d6daeead5e1a"
time-stamp "2024-01-29 12:30:02.309337000"
completions ((dict "candidate" "my-map" "ns" "com.example.app" "type" "var")
(dict "candidate" "my-local-variable" "type" "local"))
status ("done")
)
(-->
id "30"
op "complete"
session "b73b77fd-9a14-47a3-9d5b-d6daeead5e1a"
time-stamp "2024-01-29 12:30:07.146519000"
context ":same"
enhanced-cljs-completion? "t"
ns #("com.example.app" 0 15 (face font-lock-type-face cider-block-dynamic-font-lock t cider-locals nil fontified t))
prefix "my-l"
)
(<--
id "30"
session "b73b77fd-9a14-47a3-9d5b-d6daeead5e1a"
time-stamp "2024-01-29 12:30:07.151185000"
completions nil
status ("done")
)
On first request with prefix = my-
the variable is present in the list of candidates, on the second request with prefix my-l
the list of candidates is empty.
After downgrading cider-nrepl
to version 0.44.0 the problem is not reproducible.
The problem is reproducible for both: Clojure and ClojureScript projects. Maybe it's related to the upgrade of compliment
, but I'm not sure and I don't know how to debug it.
I can reproduce it with default CIDER settings with emacs -q
.
;; CIDER 1.14.0-snapshot (package: 20240121.2104), nREPL 1.0.0
;; Clojure 1.11.1, Java 17.0.9
Lein / Clojure CLI version
Clojure CLI 1.11.1
Emacs version29.2
Operating systemMacOS 14 & Arch Linux (reproducible on both)
JDK distributionopenjdk version "17.0.9" 2023-10-17
OpenJDK Runtime Environment Homebrew (build 17.0.9+0)
OpenJDK 64-Bit Server VM Homebrew (build 17.0.9+0, mixed mode, sharing)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4