Import Debian changes 3.0.0-1
node-pump (3.0.0-1) unstable; urgency=low
* New upstream release
Ying-Chun Liu (PaulLiu)
6 years ago
46 | 46 |
|
47 | 47 |
If `source`, `transform`, `anotherTransform` or `dest` closes all of them will be destroyed.
|
48 | 48 |
|
|
49 |
Similarly to `stream.pipe()`, `pump()` returns the last stream passed in, so you can do:
|
|
50 |
|
|
51 |
```
|
|
52 |
return pump(s1, s2) // returns s2
|
|
53 |
```
|
|
54 |
|
|
55 |
If you want to return a stream that combines *both* s1 and s2 to a single stream use
|
|
56 |
[pumpify](https://github.com/mafintosh/pumpify) instead.
|
|
57 |
|
49 | 58 |
## License
|
50 | 59 |
|
51 | 60 |
MIT
|
|
0 |
node-pump (3.0.0-1) unstable; urgency=low
|
|
1 |
|
|
2 |
* New upstream release
|
|
3 |
|
|
4 |
-- Ying-Chun Liu (PaulLiu) <paulliu@debian.org> Fri, 20 Apr 2018 15:30:50 +0800
|
|
5 |
|
0 | 6 |
node-pump (2.0.0-1) unstable; urgency=low
|
1 | 7 |
|
2 | 8 |
* New upstream release
|
0 | 0 |
package.json usr/lib/nodejs/pump/
|
1 | 1 |
.travis.yml usr/lib/nodejs/pump/
|
2 | 2 |
index.js usr/lib/nodejs/pump/
|
3 | |
test.js usr/lib/nodejs/pump/
|
|
3 |
test-node.js usr/lib/nodejs/pump/
|
4 | 4 |
test-browser.js usr/lib/nodejs/pump/
|
5 | 5 |
#.npmignore usr/lib/nodejs/pump/
|
0 | 0 |
Tests: require
|
1 | 1 |
Depends: node-pump
|
2 | 2 |
|
3 | |
Tests: runtest
|
4 | |
Depends: node-pump
|
|
3 |
Tests: run-test-node
|
|
4 |
Depends: @
|
|
5 |
|
|
6 |
Tests: run-test-browser
|
|
7 |
Depends: @
|
|
0 |
#!/bin/sh
|
|
1 |
set -e
|
|
2 |
nodejs test-browser.js
|
|
0 |
#!/bin/sh
|
|
1 |
set -e
|
|
2 |
nodejs /usr/lib/nodejs/pump/test-node.js
|
0 | |
#!/bin/sh
|
1 | |
set -e
|
2 | |
nodejs /usr/lib/nodejs/pump/test.js
|
2 | 2 |
var fs = require('fs') // we only need fs to get the ReadStream and WriteStream prototypes
|
3 | 3 |
|
4 | 4 |
var noop = function () {}
|
|
5 |
var ancient = /^v?\.0/.test(process.version)
|
5 | 6 |
|
6 | 7 |
var isFn = function (fn) {
|
7 | 8 |
return typeof fn === 'function'
|
8 | 9 |
}
|
9 | 10 |
|
10 | 11 |
var isFS = function (stream) {
|
|
12 |
if (!ancient) return false // newer node version do not need to care about fs is a special way
|
11 | 13 |
if (!fs) return false // browser
|
12 | 14 |
return (stream instanceof (fs.ReadStream || noop) || stream instanceof (fs.WriteStream || noop)) && isFn(stream.close)
|
13 | 15 |
}
|
|
73 | 75 |
})
|
74 | 76 |
})
|
75 | 77 |
|
76 | |
streams.reduce(pipe)
|
|
78 |
return streams.reduce(pipe)
|
77 | 79 |
}
|
78 | 80 |
|
79 | 81 |
module.exports = pump
|
0 | 0 |
{
|
1 | 1 |
"name": "pump",
|
2 | |
"version": "2.0.0",
|
|
2 |
"version": "3.0.0",
|
3 | 3 |
"repository": "git://github.com/mafintosh/pump.git",
|
4 | 4 |
"license": "MIT",
|
5 | 5 |
"description": "pipe streams together and close all of them if one of them closes",
|
|
18 | 18 |
"once": "^1.3.1"
|
19 | 19 |
},
|
20 | 20 |
"scripts": {
|
21 | |
"test": "node test.js"
|
|
21 |
"test": "node test-browser.js && node test-node.js"
|
22 | 22 |
}
|
23 | 23 |
}
|
29 | 29 |
var callbackCalled = false
|
30 | 30 |
|
31 | 31 |
var check = function () {
|
32 | |
if (wsClosed && rsClosed && callbackCalled) console.log('done')
|
|
32 |
if (wsClosed && rsClosed && callbackCalled) {
|
|
33 |
console.log('test-browser.js passes')
|
|
34 |
clearTimeout(timeout)
|
|
35 |
}
|
33 | 36 |
}
|
34 | 37 |
|
35 | 38 |
ws.on('finish', function () {
|
|
42 | 45 |
check()
|
43 | 46 |
})
|
44 | 47 |
|
45 | |
pump(rs, toHex(), toHex(), toHex(), ws, function () {
|
|
48 |
var res = pump(rs, toHex(), toHex(), toHex(), ws, function () {
|
46 | 49 |
callbackCalled = true
|
47 | 50 |
check()
|
48 | 51 |
})
|
|
52 |
|
|
53 |
if (res !== ws) {
|
|
54 |
throw new Error('should return last stream')
|
|
55 |
}
|
49 | 56 |
|
50 | 57 |
setTimeout(function () {
|
51 | 58 |
rs.push(null)
|
52 | 59 |
rs.emit('close')
|
53 | 60 |
}, 1000)
|
54 | 61 |
|
55 | |
setTimeout(function () {
|
56 | |
if (!check()) throw new Error('timeout')
|
|
62 |
var timeout = setTimeout(function () {
|
|
63 |
check()
|
|
64 |
throw new Error('timeout')
|
57 | 65 |
}, 5000)
|
|
0 |
var pump = require('./index')
|
|
1 |
|
|
2 |
var rs = require('fs').createReadStream('/dev/random')
|
|
3 |
var ws = require('fs').createWriteStream('/dev/null')
|
|
4 |
|
|
5 |
var toHex = function () {
|
|
6 |
var reverse = new (require('stream').Transform)()
|
|
7 |
|
|
8 |
reverse._transform = function (chunk, enc, callback) {
|
|
9 |
reverse.push(chunk.toString('hex'))
|
|
10 |
callback()
|
|
11 |
}
|
|
12 |
|
|
13 |
return reverse
|
|
14 |
}
|
|
15 |
|
|
16 |
var wsClosed = false
|
|
17 |
var rsClosed = false
|
|
18 |
var callbackCalled = false
|
|
19 |
|
|
20 |
var check = function () {
|
|
21 |
if (wsClosed && rsClosed && callbackCalled) {
|
|
22 |
console.log('test-node.js passes')
|
|
23 |
clearTimeout(timeout)
|
|
24 |
}
|
|
25 |
}
|
|
26 |
|
|
27 |
ws.on('close', function () {
|
|
28 |
wsClosed = true
|
|
29 |
check()
|
|
30 |
})
|
|
31 |
|
|
32 |
rs.on('close', function () {
|
|
33 |
rsClosed = true
|
|
34 |
check()
|
|
35 |
})
|
|
36 |
|
|
37 |
var res = pump(rs, toHex(), toHex(), toHex(), ws, function () {
|
|
38 |
callbackCalled = true
|
|
39 |
check()
|
|
40 |
})
|
|
41 |
|
|
42 |
if (res !== ws) {
|
|
43 |
throw new Error('should return last stream')
|
|
44 |
}
|
|
45 |
|
|
46 |
setTimeout(function () {
|
|
47 |
rs.destroy()
|
|
48 |
}, 1000)
|
|
49 |
|
|
50 |
var timeout = setTimeout(function () {
|
|
51 |
throw new Error('timeout')
|
|
52 |
}, 5000)
|
0 | |
var pump = require('./index')
|
1 | |
|
2 | |
var rs = require('fs').createReadStream('/dev/random')
|
3 | |
var ws = require('fs').createWriteStream('/dev/null')
|
4 | |
|
5 | |
var toHex = function () {
|
6 | |
var reverse = new (require('stream').Transform)()
|
7 | |
|
8 | |
reverse._transform = function (chunk, enc, callback) {
|
9 | |
reverse.push(chunk.toString('hex'))
|
10 | |
callback()
|
11 | |
}
|
12 | |
|
13 | |
return reverse
|
14 | |
}
|
15 | |
|
16 | |
var wsClosed = false
|
17 | |
var rsClosed = false
|
18 | |
var callbackCalled = false
|
19 | |
|
20 | |
var check = function () {
|
21 | |
if (wsClosed && rsClosed && callbackCalled) process.exit(0)
|
22 | |
}
|
23 | |
|
24 | |
ws.on('close', function () {
|
25 | |
wsClosed = true
|
26 | |
check()
|
27 | |
})
|
28 | |
|
29 | |
rs.on('close', function () {
|
30 | |
rsClosed = true
|
31 | |
check()
|
32 | |
})
|
33 | |
|
34 | |
var res = pump(rs, toHex(), toHex(), toHex(), ws, function () {
|
35 | |
callbackCalled = true
|
36 | |
check()
|
37 | |
})
|
38 | |
|
39 | |
if (res) {
|
40 | |
process.exit(1);
|
41 | |
}
|
42 | |
|
43 | |
setTimeout(function () {
|
44 | |
rs.destroy()
|
45 | |
}, 1000)
|
46 | |
|
47 | |
setTimeout(function () {
|
48 | |
throw new Error('timeout')
|
49 | |
}, 5000)
|