react-explorer
react-explorer copied to clipboard
FsZip: checklist
Checklist to have a MVP of a (readonly) zip plugin:
- [x] correctly handle goto parent when at the root of the zip (should change FS)
- [x] correctly handle directories inside a zip file when typing a path, eg.
/tmp/archive.zip/foo/ - [x] correctly handle directories inside a zip file when double-clicking on a directory inside an opened archive
- [x] need to allow browsing a zip by double-clicking it
- [x] need to add readonly + checks on Fs so that read+delete+paste+rename operations are disabled
- [x] Error handling: archive.zip/foo-does-not-exist
- [x] Error handling: archive.zip/foo-exist-but-is-a-file
- [x] close zip file when closing cache or browsing out of zip
- [x] need to handle opening a file from zip (by extracting the file in /tmp)
- [x] fix: archive.zip/foo/bar/ appears empty
- [x] Error: opening an invalid zip will keep FsZip ref, so opening a valid zip will fail since it will attempt to open previous file
- [x] Error handling: bad archive
- [x] Error handling: no read access to archive
- [x] need to handle copying files from zip
- [x] need to handle copying folders from zip
- [x] open in terminal should do nothing if
fs.options.indirectis true - [x] should not attempt to open zip file if foo.zip is a directory
- [x] should disable some context menu entries when readonly is true
- [ ] check that everything relying on directory separator works as expected on Windows
- [ ] error message is correct when attempting to enter a path to a non-supported file, see #409
- [ ] should show an error message when attempting to open a password protected zip (not sure the zip library supports it)
- [ ] /foo/archive.zip is a directory
- [ ] /foo/archive.zip/bar/archive2.zip: should openFile
- [ ] /foo/archive.zip/bar/archive2.zip is a directory (should browse it)
Experiment with archive-files: it seems to support a wide range of archives and has stream support.
- [ ] list entries (per dir or all entries?)
- [ ] test stream