lsp 2025-08-22

During startup does clojure-lsp send $/progress messages? I'm failing to display them in my client. Seemed to hang where the ----- is, then I got a lot of progress messages at once:

2025-08-22T10:08:45.700Z  INFO [clojure-lsp.startup:314] - [startup] Analyzing source paths for project root /Users/dominicmonroe/src/github.com/...
---------[did nothing here]---------------
2025-08-22T10:08:45.702Z  INFO [clojure-lsp.startup:77] - :internal/project-paths-analyzed-by-clj-depend 1ms
2025-08-22T10:12:54.880Z  INFO [clojure-lsp.kondo:174] - :internal/kondo-findings->analysis 0ms
2025-08-22T10:12:54.882Z  INFO [clojure-lsp.startup:73] - :internal/project-paths-analyzed-by-clj-kondo 249181ms
2025-08-22T10:12:56.076Z  INFO [clojure-lsp.dep-graph:280] - :internal/maintain-dep-graph 1192ms
`

oh, maybe the clojure-lsp.startup happened. You can see the 4 minute gap yourself. There seemed to be no progress messages there, but they'd be very useful!

Yes. It sends in real time, but maybe your client is only presenting after initialize finished

Hmm, odd. Probably getting into a bug way more specific than I can easily search for in neovim

That's a shame.

The 4 minute wait is painful while I wait for setup.

Agree, the good news is it should be faster on next startups as it caches

This is the next startup 🙂

It always takes that long

I assume the cache isn't broken... but it could be! the files aren't changing at all between invocations

you can check server logs too see if there is anything wrong

I don't see anything obviously wrong in the log

DEBUG [clojure-lsp.startup:273] - [startup] Using cached classpath this works, for example

I guess it's the clj-kondo analysis which isn't caching? is that stored in .lsp or .clj-kondo? because my .clj-kondo seems to be fast.

if the project source is huge, that's it

clj-kondo is fast when analyzing few files, the whole codebase with analysis it's another history :)

ah. and it can't be cached?

not really

ah, then I guess I'm stuck with the 4m startup time 🙂

yeah, it's rare to have a so long startup IMO

maybe try clojure-lsp diagnostics in your terminal and check if it takes the same

yeah, a 400kloc project is unusual

also make sure you are using a native binary, not sure how you installed

yep, using native binary

yeah, sounds related, vscode had a similar bug in the past

https://github.com/j-hui/fidget.nvim/issues/139 I bet neovim's built-in $/progress handler has the same flaw which was fixed a couple years ago here.