dev-tooling

oyakushev 2023-11-04T11:42:20.880499Z

@bozhidar @vemv Hey folks, remember I once brought up if a single-file version of compliment could replace the completion implementation that nrepl currently has? What do you think about this? https://github.com/alexander-yakushev/compliment/tree/master/lite

oyakushev 2023-11-04T11:46:55.022639Z

I managed to bring it down to 564 LOC which is ~2x larger than nrepl.util.completion (251 LOC)

bozhidar 2023-11-04T11:49:34.570739Z

I'd be fine with using it instead of the current implementation. Would be nice to use it in REPLy as well I guess.

bozhidar 2023-11-04T11:51:10.112399Z

Feel free to create a PR that replaces the current completion logic in nREPL.

👍 1
oyakushev 2023-11-04T11:53:59.950869Z

I see that nrepl.util.completion uses two custom nrepl helpers - noisy-future (here https://github.com/nrepl/nrepl/blob/master/src/clojure/nrepl/util/completion.clj#L202) and sanitize-meta (here https://github.com/nrepl/nrepl/blob/master/src/clojure/nrepl/util/completion.clj#L226). Do you remember the intent? Should I try to recreate it too?

bozhidar 2023-11-04T20:51:17.654409Z

noisy-future is just future with some logging. I guess it was added just to simplify debugging. sanitize-meta was added because some vars had metadata that was not bencode friendly, but I don't recall the details.

bozhidar 2023-11-04T20:51:28.451389Z

I guess if the tests pass you'll be more or less good to go.