Skip to content
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

Thoughts on migrating from fusepy to easyfuse #20

Open
JelteF opened this issue Feb 16, 2016 · 2 comments
Open

Thoughts on migrating from fusepy to easyfuse #20

JelteF opened this issue Feb 16, 2016 · 2 comments

Comments

@JelteF
Copy link
Contributor

JelteF commented Feb 16, 2016

Fusepy seems kind of dead, as it has not had any commits in three years, with quite some open issues and pull requests. https://github.com/terencehonles/fusepy
llfuse seems to be the new and maintained FUSE interface. https://pythonhosted.org/llfuse/
However, that is quite low level and requires quite some work for easy use. That is why I have created easyfuse, which is a new library building on top of that with a very simple interface. https://jeltef.github.io/easyfuse/dev/

I would like to check out what would be needed to migrate ytfs from fusepy to easyfuse. Is this something you are interested in as well?

@rasguanabana
Copy link
Owner

I'd be happy to migrate, but in the first place I need to be sure that new interface will be stable, portable and won't limit any features like, for example, xattrs (which might be used in the future and are needed for a filesystem to be working on OSX, as far as I remember). It also would be nice if API was similar to fusepy's, as it feels simple and consistent, and wouldn't take much time to migrate.

Anyway, I'd be happy to test easyfuse with ytfs. I'd like to see how this will work out and give you some help with developing.

@JelteF
Copy link
Contributor Author

JelteF commented Feb 16, 2016

Looking at ytfs.py I think the interface is pretty similar. The big difference is that llfuse uses inodes instead of paths, this makes some stuff quite a bit easier but also a bit less intuitive. But this should be mostly abstracted away by easyfuse.

xattrs are also supported by the llfuse, although there is no default implementation in llfuse at the moment.

The only thing I'm not sure about is the stable API. I think easyfuse should stay pretty stable after I would have ported ytfs, but llfuse still has (small) breaking changes most of the last releases as the maintainer says it is not stable yet. This should be easily fixed by depending on a specific version though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants