-
-
Notifications
You must be signed in to change notification settings - Fork 645
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement HTTP transport #39
Comments
I'd be interested in implementing this at some point. |
Don't think this is going to happen any time soon, so I'll close this ticket. Feel free to reopen it if you ever get to implementing it. |
I'm also very interested in this |
@martinraison PRs welcome. :-) I'd love to see this supported in CIDER, but it's really low on our list of priorities. |
I doubt I can find time to do that at the moment, but if I ever get to it I'll let you know. An intermediary solution I was thinking of was to setup a nrepl server that proxies all my requests through http. Far less elegant but that could do the trick for my needs. |
Still no hope on this one? |
Actually cannot drawbridge be configured in cider? |
The problem is not the server. The problem is that you have to add support to CIDER for http communication. Basically all code using bencode directly should be touched by such a change and that's why no one has been very eager to work on this. |
@jconti if you want to hack around on it, there's basically a single function that is where it bencodes the info and sends it off:
if you added http calls there you are half way there instead of the process send string. On the other side, you'd need a new filter that just watches for incoming info and then hooks that info up against the pending requests in a dictionary. I think this return side will be much more difficult. Also, since we no longer have a process in the buffer, you'll need to check if the http requests are still going, etc. |
Well, that's actually going to be pretty simple given the fact he'll just have an http connection. At least for non-streaming responses. At least there are a ton of http libraries, so all of the communication plumbing will come for free. |
I think I will give this a try. Recently I found this little project which looks like it approaches the problem from a different perspective: https://github.com/malyn/lein-catapult |
@jconti Did you have any luck with that? I have tried today -- I created a fork of For simplicity here is my
Here is one pointing to my fork:
In either case, I'm able to run
CIDER shows that it is still trying to connect. I get this in the cider-repl buffer:
... but I don't get a prompt. Maybe it is close to working though, given that it got that far? Maybe it's just very slow? I noticed that I can type things into the cider-repl buffer, and when I hit RET they get sent across to the Catapult. E.g., sending
My app prints out this error + stack trace:
After waiting a while longer, I see this printed out on the command line:
Followed by a big list with all of the dependencies in the app! (Abbreviated here.)
But after that I waited a couple hours and saw nothing further. The Lein Catapult README says:
|
nREPL uses bencode by default but can also be made to work over other protocols like HTTP: https://github.com/cemerick/drawbridge/
The text was updated successfully, but these errors were encountered: