libfuse / python-fuse

Python 2.x/3.x bindings for libfuse 2.x
GNU Lesser General Public License v2.1
279 stars 73 forks source link

use bytes objects for read and write data #17

Closed dlech closed 5 years ago

dlech commented 5 years ago

This changes the data type for the buffer of the read and write syscalls from string to bytes. On Python 2, this has no effect. On Python 3, it is a breaking change, but fixes a serious usability bug that limits file data to valid UTF-8 data. With these changes, files can contain arbitrary data.

Fixes #13

rpodgorny commented 5 years ago

i've been hit by this as well - merging this asap would make me super happy... ;-) thanks!

rpodgorny commented 5 years ago

...any reason why this is not merged? i can confirm this patch works for me.

dlech commented 5 years ago

@sdelafond, is this library still being maintained?

sdelafond commented 5 years ago

Thanks.

sdelafond commented 5 years ago

Sorry for the (huge) lack, my notifications were not properly setup for this repository; highlighting did the trick. Thanks a lot for your contribution.

dlech commented 5 years ago

No worries. Thanks for merging. :smile:

amimoto commented 5 years ago

Is there a chance that the pypi packages for fuse-python be might updated as well?

sdelafond commented 5 years ago

Yes, I want to do that, but given that's it's a conflicting change I'm a little undecided on how ti should be versioned. Leaning toward 1.0.0 at this point. Thoughts ?

dlech commented 5 years ago

1.0.0 sounds good to me :+1:

amimoto commented 5 years ago

1.0.0 sounds good to me too 👍.

Doesn't affect me, however, would the versioning have an impact on the python-fuse package uploaded to Ubuntu? (I don't see a python3-fuse package)

sdelafond commented 5 years ago

I maintain python-fuse in Debian, so yes, after 1.0.0 is released on pypi that same version will be packaged and uploaded to sid (which already does have python3-fuse 0.3.1-1).