Closed andreyorst closed 3 years ago
Awesome, thanks for he PR, I'll have a look at this soon. Happy to see some contributions coming in!
Happy to see some contributions coming in!
Thanks! This package is great! I'm also slowly working on making it do analysis asyncronously, so expect this change in some near future too :)
Although now I'm not usre that I'm familiar enough with anakondo code base. My basic idea was to set-process-sentinel
to gather results into hash map on complete, but I'm not sure how to hook rest of the package to use these results afterwards.
I've been procrastinating the async work haha, which in turn has meant I've not worked on any other features cause I really want to make it async.
Since I've actually taken a pause from my last release, I'm also getting rusty ony my own code. But I did try to make the map the main driver, so everything just looks up in the map and if it has the information it needs it'll use it otherwise it won't. Now if I did this correctly, it does mean that you can just make the updates to the map async and it should all flow. But when I started I wasn't really thinking async, so there might be some quirks here and there I didn't properly plan for.
Also, I should get around to reviewing your PR this weekend. My real work has been busy recently so it's taken me a little longer than I wanted to review your PR.
Also, I should get around to reviewing your PR this weekend. My real work has been busy recently so it's taken me a little longer than I wanted to review your PR.
I'm using this patch day to day and haven't any issues with it so far.
But I did try to make the map the main driver, so everything just looks up in the map and if it has the information it needs it'll use it otherwise it won't. Now if I did this correctly, it does mean that you can just make the updates to the map async and it should all flow. But when I started I wasn't really thinking async, so there might be some quirks here and there I didn't properly plan for.
Yes I saw the map thing, but I don't know if I should trigger update asynchronously and poll it synchronously, or trigger polling the same time I trigger the update, thus making it full async. First option looks easier to code, and there are no visible races that can potentially happen, but I'm not sure if global mutable table is good thing. Well, maybe not global, but it is not buffer local is it?
This should be enough to not depend on
projectile
and alsoclojure-mode
, and useproject
to detect project root, falling back to projectile if it is available. Other semantics should be the same