Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add extractBuffer() function #122

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

ckerr
Copy link

@ckerr ckerr commented Mar 30, 2021

Add an extractBuffer() function so that extract-zip can be used on zipfile content that is in a read buffer instead of stored in a file.

To preserve extract-zip's existing export signature, extractBuffer is a new property on the existing exported function.

Closes #108

Previously the code listened for `close`. This was changed to `end` in
the previous commit since an input buffer may not have an fd to close.

We do not need to test for cancelation in the new `end` handler because
as per the yazul docs "After [the `error` event] has been emitted, no
further `entry`, `end`, or `error` events will be emitted."
@ckerr
Copy link
Author

ckerr commented Mar 30, 2021

Not sure why codecov didn't comment on this PR, but FWIW:

$ yarn coverage
yarn run v1.22.10
$ nyc --reporter=lcov --reporter=text ava

  14 tests passed
----------|---------|----------|---------|---------|-------------------
File      | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s 
----------|---------|----------|---------|---------|-------------------
All files |     100 |      100 |     100 |     100 |                   
 index.js |     100 |      100 |     100 |     100 |                   
----------|---------|----------|---------|---------|-------------------
Done in 1.51s.

Basically there aren't very many different logic branches. Other than opening the yauzl.ZipFile and checking for the 'done' signal, the rest of the codepaths are the same as before.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant