nrepl

eraserhd 2024-03-05T17:33:03.910669Z

Is there a websocket nREPL transport implementation somewhere? I see that Drawbridge has an http/https transport, but AFAICT it has (granted seemingly fixable) polling issues. This is for systems in staging and production and we're tired of making sure that our SREs stop breaking plain TCP port access.

Ivar Refsdal 2024-03-05T19:37:12.815559Z

What webserver are you using? I know that for aleph you can easily "glue" websockets to a regular socket: https://aleph.io/aleph/http.html and then you can use something like https://github.com/vi/websocat for proxying from TCP to WebSocket. (And then you can connect your IDE/Editor to localhost:whatever just like normal, and it will go to the websocket.)

eraserhd 2024-03-05T19:42:03.038419Z

It's using jetty-ring, unfortunately.

Ivar Refsdal 2024-04-09T07:02:30.597739Z

This was on HN recently: https://github.com/jpillora/chisel

Ivar Refsdal 2024-04-09T07:04:27.191829Z

I also wrote https://github.com/ivarref/yasp and https://github.com/ivarref/yasp-client if you are feeling brave... It's not exactly polished, but it works in my experience

Ivar Refsdal 2024-03-06T08:15:27.133589Z

I suppose that manifold could (would?) also work with jetty-ring ... I agree that some example code for this (common?) setup would be helpful though https://github.com/ring-clojure/ring/wiki/WebSockets