Skip to content

Latest commit

 

History

History
74 lines (73 loc) · 4.03 KB

File metadata and controls

74 lines (73 loc) · 4.03 KB

Improvement Ideas

  • Automatically create the mount point if it does not already exist.
  • Automatically remove the mount point if it has been created by fuse-archive in the first place.
  • Handle special files (sockets, FIFOs or pipes, character and block devices).
  • Add a -o nospecials option.
  • Handle symlinks.
  • Add a -o nosymlinks option.
  • Handle empty directories (#17).
  • Improve the computation of the access bits of each inode.
  • Gracefully handle file name collisions by deduplicating the colliding names.
  • Add a convenient logging system.
  • Add a --verbose option.
  • Keep track of the number of links to each inode.
  • Keep track of the number of blocks used by each inode.
  • Implement the statfs function.
  • Print versions of linked libraries when using the --version option.
  • Add a cache system holding the full extracted data.
  • Add a -o nocache option.
  • Remove unused options.
  • Automatically request a decryption password when dealing with an encrypted archive.
  • Add comprehensive tests.
  • Document the version numbering system.
  • Create a man page.
  • Modify the Makefile so that make doc refreshes the man page.
  • Modify the Makefile so that make install also installs the man page (#24).
  • Add a -o fmask option.
  • Add a -o dmask option.
  • Honor the original UID and GID when using the -o default_permissions option.
  • Modify the Makefile so that make check runs the new tests in test/test.py.
  • Handle hardlinks (#18).
  • Add tests for hardlinks.
  • Add tests for big files.
  • Document the -o nocache option.
  • Document the -o nosymlink option.
  • Document the -o nospecials option.
  • Document the returned error values.
  • Document the -o dmask=M option.
  • Document the -o fmask=M option.
  • Document the -o uid=N option.
  • Document the -o gid=N option.
  • Document the -o default_permissions option.
  • Add a -o force option.
  • Add tests for the lzma compression method.
  • Add tests for the xz compression method.
  • Add tests for the zstd compression method.
  • Add tests for the Z compression method.
  • Add a -o nohardlink option.
  • Optimize the tree structure in order to avoid storing all the full paths in memory.
  • Optimize the Reader struct in order to reuse the existing archive file descriptor instead of opening a new one every time.
  • Check the archive file type to avoid reading from a pipe or a directory.
  • Document the cache system.
  • Optimize the Reader recycling system.
  • Use a Reader when building the tree.
  • Add a rolling buffer of uncompressed data to each Reader.
  • Handle extended attributes.
  • Add a -o noxattrs option.
  • Better handle long paths with many levels of directories (#56).
  • Add a test archive featuring deep paths.
  • Add a -o nodirs option.
  • Add a test archive containing many directories.
  • Honor SGID, SUID and SVTX bits with -o default_permissions (#57).
  • Add the ability to mount several archives in the same mount point.
  • Add a -o nomerge option to mount several archives next to each other in the same mount point.
  • Automatically trim the top of the tree.
  • Add a -o notrim option to prevent trimming the tree.
  • Add the ability to cache filtered ZIP and 7Z archives.
  • Add the ability to handle several filters for each archive.
  • Add test for mounting several archives in the same mount point.
  • Add test for SGID, SUID and SVTX bits with -o default_permissions.
  • Detect "holes" in sparse files (#41).
  • Add a -o nosparse or -o noholes option.
  • Add tests for sparse files.
  • Add a -o memcache option.