-Fuse version 0.03
-=================
+Fuse perl bindings
+==================
-This is a test release. It seems to work quite well. In fact, I can't
-find any problems with it whatsoever. If you do, I want to know.
+Fuse is combination of Linux kernel module and user space library which
+enables you to write user-space filesystems. This module enables you to
+write filesystems using perl.
+Additional file-systems using Fuse module are released on CPAN using Fuse::
+namespace. Currently that includes only Fuse::DBI which allows you to mount
+database as file system, but there will be more.
+
+This is a pre-production release. It seems to work quite well. In fact, I
+can't find any problems with it whatsoever. If you do, I want to know.
+
+Support for FreeBSD is experimental, so expect tests to fail.
INSTALLATION
DEPENDENCIES
-This module requires the FUSE userspace library and the FUSE kernel module.
+This module requires the FUSE C library and the FUSE kernel module.
+See http://fuse.sourceforge.net/
+
+If you intend to use FUSE in threaded mode, you need a version of Perl which
+has been compiled with USE_ITHREADS. Then, you need to use threads and
+threads::shared.
COPYRIGHT AND LICENCE
BUGS
-I've begun to build a formal testing framework. Currently it can mount
-and unmount loopback.pl, and all of the base-level functions have test
-scripts. These need to be fleshed out as problems are noticed.
+At time of writing, Perl (5.8.7) did not support shared subroutine references.
+Symptoms include a cryptic error message like "Invalid value for shared scalar"
+from Fuse.pm. Until this is fixed, if you use threaded mode, you need to use
+symbolic references (i.e. passing "main::cb" instead of \&cb). This doesn't
+allow things like closures, lexical subs and that sort of thing, but it does
+work for me.
The current test framework seems to work well, but the underlying mount/
unmount infrastructure is a crock. I am not pleased with that code.
* need to sort out cleaner mount semantics for the test framework
* figure out how to un-linuxcentrify the statfs tests
* test everything on other architectures and OS's
-