From f11b129939c0b66359a928db59c2075922f70151 Mon Sep 17 00:00:00 2001 From: Denis Bezrukov Date: Thu, 2 Feb 2017 12:11:34 +0300 Subject: [PATCH 1/2] Added support for extra data of file entry --- index.js | 4 ++++ test/pack.js | 16 ++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/index.js b/index.js index 81625fca..71027ac9 100644 --- a/index.js +++ b/index.js @@ -135,6 +135,10 @@ ZipStream.prototype.entry = function(source, data, callback) { entry.setUnixMode(data.mode); } + if (data.extra) { + entry.setExtra(data.extra); + } + return ZipArchiveOutputStream.prototype.entry.call(this, entry, source, callback); }; diff --git a/test/pack.js b/test/pack.js index a96fb81b..ee7bad86 100644 --- a/test/pack.js +++ b/test/pack.js @@ -130,6 +130,22 @@ describe('pack', function() { archive.finalize(); }); + it('should support file extra', function(done) { + var archive = new Packer(); + var extra = Buffer.from('Extra data', 'UTF-8'); + + var testStream = new WriteHashStream('tmp/extra.zip'); + + testStream.on('close', function() { + done(); + }); + + archive.pipe(testStream); + + archive.entry(testBuffer, { name: 'buffer.txt', date: testDate, extra: extra}); + archive.finalize(); + }); + it('should STORE files when compression level is zero', function(done) { var archive = new Packer({ forceUTC: true, From 86e62b2028c71471d93079a55de740c2a60ecd9d Mon Sep 17 00:00:00 2001 From: Denis Bezrukov Date: Thu, 2 Feb 2017 12:20:32 +0300 Subject: [PATCH 2/2] Fix old node version support --- test/pack.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/pack.js b/test/pack.js index ee7bad86..0f0eaec5 100644 --- a/test/pack.js +++ b/test/pack.js @@ -132,7 +132,7 @@ describe('pack', function() { it('should support file extra', function(done) { var archive = new Packer(); - var extra = Buffer.from('Extra data', 'UTF-8'); + var extra = new Buffer('Extra data', 'UTF-8'); var testStream = new WriteHashStream('tmp/extra.zip');