On Wed, 2017-05-24 at 11:46 +0530, K K Subbu wrote:
On Tuesday 23 May 2017 08:37 PM, Jan Vrany wrote:
Hi,
Is it possible to build a file responder right into Pharo and expose packages through WebDAV or FUSE or sshfs service? Then the contents can go directly from RAM (pharo) to RAM (repo server or git) without going through slow disk filesystem.
Yes it's possible and really interesting for lots of reasons.  Not sure why no one is exploring this avenue.
I did explored this path with FUSE ages age (~10 yeas, IIRC) and, if my memory is not failing me, was possible but turned out to be useless in practice. The problem was that the call to fuse entered a kernel and sit there until there was a FS request at which point it called back my smalltalk. This means smalltalk was unresponsive most of the time. Besides, one needed superuser priviledges and all that stuff. Things may be different these days.
Yes, FUSE has evolved. Here is a recent paper on it:
It did, indeed. Thanks! I had a wee look at the newest source and it looks one would still have to implement fuse event loop [1] herself. It seems that functions needed are not part of public fuse API so one may need to enter a thin ice of using internal API which may not be visible from outside. Still, seems doable. Jan [1]: https://github.com/libfuse/libfuse/blob/master/lib/fuse_loop.c#L19