Fork me on GitHub

clojure-lsp Released 2022.05.23-13.18.11 focusing on improving existing features and fixing some bugs The most notable changes are: Fix Java global cache, java navigation was only working on first time and not after cached. Huge performance improvement on semantic tokens for big files, this should considerably reduce flickering We now have completion of function arguments checking available :keys on function definition:rocket: Improve performance of clean-ns/format on API/CLI. For more details, check #lsp

gratitude 6
clj-kondo 5
clojure-spin 12
emacs 7
calva 8
clojure-lsp 13
❤️ 18
🎉 11
vim 3

After being down for awhile, I’ve rebuilt and ran all of the expressions through SCI and made them searchable once again. Note: The expressions that were run date from 2009 to early 2017 so you won’t find parse-long in this data, for example. If anyone has any ideas on collecting more (recent) examples to run through, thoughts on what should be eliminated from the results, tweaks to ranking, etc. I’m all ears.

🎉 9
👏 2

I have some ideas about gathering examples! Basically any clojure project can be a source for example usages. For my idea, I would break finding examples into 3 steps 1. Generate list of clojure projects 2. Create an automatic or semi-automatic way run parts of projects 3. Extract examples from the clojure you ran 1. Finding projects This is the easiest step. You can get jars from and github projects from 2. Run parts of projects This is a little tougher. a) One place to start is to just run tests. Many projects have a semi-standard way to run tests. This part might require some manual steps to run the tests. b) A second option is just look for functions that have specs. I have some other ideas here, but I think running test suites and spec'd functions might give the biggest bang for your buck 3. Extract examples from running clojure code Running the code should call the clojure functions you're interested in with actual values. The values that were used to call the function and the return values can be obtained by instrumenting the functions you care about.