If I create a new folder and start editing an empty bb.edn within it, the Analyzing external classpath step takes quite a long time. I'm using neovim. Is there some config I'm missing that would eliminate this long startup time on an empty project?
there are plans to show feedback about that, but in the end is a command in the shell taking time
in this case bb print-deps --format classpath
you can try run in your project too see
Here’s an area where clojurescript needs improvement and where clojure is better: Go to definition of interop import
In clj
(ns
(:import java.time Date))
...
If I right click “Go to Definition” on Date, in most editors I can explore the Java date package
But in cljs
(ns
(:require ["react" :as r])
(r/renderElement "div")
If I right click “Go to definition” for r nothing happens so cljs devs are kinda forced to operate in the dark in that sense or you learn to explore with the REPL or you actually go manually to node_modules and inspect the typescript declaration files or javascript to understand what is there
Is there anything on the roadmap to support cljs interop static analysis in node_modules? a.k.a borrow from typescript/javascript LSP?Yes, I'm aware of that, and https://github.com/clojure-lsp/clojure-lsp/issues/2040 to improve clojure-lsp to be able to support that easier, this is the same problem of cljd interop, since we don't have analysis about other langs. Having a way to extend clojure-lsp to support other analysis providers would help both cljs and cljd to use other libs that provide analysis about that, although there is a lot of work for that happen yet
THank you! That is awesome news!
It's something I want to take a closer look next month :)
Eager to see this development
It can be split into 2 stages: • refactor clojure-lsp to support multi analysis providers • Find / create a lib that provide analysis about js packages. I did something similar with https://github.com/clj-easy/stub, which starts a clojure process and export data as analysis