quentinrossetti/node-7z

View on GitHub
TODO

Summary

Maintainability
Test Coverage
Code quality:
    ✔ Implement `standard` @done(18-11-02 15:53)
    ✔ Code coverage 100 % @done(18-11-02 15:52)
    ✔ Tests file naming and test naming conventions @done(18-09-29 09:28)
    ✔ Windows testing on AppVeyor @done(18-11-13 20:03)
    ✔ https://conventionalcommits.org @done(18-12-03 22:23)
    ✔ Use c8 for coverage @done(22-02-01 23:07)
    ✔ Move to CircleCI because TravisCI is not using p7zip-full v16.x @done(18-10-17 20:35)
    ✔ CircleCi local test with docker (add circleci to system dev deps) @done(18-10-17 20:36)
    - git hooks: standardjs, circleci config validate standard-version
    - Cleanup ESM exports
    - Find an alternative to david-dm
    - https://www.npmjs.com/package/standard#what-you-might-do-if-youre-clever
    - rename master branch to main
    - Keep support for CommonJS and ESM
Package:
    ✔ Update all dependencies @done(18-10-17 20:36)
    ✔ Rewite scripts @done(18-10-17 20:36)
    ✘ Helper script to optionnaly fetch 7zip bins? @cancelled(18-09-09 19:02)
    ✘ 7zip-bin as peer dependecy? @cancelled(18-11-13 20:04) See README.md for installation
    ✔ upload to npm @done(18-12-29 18:26)
Switches:
    ✔ Implement -bt    Show execution time statistics @done(18-12-03 19:51)
    ✔ Implement -slt Show technical information @done(18-12-03 19:55)
    ✔ wildcards and raw outside of `toChildProcessArgs()` @done(18-09-04 21:49)
    ✔ -snc and -ssc @done(18-08-21 22:50)
    ✔ Default to `-y` @done(18-08-21 22:50)
    ✔ Update test cases @started(18-08-21 22:51) @done(18-08-23 12:36) @lasted(1d13h45m3s)
    ✔ Set -bb as default as it is required for the lib to works @done(18-09-11 22:58)
Maintenance:
    ✔ Proper propagation of errors (both sync and async) @done(18-12-03 22:23)
    ✔ Upgrade codebase to ES6 @done(18-09-11 22:58)
    ✔ Spaces in achive name, file name or in switches @done(18-08-23 12:36)
    ✘ Keep a Promise and callback style interface on top (do not recommand using it) @cancelled(18-12-03 22:23)
    ✔ Check all issues from GitHub and test them @done(20-02-15 13:30)
    ✔ fix: dual instance (see test-debug) @done(18-11-13 20:05)
    ✔ Refactor in dependecy injection style @started(18-11-13 20:05) @done(18-12-02 21:37) @lasted(2w5d1h32m17s)
Features:
    ✔ Streams? Buffer or Object mode? @done(18-09-09 18:58)
    ✔ 7z path option @done(18-09-02 19:34)
    ✘ Exit codes @cancelled(18-12-03 22:23)
    ✘ TypeScript support @cancelled(18-12-29 18:26)
    ✘ Babel/ES5 etc support @cancelled(18-12-29 18:26)
    ✔ Close/end SevenZipStream @done(18-12-02 12:31)
    ✔ Full-named switches for cleaner API @done(18-11-04 19:54)
    ✔ Stream methods returns stream @done(18-10-17 20:35)
    ✔ Esier to use progress @done(18-12-02 12:31)
    ✔ Add support for `-slt` Show Technical Infos @started(21-05-19 19:37) @done(21-07-11 19:20) @lasted(7w3d23h43m21s)
Documentation:
    ✔ Status (TU+R. and others?) as plain text @done(18-12-04 22:50)
    ✔ Usage for wildcard/raw/bin input ($ instead of _ preffix) @done(18-12-04 22:50)
    ✔ Usage for repeating switches @done(18-12-04 22:50)
    ✔ Usage for -r (Recurse subdirectories) switch @done(18-12-04 22:50)
    ✔ Struct types and API definition @done(18-12-04 22:50)
    ✔ stream.info usage with Map.get() @done(18-12-04 22:50)
    ✔ on('error') err.stderr usage @done(18-12-04 22:50)
    ✔ -bb switch @done(18-09-11 22:54)
    ✔ $defer @done(18-12-04 22:50)
    ✔ attch a child process $childProcess @done(18-12-04 22:50)
    ✔ add(archive, [source1, source2]) usage @done(18-12-04 22:50)
    ✔ `-bd`    Disable progress indicator is like using a different log level and incompatible with this implementation @done(18-12-04 22:50)
    ✔ No benchmark command: It will output based on the system that it is on, "system-static" @done(18-12-04 22:50)
    ✔ No Show information about supported formats command: It will output based on the system that it is on, "system-static" @done(18-12-04 22:50)
    ✘ Hack to use delete() command (delete is a JS reserved word) @cancelled(18-12-04 22:51)
    ✔ use `$cherryPick` as name for clarity @done(18-12-04 22:51)
    ✔ list and rename doesn't output progress percentage (upstream behaviour) @done(18-12-04 22:51)
    ✔ Only support recent versions of 7z @done(18-12-04 22:51)
    ✘ $legacy support @cancelled(20-02-15 13:30)
    ✘ `--` switch when file name starts with `-` @cancelled(18-12-04 22:51)
    ✘ `-an` (Disable parsing of archive_name) switch @cancelled(18-12-04 22:51)