side-loading works like a charm.. if anyone is interested, here's the core of the implementation in emacs lisp https://github.com/volrath/unrepl.el/blob/master/unrepl-loop.el#L321-L354
in the gif you can see that the classpath can be dinamically updated, I edit it using ielm (elisp repl) and try again, making it work
I need to figure out if an edn client in vimscript is a good idea or not, and how I can hook up a network interface.
@volrath looking at the commits, you started from scratch (except for parseclj
)
Would you be interested in joining the unrepl org?
@cgrand that's right I started from scratch. and yes, let's put it in the unrepl org.. what do I have to do?
I invited you to be a member of the org. In your project settings in the « danger zone » there’s « transfer ownership ».
perfect
This week I’ll update unrepl and specifically the blob building task to ease custom blob generation.
@volrath thanks for the transfer, welcome aboard!
@volrath did you have looked at unravel code for some unrepl features?
I based the side-loader implementation on your work on unravel
For custom blob generation, does it mean, given projects -> chain namespaces in a blob? If yes I have that already somewhere :)
I might have time next week to put it somewhere, it is using boot and a custom boot tasks for fetching deps...and squeeze them together after toposorting
No it’s not that. No overlap.
Just completeness, I finally put the work or a while ago in a gist: https://gist.github.com/arichiardi/b718d51e735b4d8d046440a031fc86c0
Do you perform renaming?
To summarize the current situation: the sideloader enables lazy loading of namespaces and thus allows to keep the blob small. So blob generation is not a priority — except if you have a target where sideloading is not possible.
What I’m going to push this week is blob customization not generation.
That’s why I tongue-in-cheekly said blobs were so yesterday.
Monolithic blobs are not on the common path anymore – if the sideloading approach works well in practice.
So my plan is: 1/ introduce blob customization 2/ use it for unravel completion-as-an-extension
Plus now thanks to @volrath we have two clients that supports sideloading.
@richiardiandrea what’s your opinion?
@cgrand I like the sideloading idea better, yeah, it feels less error prone, I still need to read a bit more about what goes into the wire but yeah, my task is basically obsoleted by that
I saw @volrath nice demo and I noticed that he is using the full path to the jar for now, but of course a simple transformation from edn coordinate to .m2 path is totally doable. Editors/clients could use the new clj
tool for resolution instead of my task so that's all way better compared to the blob concatenation approach