This commit is contained in:
eric sciple 2020-01-24 12:22:34 -05:00
parent 9fff29ba6c
commit 00c3b50fca
7278 changed files with 0 additions and 1778943 deletions

13
node_modules/pn/.travis.yml generated vendored
View file

@ -1,13 +0,0 @@
language: node_js
node_js:
- "9.3.0"
- "8.9.4"
- "7.10.1"
- "6.12.3"
- "5.12.0"
- "4.8.7"
- "3.3.1"
- "2.5.0"
- "0.12"
- "0.11"
- "0.10"

148
node_modules/pn/README.md generated vendored
View file

@ -1,148 +0,0 @@
# pn
[![NPM][NPM1]][NPM2]
[![Build Status][1]][2]
The `pn` library gives you the Promise-using node standard library
you've always dreamed of. Think "Promised Node" when saying it.
Just about every node standard library method that takes a callback will now
return a `Promise` iff no callback is supplied. But existing code
that passes callbacks will still work fine --- and fast: No unnecessary
`Promise`s are created if you supply a callback.
The wrappers are generated automatically by a script, with a table to
handle exceptions and odd cases. See below for more details.
## Installation
```
npm install pn
```
## Usage
```
var fs = require('pn/fs');
fs.writeFile('foo', 'bar', 'utf-8').then(function() { console.log('done'); });
// But you can use callbacks, too -- existing code won't break.
fs.writeFile('foo', 'bat', 'utf-8', function(err) { console.log('yay'); });
```
This library uses node native promises (ie `global.Promise`) by
default, and thus works with node >= 0.11.
You can use [`core-js`](https://www.npmjs.org/package/core-js) or
[`es6-shim`](https://www.npmjs.org/package/es6-shim)
to add ES6 Promises to earlier versions of node, for example:
```
require('es6-shim');
var fs = require('pn/fs');
```
Just be sure that `es6-shim` is loaded before the `pn` package in that
case.
You might also want to look into packages like
[`prfun`](https://www.npmjs.org/package/prfun)
which add some helpers to make working with native promises much more
fun.
In particular, the `Promise#done` method is very useful when
debugging, at least until v8's native Promise debugging
capabilities are completed.
## Custom Promise types
You can also specify a custom `Promise` type to use, as follows:
```
var MyPromise = require('prfun'); // Use prfun's Promises, for example.
require('pn/_promise')(MyPromise); // This only needs to be done once.
```
## Exceptions and odd cases
The wrappers are automatically generated by `scripts/generate.js`;
there is a table in that file which specifies all the odd cases.
In general: if the node API has a callback which takes multiple
value arguments, the `Promise` returned will be an object with
named fields corresponding to the different values. If the node
API takes a callback *and* returns a value, `pn` will return
the original value with a nonenumerable field named `promise`
corresponding to the callback. Combining these two cases:
```
var child_process = require('pn/child_process');
var cp = child_process.execFile('true');
console.log('pid', cp.pid);
cp.promise.then(function(result) {
console.log('stdout: ', result.stdout);
console.log('stderr: ', result.stderr);
});
```
* `child_process`: The `exec` and `execFile` methods promise a object
with fields named `stdout` and `stderr`. They return a `ChildProcess`
object with a nonenumerable field named `promise` corresponding to the
callback.
* `crypto`: The `randomBytes` and `pseudoRandomBytes` methods are
now always asynchronous, returning a `Promise` if no callback
is supplied. Use the new `randomBytesSync` and `pseudoRandomBytesSync`
methods if you want synchronous computation. *This is backwards
incompatible with existing node code.*
* `dns`: The `lookupService` method promises an object with
fields named `hostname` and `service`.
* `fs`: The `exists` method doesn't pass an error to its callback.
The promisied version will never reject. The `write` method promises
an object with fields named `written` and `data`. The `read` method
promises an object with fields named `read` and `data`.
* `http`, `https`: The `request` and `get` methods return a `ClientRequest`
object with a nonenumerable field named `promise`, which will
resolve to an `IncomingMessage` object.
* `process`: You can defer computation to the next tick with
`require('pn/process').nextTick().then(function(){...})`
* `tls`: The `connect` and `createServer` return objects with a
nonenumerable field named `promise`.
There are a few object methods which are not promisified by this
package:
* `domain`: `Domain#bind`, `Domain#intercept`
* `http`,`https`: `ClientRequest#setTimeout`, `IncomingMessage#setTimeout`,
`Server#setTimeout`, `ServerResponse#setTimeout`, `Server#listen`,
`Server#close`
* `net`: `Server#listen`, `Server#close`, `Server#getConnections`,
`Socket#write`, `Socket#setTimeout`
* `readline`: `Interface#question`
* `stream`: `Writable#write`, `Writable#end`
* `dgram`: `Socket#send`, `Socket#bind`.
## Related packages
Here are some other packages with similar aims:
* [`promised-node`](https://www.npmjs.org/package/promised-node)
* [`then-fs`](https://www.npmjs.org/package/then-fs)
* [`final-fs`](https://www.npmjs.org/package/final-fs)
## License
Copyright (c) 2014-2018 C. Scott Ananian
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
[NPM1]: https://nodei.co/npm/pn.png
[NPM2]: https://nodei.co/npm/pn/
[1]: https://travis-ci.org/cscott/node-pn.svg
[2]: https://travis-ci.org/cscott/node-pn

6
node_modules/pn/_promise.js generated vendored
View file

@ -1,6 +0,0 @@
// Allow the user to customize the Promise type returned by this library.
var mypromise = global.Promise;
module.exports = function getOrSetPromise(p) {
if (p) { mypromise = p; }
return mypromise;
};

58
node_modules/pn/_promisify.js generated vendored
View file

@ -1,58 +0,0 @@
// freeze Array#slice, just in case of funny business later.
var _slice = Array.prototype.slice;
var getPromise = require('./_promise.js');
// deferred gets its own scope to prevent inadvertent capture in the closure
var deferred = function(options) {
var Promise = getPromise();
var resolve, reject, p = new Promise(function(_resolve, _reject) {
resolve = _resolve; reject = _reject;
});
var pattern = (options && options.pattern);
var noError = (options && options.noError);
var cb = pattern ? function(err) {
if (err && !noError) { return reject(err); }
var result = {}, i, offset = noError ? 0 : 1;
for (i = 0; i < pattern.length; i++) {
result[pattern[i]] = arguments[i+offset];
}
resolve(result);
} : noError ? resolve : function(err, val) {
if (err) { reject(err); } else { resolve(val); }
};
return { promise: p, callback: cb };
};
var promisify = module.exports = function(context, func, mandatoryArgs, options) {
if (options && options.callbackIsFirstArg) {
// duplicate some code here so we don't have to process this unusual
// situation at runtime in the common case.
return function(cb) {
if (typeof(cb) === 'function') {
return func.apply(context, arguments);
}
var d = deferred(options);
var a = _slice.call(arguments, 0);
a.unshift(d.callback);
func.apply(context, a);
return d.promise;
};
}
return function() {
var cb = arguments[arguments.length - 1];
if (typeof(cb) === 'function') {
return func.apply(context, arguments);
}
// ooh, promises.
var d = deferred(options);
var a = _slice.call(arguments, 0);
while (a.length < mandatoryArgs) { a.push(undefined); }
a.push(d.callback);
var retval = func.apply(context, a);
if (options && options.returnsObject) {
// it would be nice to have a better convention here
Object.defineProperty(retval, 'promise', { value: d.promise });
return retval;
}
return d.promise;
};
};

2
node_modules/pn/assert.js generated vendored
View file

@ -1,2 +0,0 @@
var assert = require("assert");
module.exports = assert;

3
node_modules/pn/async_hooks.js generated vendored
View file

@ -1,3 +0,0 @@
var async_hooks = {};
try { async_hooks = require("async_hooks"); } catch (e) { }
module.exports = async_hooks;

2
node_modules/pn/buffer.js generated vendored
View file

@ -1,2 +0,0 @@
var buffer = require("buffer");
module.exports = buffer;

14
node_modules/pn/child_process.js generated vendored
View file

@ -1,14 +0,0 @@
var child_process = require("child_process");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
ChildProcess: { enumerable: true, value: child_process.ChildProcess },
//_forkChild: // skipping
exec: { enumerable: true, value: promisify(child_process, child_process.exec, 1, {"pattern":["stdout","stderr"],"returnsObject":true}) },
execFile: { enumerable: true, value: promisify(child_process, child_process.execFile, 1, {"pattern":["stdout","stderr"],"returnsObject":true}) },
execFileSync: { enumerable: true, value: bind(child_process, child_process.execFileSync) },
execSync: { enumerable: true, value: bind(child_process, child_process.execSync) },
fork: { enumerable: true, value: bind(child_process, child_process.fork) },
spawn: { enumerable: true, value: bind(child_process, child_process.spawn) },
spawnSync: { enumerable: true, value: bind(child_process, child_process.spawnSync) },
});

20
node_modules/pn/cluster.js generated vendored
View file

@ -1,20 +0,0 @@
var cluster = require("cluster");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
SCHED_NONE: { enumerable: true, value: cluster.SCHED_NONE },
SCHED_RR: { enumerable: true, value: cluster.SCHED_RR },
Worker: { enumerable: true, value: cluster.Worker },
//_events: // skipping
//_eventsCount: // skipping
//_maxListeners: // skipping
disconnect: { enumerable: true, value: promisify(cluster, cluster.disconnect, 0) },
domain: { enumerable: true, get: function() { return cluster.domain; }, set: function(v) { cluster.domain = v; } },
fork: { enumerable: true, value: bind(cluster, cluster.fork) },
isMaster: { enumerable: true, get: function() { return cluster.isMaster; }, set: function(v) { cluster.isMaster = v; } },
isWorker: { enumerable: true, get: function() { return cluster.isWorker; }, set: function(v) { cluster.isWorker = v; } },
schedulingPolicy: { enumerable: true, get: function() { return cluster.schedulingPolicy; }, set: function(v) { cluster.schedulingPolicy = v; } },
settings: { enumerable: true, get: function() { return cluster.settings; }, set: function(v) { cluster.settings = v; } },
setupMaster: { enumerable: true, value: bind(cluster, cluster.setupMaster) },
workers: { enumerable: true, get: function() { return cluster.workers; }, set: function(v) { cluster.workers = v; } },
});

2
node_modules/pn/console.js generated vendored
View file

@ -1,2 +0,0 @@
var console = require("console");
module.exports = console;

53
node_modules/pn/crypto.js generated vendored
View file

@ -1,53 +0,0 @@
var crypto = require("crypto");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
Certificate: { enumerable: true, value: crypto.Certificate },
Cipher: { enumerable: true, value: crypto.Cipher },
Cipheriv: { enumerable: true, value: crypto.Cipheriv },
Credentials: { enumerable: true, value: crypto.Credentials },
DEFAULT_ENCODING: { enumerable: true, get: function() { return crypto.DEFAULT_ENCODING; }, set: function(v) { crypto.DEFAULT_ENCODING = v; } },
Decipher: { enumerable: true, value: crypto.Decipher },
Decipheriv: { enumerable: true, value: crypto.Decipheriv },
DiffieHellman: { enumerable: true, value: crypto.DiffieHellman },
DiffieHellmanGroup: { enumerable: true, value: crypto.DiffieHellmanGroup },
ECDH: { enumerable: true, value: crypto.ECDH },
Hash: { enumerable: true, value: crypto.Hash },
Hmac: { enumerable: true, value: crypto.Hmac },
Sign: { enumerable: true, value: crypto.Sign },
Verify: { enumerable: true, value: crypto.Verify },
//_toBuf: // skipping
constants: { enumerable: true, get: function() { return crypto.constants; }, set: function(v) { crypto.constants = v; } },
createCipher: { enumerable: true, value: bind(crypto, crypto.createCipher) },
createCipheriv: { enumerable: true, value: bind(crypto, crypto.createCipheriv) },
createCredentials: { enumerable: true, value: bind(crypto, crypto.createCredentials) },
createDecipher: { enumerable: true, value: bind(crypto, crypto.createDecipher) },
createDecipheriv: { enumerable: true, value: bind(crypto, crypto.createDecipheriv) },
createDiffieHellman: { enumerable: true, value: bind(crypto, crypto.createDiffieHellman) },
createDiffieHellmanGroup: { enumerable: true, value: bind(crypto, crypto.createDiffieHellmanGroup) },
createECDH: { enumerable: true, value: bind(crypto, crypto.createECDH) },
createHash: { enumerable: true, value: bind(crypto, crypto.createHash) },
createHmac: { enumerable: true, value: bind(crypto, crypto.createHmac) },
createSign: { enumerable: true, value: bind(crypto, crypto.createSign) },
createVerify: { enumerable: true, value: bind(crypto, crypto.createVerify) },
getCiphers: { enumerable: true, value: bind(crypto, crypto.getCiphers) },
getCurves: { enumerable: true, value: bind(crypto, crypto.getCurves) },
getDiffieHellman: { enumerable: true, value: bind(crypto, crypto.getDiffieHellman) },
getHashes: { enumerable: true, value: bind(crypto, crypto.getHashes) },
pbkdf2: { enumerable: true, value: promisify(crypto, crypto.pbkdf2, 5) },
pbkdf2Sync: { enumerable: true, value: bind(crypto, crypto.pbkdf2Sync) },
privateDecrypt: { enumerable: true, value: bind(crypto, crypto.privateDecrypt) },
privateEncrypt: { enumerable: true, value: bind(crypto, crypto.privateEncrypt) },
prng: { enumerable: true, value: bind(crypto, crypto.prng) },
pseudoRandomBytes: { enumerable: true, value: promisify(crypto, crypto.pseudoRandomBytes, 1) },
pseudoRandomBytesSync: { enumerable: true, value: crypto.pseudoRandomBytes.bind(crypto) },
publicDecrypt: { enumerable: true, value: bind(crypto, crypto.publicDecrypt) },
publicEncrypt: { enumerable: true, value: bind(crypto, crypto.publicEncrypt) },
randomBytes: { enumerable: true, value: promisify(crypto, crypto.randomBytes, 1) },
randomBytesSync: { enumerable: true, value: crypto.randomBytes.bind(crypto) },
randomFill: { enumerable: true, value: promisify(crypto, crypto.randomFill, 1) },
randomFillSync: { enumerable: true, value: bind(crypto, crypto.randomFillSync) },
rng: { enumerable: true, value: bind(crypto, crypto.rng) },
setEngine: { enumerable: true, value: bind(crypto, crypto.setEngine) },
timingSafeEqual: { enumerable: true, value: bind(crypto, crypto.timingSafeEqual) },
});

8
node_modules/pn/dgram.js generated vendored
View file

@ -1,8 +0,0 @@
var dgram = require("dgram");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
Socket: { enumerable: true, value: dgram.Socket },
//_createSocketHandle: // skipping
createSocket: { enumerable: true, value: bind(dgram, dgram.createSocket) },
});

49
node_modules/pn/dns.js generated vendored
View file

@ -1,49 +0,0 @@
var dns = require("dns");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
ADDRCONFIG: { enumerable: true, value: dns.ADDRCONFIG },
ADDRGETNETWORKPARAMS: { enumerable: true, value: dns.ADDRGETNETWORKPARAMS },
BADFAMILY: { enumerable: true, value: dns.BADFAMILY },
BADFLAGS: { enumerable: true, value: dns.BADFLAGS },
BADHINTS: { enumerable: true, value: dns.BADHINTS },
BADNAME: { enumerable: true, value: dns.BADNAME },
BADQUERY: { enumerable: true, value: dns.BADQUERY },
BADRESP: { enumerable: true, value: dns.BADRESP },
BADSTR: { enumerable: true, value: dns.BADSTR },
CANCELLED: { enumerable: true, value: dns.CANCELLED },
CONNREFUSED: { enumerable: true, value: dns.CONNREFUSED },
DESTRUCTION: { enumerable: true, value: dns.DESTRUCTION },
EOF: { enumerable: true, value: dns.EOF },
FILE: { enumerable: true, value: dns.FILE },
FORMERR: { enumerable: true, value: dns.FORMERR },
LOADIPHLPAPI: { enumerable: true, value: dns.LOADIPHLPAPI },
NODATA: { enumerable: true, value: dns.NODATA },
NOMEM: { enumerable: true, value: dns.NOMEM },
NONAME: { enumerable: true, value: dns.NONAME },
NOTFOUND: { enumerable: true, value: dns.NOTFOUND },
NOTIMP: { enumerable: true, value: dns.NOTIMP },
NOTINITIALIZED: { enumerable: true, value: dns.NOTINITIALIZED },
REFUSED: { enumerable: true, value: dns.REFUSED },
Resolver: { enumerable: true, value: dns.Resolver },
SERVFAIL: { enumerable: true, value: dns.SERVFAIL },
TIMEOUT: { enumerable: true, value: dns.TIMEOUT },
V4MAPPED: { enumerable: true, value: dns.V4MAPPED },
getServers: { enumerable: true, value: bind(dns, dns.getServers) },
lookup: { enumerable: true, value: promisify(dns, dns.lookup, 1) },
lookupService: { enumerable: true, value: promisify(dns, dns.lookupService, 2, {"pattern":["hostname","service"]}) },
resolve: { enumerable: true, value: promisify(dns, dns.resolve, 1) },
resolve4: { enumerable: true, value: promisify(dns, dns.resolve4, 1) },
resolve6: { enumerable: true, value: promisify(dns, dns.resolve6, 1) },
resolveAny: { enumerable: true, value: promisify(dns, dns.resolveAny, 1) },
resolveCname: { enumerable: true, value: promisify(dns, dns.resolveCname, 1) },
resolveMx: { enumerable: true, value: promisify(dns, dns.resolveMx, 1) },
resolveNaptr: { enumerable: true, value: promisify(dns, dns.resolveNaptr, 1) },
resolveNs: { enumerable: true, value: promisify(dns, dns.resolveNs, 1) },
resolvePtr: { enumerable: true, value: promisify(dns, dns.resolvePtr, 1) },
resolveSoa: { enumerable: true, value: promisify(dns, dns.resolveSoa, 1) },
resolveSrv: { enumerable: true, value: promisify(dns, dns.resolveSrv, 1) },
resolveTxt: { enumerable: true, value: promisify(dns, dns.resolveTxt, 1) },
reverse: { enumerable: true, value: promisify(dns, dns.reverse, 1) },
setServers: { enumerable: true, value: bind(dns, dns.setServers) },
});

10
node_modules/pn/domain.js generated vendored
View file

@ -1,10 +0,0 @@
var domain = require("domain");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
Domain: { enumerable: true, value: domain.Domain },
//_stack: // skipping
active: { enumerable: true, get: function() { return domain.active; }, set: function(v) { domain.active = v; } },
create: { enumerable: true, value: bind(domain, domain.create) },
createDomain: { enumerable: true, value: bind(domain, domain.createDomain) },
});

2
node_modules/pn/events.js generated vendored
View file

@ -1,2 +0,0 @@
var events = require("events");
module.exports = events;

87
node_modules/pn/fs.js generated vendored
View file

@ -1,87 +0,0 @@
var fs = require("fs");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
F_OK: { enumerable: true, value: fs.F_OK },
FileReadStream: { enumerable: true, value: fs.FileReadStream },
FileWriteStream: { enumerable: true, value: fs.FileWriteStream },
R_OK: { enumerable: true, value: fs.R_OK },
ReadStream: { enumerable: true, value: fs.ReadStream },
Stats: { enumerable: true, value: fs.Stats },
W_OK: { enumerable: true, value: fs.W_OK },
WriteStream: { enumerable: true, value: fs.WriteStream },
X_OK: { enumerable: true, value: fs.X_OK },
//_toUnixTimestamp: // skipping
access: { enumerable: true, value: promisify(fs, fs.access, 1) },
accessSync: { enumerable: true, value: bind(fs, fs.accessSync) },
appendFile: { enumerable: true, value: promisify(fs, fs.appendFile, 2) },
appendFileSync: { enumerable: true, value: bind(fs, fs.appendFileSync) },
chmod: { enumerable: true, value: promisify(fs, fs.chmod, 2) },
chmodSync: { enumerable: true, value: bind(fs, fs.chmodSync) },
chown: { enumerable: true, value: promisify(fs, fs.chown, 3) },
chownSync: { enumerable: true, value: bind(fs, fs.chownSync) },
close: { enumerable: true, value: promisify(fs, fs.close, 1) },
closeSync: { enumerable: true, value: bind(fs, fs.closeSync) },
constants: { enumerable: true, get: function() { return fs.constants; }, set: function(v) { fs.constants = v; } },
copyFile: { enumerable: true, value: promisify(fs, fs.copyFile, 2) },
copyFileSync: { enumerable: true, value: bind(fs, fs.copyFileSync) },
createReadStream: { enumerable: true, value: bind(fs, fs.createReadStream) },
createWriteStream: { enumerable: true, value: bind(fs, fs.createWriteStream) },
exists: { enumerable: true, value: promisify(fs, fs.exists, 1, {"noError":true}) },
existsSync: { enumerable: true, value: bind(fs, fs.existsSync) },
fchmod: { enumerable: true, value: promisify(fs, fs.fchmod, 2) },
fchmodSync: { enumerable: true, value: bind(fs, fs.fchmodSync) },
fchown: { enumerable: true, value: promisify(fs, fs.fchown, 3) },
fchownSync: { enumerable: true, value: bind(fs, fs.fchownSync) },
fdatasync: { enumerable: true, value: promisify(fs, fs.fdatasync, 1) },
fdatasyncSync: { enumerable: true, value: bind(fs, fs.fdatasyncSync) },
fstat: { enumerable: true, value: promisify(fs, fs.fstat, 1) },
fstatSync: { enumerable: true, value: bind(fs, fs.fstatSync) },
fsync: { enumerable: true, value: promisify(fs, fs.fsync, 1) },
fsyncSync: { enumerable: true, value: bind(fs, fs.fsyncSync) },
ftruncate: { enumerable: true, value: promisify(fs, fs.ftruncate, 2) },
ftruncateSync: { enumerable: true, value: bind(fs, fs.ftruncateSync) },
futimes: { enumerable: true, value: promisify(fs, fs.futimes, 3) },
futimesSync: { enumerable: true, value: bind(fs, fs.futimesSync) },
link: { enumerable: true, value: promisify(fs, fs.link, 2) },
linkSync: { enumerable: true, value: bind(fs, fs.linkSync) },
lstat: { enumerable: true, value: promisify(fs, fs.lstat, 1) },
lstatSync: { enumerable: true, value: bind(fs, fs.lstatSync) },
mkdir: { enumerable: true, value: promisify(fs, fs.mkdir, 1) },
mkdirSync: { enumerable: true, value: bind(fs, fs.mkdirSync) },
mkdtemp: { enumerable: true, value: promisify(fs, fs.mkdtemp, 1) },
mkdtempSync: { enumerable: true, value: bind(fs, fs.mkdtempSync) },
open: { enumerable: true, value: promisify(fs, fs.open, 2) },
openSync: { enumerable: true, value: bind(fs, fs.openSync) },
read: { enumerable: true, value: promisify(fs, fs.read, 5, {"pattern":["read","buffer"]}) },
readFile: { enumerable: true, value: promisify(fs, fs.readFile, 1) },
readFileSync: { enumerable: true, value: bind(fs, fs.readFileSync) },
readSync: { enumerable: true, value: bind(fs, fs.readSync) },
readdir: { enumerable: true, value: promisify(fs, fs.readdir, 1) },
readdirSync: { enumerable: true, value: bind(fs, fs.readdirSync) },
readlink: { enumerable: true, value: promisify(fs, fs.readlink, 1) },
readlinkSync: { enumerable: true, value: bind(fs, fs.readlinkSync) },
realpath: { enumerable: true, value: promisify(fs, fs.realpath, 1) },
realpathSync: { enumerable: true, value: bind(fs, fs.realpathSync) },
rename: { enumerable: true, value: promisify(fs, fs.rename, 2) },
renameSync: { enumerable: true, value: bind(fs, fs.renameSync) },
rmdir: { enumerable: true, value: promisify(fs, fs.rmdir, 1) },
rmdirSync: { enumerable: true, value: bind(fs, fs.rmdirSync) },
stat: { enumerable: true, value: promisify(fs, fs.stat, 1) },
statSync: { enumerable: true, value: bind(fs, fs.statSync) },
symlink: { enumerable: true, value: promisify(fs, fs.symlink, 2) },
symlinkSync: { enumerable: true, value: bind(fs, fs.symlinkSync) },
truncate: { enumerable: true, value: promisify(fs, fs.truncate, 2) },
truncateSync: { enumerable: true, value: bind(fs, fs.truncateSync) },
unlink: { enumerable: true, value: promisify(fs, fs.unlink, 1) },
unlinkSync: { enumerable: true, value: bind(fs, fs.unlinkSync) },
unwatchFile: { enumerable: true, value: bind(fs, fs.unwatchFile) },
utimes: { enumerable: true, value: promisify(fs, fs.utimes, 3) },
utimesSync: { enumerable: true, value: bind(fs, fs.utimesSync) },
watch: { enumerable: true, value: bind(fs, fs.watch) },
watchFile: { enumerable: true, value: bind(fs, fs.watchFile) },
write: { enumerable: true, value: promisify(fs, fs.write, 5, {"pattern":["written","buffer"]}) },
writeFile: { enumerable: true, value: promisify(fs, fs.writeFile, 2) },
writeFileSync: { enumerable: true, value: bind(fs, fs.writeFileSync) },
writeSync: { enumerable: true, value: bind(fs, fs.writeSync) },
});

20
node_modules/pn/http.js generated vendored
View file

@ -1,20 +0,0 @@
var http = require("http");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
Agent: { enumerable: true, value: http.Agent },
Client: { enumerable: true, value: http.Client },
ClientRequest: { enumerable: true, value: http.ClientRequest },
IncomingMessage: { enumerable: true, value: http.IncomingMessage },
METHODS: { enumerable: true, value: http.METHODS },
OutgoingMessage: { enumerable: true, value: http.OutgoingMessage },
STATUS_CODES: { enumerable: true, value: http.STATUS_CODES },
Server: { enumerable: true, value: http.Server },
ServerResponse: { enumerable: true, value: http.ServerResponse },
//_connectionListener: // skipping
createClient: { enumerable: true, value: bind(http, http.createClient) },
createServer: { enumerable: true, value: bind(http, http.createServer) },
get: { enumerable: true, value: promisify(http, http.get, 1, {"returnsObject":true}) },
globalAgent: { enumerable: true, get: function() { return http.globalAgent; }, set: function(v) { http.globalAgent = v; } },
request: { enumerable: true, value: promisify(http, http.request, 1, {"returnsObject":true}) },
});

15
node_modules/pn/http2.js generated vendored
View file

@ -1,15 +0,0 @@
var http2 = {};
try { http2 = require("http2"); } catch (e) { }
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
Http2ServerRequest: { enumerable: true, value: http2.Http2ServerRequest },
Http2ServerResponse: { enumerable: true, value: http2.Http2ServerResponse },
connect: { enumerable: true, value: bind(http2, http2.connect) },
constants: { enumerable: true, get: function() { return http2.constants; }, set: function(v) { http2.constants = v; } },
createSecureServer: { enumerable: true, value: bind(http2, http2.createSecureServer) },
createServer: { enumerable: true, value: bind(http2, http2.createServer) },
getDefaultSettings: { enumerable: true, value: bind(http2, http2.getDefaultSettings) },
getPackedSettings: { enumerable: true, value: bind(http2, http2.getPackedSettings) },
getUnpackedSettings: { enumerable: true, value: bind(http2, http2.getUnpackedSettings) },
});

11
node_modules/pn/https.js generated vendored
View file

@ -1,11 +0,0 @@
var https = require("https");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
Agent: { enumerable: true, value: https.Agent },
Server: { enumerable: true, value: https.Server },
createServer: { enumerable: true, value: bind(https, https.createServer) },
get: { enumerable: true, value: promisify(https, https.get, 1, {"returnsObject":true}) },
globalAgent: { enumerable: true, get: function() { return https.globalAgent; }, set: function(v) { https.globalAgent = v; } },
request: { enumerable: true, value: promisify(https, https.request, 1, {"returnsObject":true}) },
});

3
node_modules/pn/inspector.js generated vendored
View file

@ -1,3 +0,0 @@
var inspector = {};
try { inspector = require("inspector"); } catch (e) { }
module.exports = inspector;

17
node_modules/pn/net.js generated vendored
View file

@ -1,17 +0,0 @@
var net = require("net");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
Server: { enumerable: true, value: net.Server },
Socket: { enumerable: true, value: net.Socket },
Stream: { enumerable: true, value: net.Stream },
//_createServerHandle: // skipping
//_normalizeArgs: // skipping
//_setSimultaneousAccepts: // skipping
connect: { enumerable: true, value: bind(net, net.connect) },
createConnection: { enumerable: true, value: bind(net, net.createConnection) },
createServer: { enumerable: true, value: bind(net, net.createServer) },
isIP: { enumerable: true, value: bind(net, net.isIP) },
isIPv4: { enumerable: true, value: bind(net, net.isIPv4) },
isIPv6: { enumerable: true, value: bind(net, net.isIPv6) },
});

2
node_modules/pn/os.js generated vendored
View file

@ -1,2 +0,0 @@
var os = require("os");
module.exports = os;

31
node_modules/pn/package.json generated vendored
View file

@ -1,31 +0,0 @@
{
"name": "pn",
"version": "1.1.0",
"description": "Promisify the node standard library.",
"scripts": {
"generate": "scripts/generate.js",
"test": "mocha"
},
"repository": {
"type": "git",
"url": "git://github.com/cscott/node-pn"
},
"keywords": [
"promise",
"node"
],
"author": "C. Scott Ananian",
"license": "MIT",
"bugs": {
"url": "https://github.com/cscott/node-pn/issues"
},
"devDependencies": {
"es6-shim": "~0.35.3",
"mocha": "~3.5.0",
"prfun": "~2.1.4"
}
,"_resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz"
,"_integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA=="
,"_from": "pn@1.1.0"
}

2
node_modules/pn/path.js generated vendored
View file

@ -1,2 +0,0 @@
var path = require("path");
module.exports = path;

3
node_modules/pn/perf_hooks.js generated vendored
View file

@ -1,3 +0,0 @@
var perf_hooks = {};
try { perf_hooks = require("perf_hooks"); } catch (e) { }
module.exports = perf_hooks;

74
node_modules/pn/process.js generated vendored
View file

@ -1,74 +0,0 @@
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
EventEmitter: { enumerable: true, value: process.EventEmitter },
//_debugEnd: // skipping
//_debugPause: // skipping
//_debugProcess: // skipping
//_events: // skipping
//_eventsCount: // skipping
//_exiting: // skipping
//_fatalException: // skipping
//_getActiveHandles: // skipping
//_getActiveRequests: // skipping
//_immediateCallback: // skipping
//_kill: // skipping
//_linkedBinding: // skipping
//_maxListeners: // skipping
//_rawDebug: // skipping
//_startProfilerIdleNotifier: // skipping
//_stopProfilerIdleNotifier: // skipping
//_tickCallback: // skipping
abort: { enumerable: true, value: bind(process, process.abort) },
arch: { enumerable: true, get: function() { return process.arch; }, set: function(v) { process.arch = v; } },
argv: { enumerable: true, get: function() { return process.argv; }, set: function(v) { process.argv = v; } },
argv0: { enumerable: true, get: function() { return process.argv0; }, set: function(v) { process.argv0 = v; } },
assert: { enumerable: true, value: bind(process, process.assert) },
binding: { enumerable: true, value: bind(process, process.binding) },
chdir: { enumerable: true, value: bind(process, process.chdir) },
config: { enumerable: true, get: function() { return process.config; }, set: function(v) { process.config = v; } },
cpuUsage: { enumerable: true, value: bind(process, process.cpuUsage) },
cwd: { enumerable: true, value: bind(process, process.cwd) },
debugPort: { enumerable: true, get: function() { return process.debugPort; }, set: function(v) { process.debugPort = v; } },
dlopen: { enumerable: true, value: bind(process, process.dlopen) },
domain: { enumerable: true, get: function() { return process.domain; }, set: function(v) { process.domain = v; } },
emitWarning: { enumerable: true, value: bind(process, process.emitWarning) },
env: { enumerable: true, get: function() { return process.env; }, set: function(v) { process.env = v; } },
execArgv: { enumerable: true, get: function() { return process.execArgv; }, set: function(v) { process.execArgv = v; } },
execPath: { enumerable: true, get: function() { return process.execPath; }, set: function(v) { process.execPath = v; } },
exit: { enumerable: true, value: bind(process, process.exit) },
features: { enumerable: true, get: function() { return process.features; }, set: function(v) { process.features = v; } },
getegid: { enumerable: true, value: bind(process, process.getegid) },
geteuid: { enumerable: true, value: bind(process, process.geteuid) },
getgid: { enumerable: true, value: bind(process, process.getgid) },
getgroups: { enumerable: true, value: bind(process, process.getgroups) },
getuid: { enumerable: true, value: bind(process, process.getuid) },
hasUncaughtExceptionCaptureCallback: { enumerable: true, value: bind(process, process.hasUncaughtExceptionCaptureCallback) },
hrtime: { enumerable: true, value: bind(process, process.hrtime) },
initgroups: { enumerable: true, value: bind(process, process.initgroups) },
kill: { enumerable: true, value: bind(process, process.kill) },
mainModule: { enumerable: true, get: function() { return process.mainModule; }, set: function(v) { process.mainModule = v; } },
memoryUsage: { enumerable: true, value: bind(process, process.memoryUsage) },
moduleLoadList: { enumerable: true, get: function() { return process.moduleLoadList; }, set: function(v) { process.moduleLoadList = v; } },
nextTick: { enumerable: true, value: promisify(process, process.nextTick, 0) },
openStdin: { enumerable: true, value: bind(process, process.openStdin) },
pid: { enumerable: true, get: function() { return process.pid; }, set: function(v) { process.pid = v; } },
platform: { enumerable: true, get: function() { return process.platform; }, set: function(v) { process.platform = v; } },
ppid: { enumerable: true, get: function() { return process.ppid; }, set: function(v) { process.ppid = v; } },
reallyExit: { enumerable: true, value: bind(process, process.reallyExit) },
release: { enumerable: true, get: function() { return process.release; }, set: function(v) { process.release = v; } },
setUncaughtExceptionCaptureCallback: { enumerable: true, value: bind(process, process.setUncaughtExceptionCaptureCallback) },
setegid: { enumerable: true, value: bind(process, process.setegid) },
seteuid: { enumerable: true, value: bind(process, process.seteuid) },
setgid: { enumerable: true, value: bind(process, process.setgid) },
setgroups: { enumerable: true, value: bind(process, process.setgroups) },
setuid: { enumerable: true, value: bind(process, process.setuid) },
stderr: { enumerable: true, get: function() { return process.stderr; }, set: function(v) { process.stderr = v; } },
stdin: { enumerable: true, get: function() { return process.stdin; }, set: function(v) { process.stdin = v; } },
stdout: { enumerable: true, get: function() { return process.stdout; }, set: function(v) { process.stdout = v; } },
title: { enumerable: true, get: function() { return process.title; }, set: function(v) { process.title = v; } },
umask: { enumerable: true, value: bind(process, process.umask) },
uptime: { enumerable: true, value: bind(process, process.uptime) },
version: { enumerable: true, get: function() { return process.version; }, set: function(v) { process.version = v; } },
versions: { enumerable: true, get: function() { return process.versions; }, set: function(v) { process.versions = v; } },
});

3
node_modules/pn/punycode.js generated vendored
View file

@ -1,3 +0,0 @@
var punycode = {};
try { punycode = require("punycode"); } catch (e) { }
module.exports = punycode;

2
node_modules/pn/querystring.js generated vendored
View file

@ -1,2 +0,0 @@
var querystring = require("querystring");
module.exports = querystring;

16
node_modules/pn/readline.js generated vendored
View file

@ -1,16 +0,0 @@
var readline = require("readline");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
Interface: { enumerable: true, value: readline.Interface },
clearLine: { enumerable: true, value: bind(readline, readline.clearLine) },
clearScreenDown: { enumerable: true, value: bind(readline, readline.clearScreenDown) },
codePointAt: { enumerable: true, value: bind(readline, readline.codePointAt) },
createInterface: { enumerable: true, value: bind(readline, readline.createInterface) },
cursorTo: { enumerable: true, value: bind(readline, readline.cursorTo) },
emitKeypressEvents: { enumerable: true, value: bind(readline, readline.emitKeypressEvents) },
getStringWidth: { enumerable: true, value: bind(readline, readline.getStringWidth) },
isFullWidthCodePoint: { enumerable: true, value: bind(readline, readline.isFullWidthCodePoint) },
moveCursor: { enumerable: true, value: bind(readline, readline.moveCursor) },
stripVTControlCharacters: { enumerable: true, value: bind(readline, readline.stripVTControlCharacters) },
});

2
node_modules/pn/repl.js generated vendored
View file

@ -1,2 +0,0 @@
var repl = require("repl");
module.exports = repl;

244
node_modules/pn/scripts/generate.js generated vendored
View file

@ -1,244 +0,0 @@
#!/usr/bin/env node
var fs = require('fs');
var path = require('path');
// These are the node packages we are going to wrap.
var packages = {
assert: { skip: true },
async_hooks: { optional: true, skip: true },
buffer: { skip: true },
child_process: {
exec: { promisify: true, returnsObject: true, args: 1, cb:['stdout','stderr'] },
execFile: { promisify: true, returnsObject: true, args: 1, cb:['stdout','stderr'] },
fork: { promisify: false },
spawn: { promisify: false },
},
cluster: {
disconnect: { promisify: true, args: 0 },
},
console: { skip: true },
crypto: {
DEFAULT_ENCODING: { constant: false },
pseudoRandomBytes: { promisify: true, syncIfNoCallback: true, args: 1 },
randomBytes: { promisify: true, syncIfNoCallback: true, args: 1 },
randomFill: { args: 1 },
},
dns: {
// XXX: Resolver could be wrapped...
ADNAME: { skip: true },
lookup: { promisify: true, args: 1 },
lookupService: { promisify: true, args: 2, cb:['hostname','service'] },
resolve: { promisify: true, args: 1 },
resolve4: { promisify: true, args: 1 },
resolve6: { promisify: true, args: 1 },
resolveAny: { promisify: true, args: 1 },
resolveCname: { promisify: true, args: 1 },
resolveMx: { promisify: true, args: 1 },
resolveNaptr: { promisify: true, args: 1 },
resolveNs: { promisify: true, args: 1 },
resolvePtr: { promisify: true, args: 1 },
resolveSoa: { promisify: true, args: 1 },
resolveSrv: { promisify: true, args: 1 },
resolveTxt: { promisify: true, args: 1 },
reverse: { promisify: true, args: 1 },
},
domain: {
// XXX Domain#bind and Domain#intercept should be promisified
},
events: {
skip: true,
},
fs: {
access: { args: 1 },
appendFile: { args: 2 },
copyFile: { args: 2 },
exists: { promisify: true, noError: true },
mkdir: { args: 1 },
mkdtemp: { args: 1 },
open: { args: 2 },
read: { cb: ['read', 'buffer'] },
readdir: { args: 1 },
readlink: { args: 1 },
readFile: { args: 1 },
realpath: { args: 1 },
symlink: { args: 2 },
write: { cb: ['written', 'buffer'] },
writeFile: { args: 2 },
},
http: {
STATUS_CODES: { constant: true },
// XXX ClientRequest#setTimeout should be promisified
// XXX IncomingMessage#setTimeout should be promisified
// XXX Server#listen, Server#close, and Server#setTimeout
// should be promisified
// XXX ServerResponse#setTimeout should be promisified
request: { promisify: true, returnsObject: true, args: 1 },
get: { promisify: true, returnsObject: true, args: 1 },
},
http2: {
optional: true,
},
https: {
// XXX Server#listen, Server#close, and Server#setTimeout
// should be promisified
request: { promisify: true, returnsObject: true, args: 1 },
get: { promisify: true, returnsObject: true, args: 1 },
},
inspector: {
optional: true,
skip: true,
},
net: {
// XXX Server#listen, Server#close, Server#getConnections
// should be promisified
// XXX Socket#write, Socket#setTimeout should be promisified
},
os: { skip: true },
path: { skip: true },
perf_hooks: { optional: true, skip: true },
process: {
nextTick: { promisify: true, args: 0 }
},
punycode: { optional: true, skip: true },
querystring: { skip: true },
readline: {
// XXX Interface#question should be promisified
},
repl: { skip: true },
stream: {
super_: { skip: true },
// XXX Writable#write and Writable#end should be promisified
// XXX same for Duplex and Transform? inheritance unclear.
// what about _read/_write/_transform/_flush for implementers?
},
string_decoder: { skip: true },
timers: {
setImmediate: { promisify: true, callbackIsFirstArg: true, noError: true },
setTimeout: { promisify: true, callbackIsFirstArg: true, noError: true },
},
tls: {
connect: { promisify: true, returnsObject: true, args: 1 },
createServer: { promisify: true, returnsObject: true, args: 1 },
},
tty: {
skip: true
// should tty.ReadStream and tty.WriteStream be promisified?
// (process.stdin / process.stdout)
},
dgram: {
// note that createSocket takes a listener, not a callback
// XXX Socket#send and Socket#bind should be promisified
},
url: { skip: true },
util: {
pump: { promisify: true, args: 2 }
},
v8: { optional: true, skip: true },
vm: { skip: true },
zlib: {
codes: { constant: true },
deflate: { promisify: true, args: 1 },
deflateRaw: { promisify: true, args: 1 },
gzip: { promisify: true, args: 1 },
gunzip: { promisify: true, args: 1 },
inflate: { promisify: true, args: 1 },
inflateRaw: { promisify: true, args: 1 },
unzip: { promisify: true, args: 1 },
},
};
var sorted = function(arr) {
var s = arr.slice(0);
s.sort();
return s;
}
sorted(Object.keys(packages)).forEach(function(pkgname) {
var pkgopts = packages[pkgname] || {};
var script = [];
var emit = function(l) { script.push(l); };
var m;
if (pkgname==='process') {
m = process;
} else if (pkgopts.optional) {
// Package is not present in older versions of node.
emit('var '+pkgname+' = {};');
emit('try { '+pkgname+' = require("'+pkgname+'"); } catch (e) { }');
m = require(pkgname);
} else {
emit('var '+pkgname+' = require("'+pkgname+'");');
m = require(pkgname);
}
if (pkgopts.skip) {
emit('module.exports = '+pkgname+';');
} else {
emit('var promisify = require("./_promisify.js");');
emit('var bind = function(c, f) { return f && f.bind(c); };');
emit('Object.defineProperties(module.exports, {');
sorted(Object.keys(m)).forEach(function(prop) {
var opts = pkgopts[prop] || {};
// skip private properties
if (opts.skip !== undefined ? opts.skip : /^_/.test(prop)) {
emit(' //'+prop+': // skipping');
return;
}
var out = ' '+prop+': { enumerable: true, ';
// Is this a function?
var caps = /^[A-Z]/.test(prop);
var isFunction = typeof(m[prop]) === 'function';
var isConstant = opts.constant!==undefined ? opts.constant :
isFunction ?
(opts.bind !== undefined ? opts.bind===false : caps) :
caps;
if (isConstant) {
emit(out+'value: '+pkgname+'.'+prop+' },');
return;
}
if (!isFunction) {
// add getters & setters
emit(out+'get: function() { return '+pkgname+'.'+prop+'; }, '+
'set: function(v) { '+pkgname+'.'+prop+' = v; } },');
return;
}
// Is this a async function?
var isAsync = (typeof(m[prop+'Sync']) === 'function');
if (opts.promisify) { isAsync = true; }
if (!isAsync || opts.promisify === false) {
emit(out+'value: bind('+pkgname+', '+pkgname+'.'+prop+') },');
return;
}
// OK, this is very likely an async function!
// number of mandatory options (may be additional optional args)
var nargs = opts.args!==undefined ? opts.args :
(typeof(m[prop+'Sync']) === 'function') ?
m[prop+'Sync'].length : m[prop].length;
var options = {}, emitOptions = false;
if (opts.cb) {
options.pattern = opts.cb;
emitOptions = true;
}
if (opts.noError) {
options.noError = true;
emitOptions = true;
}
if (opts.returnsObject) {
options.returnsObject = true;
emitOptions = true;
}
if (opts.callbackIsFirstArg) {
options.callbackIsFirstArg = true;
nargs = 0;
emitOptions = true;
}
var optString = emitOptions ? ', '+JSON.stringify(options) : '';
emit(out+'value: promisify('+pkgname+', '+pkgname+'.'+prop+', '+nargs+optString+') },');
if (opts.syncIfNoCallback) {
emit(out.replace(/:/,"Sync:")+'value: '+pkgname+'.'+prop+'.bind('+pkgname+') },');
}
});
emit('});');
}
// Write out this wrapped package!
fs.writeFileSync(path.join(__dirname,'..',pkgname+'.js'),
script.join('\n'), 'utf-8');
});

14
node_modules/pn/stream.js generated vendored
View file

@ -1,14 +0,0 @@
var stream = require("stream");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
Duplex: { enumerable: true, value: stream.Duplex },
PassThrough: { enumerable: true, value: stream.PassThrough },
Readable: { enumerable: true, value: stream.Readable },
Stream: { enumerable: true, value: stream.Stream },
Transform: { enumerable: true, value: stream.Transform },
Writable: { enumerable: true, value: stream.Writable },
//_isUint8Array: // skipping
//_uint8ArrayToBuffer: // skipping
//super_: // skipping
});

2
node_modules/pn/string_decoder.js generated vendored
View file

@ -1,2 +0,0 @@
var string_decoder = require("string_decoder");
module.exports = string_decoder;

13
node_modules/pn/test/cp.js generated vendored
View file

@ -1,13 +0,0 @@
// if running on older node, ensure that es6-shim is loaded first
if (/^v0.10/.test(process.version)) { require('es6-shim'); }
var assert= require('../assert');
var cp = require('../child_process');
describe('child_process module', function() {
it ('execFile(true)', function() {
return cp.execFile('true').promise.then(function(result) {
assert.equal(result.stdout, '');
assert.equal(result.stderr, '');
});
});
});

20
node_modules/pn/test/custom.js generated vendored
View file

@ -1,20 +0,0 @@
// Verify that custom promises work as advertised.
var PrPromise = require('prfun');
var assert = require('../assert');
var fs = require('../fs');
describe('Verify that custom promises can be used', function() {
var oldPromise;
before(function() {
oldPromise = require('../_promise')();
require('../_promise')(PrPromise);
});
after(function() {
require('../_promise')(oldPromise);
});
it('exists should use the custom promise type', function() {
var p = fs.exists('abc');
assert.equal(p instanceof PrPromise, true);
});
});

60
node_modules/pn/test/fs.js generated vendored
View file

@ -1,60 +0,0 @@
// if running on older node, ensure that es6-shim is loaded first
if (/^v0.10/.test(process.version)) { require('es6-shim'); }
var assert= require('../assert');
var fs = require('../fs');
var path = require('../path');
var TESTFILE = '/tmp/hello';
describe('fs module', function() {
it('write/read/unlink (callbacks)', function(done) {
fs.exists(TESTFILE, function(exists) {
if (exists) {
return done("Pre-existing file "+TESTFILE+"; aborting test.");
}
fs.writeFile(TESTFILE, 'hello', 'utf-8', function(err) {
if (err) { return done(err); }
fs.exists(TESTFILE, function(exists) {
if (!exists) {
return done(TESTFILE+" not found");
}
fs.readFile(TESTFILE, 'utf-8', function(err, contents) {
if (err) { return done(err); }
if (contents !== 'hello') {
return done("File contents are not right");
}
fs.unlink(TESTFILE, function(err) {
if (err) { return done(err); }
fs.exists(TESTFILE, function(exists) {
if (exists) {
return done("unlink didn't work");
}
done(/*success!*/);
});
});
});
});
});
});
});
it('write/read/unlink (promises)', function() {
return fs.exists(TESTFILE).then(function(exists) {
assert.equal(!!exists, false,
"Pre-existing file "+TESTFILE+"; aborting test.");
}).then(function() {
return fs.writeFile(TESTFILE, 'hello', 'utf-8');
}).then(function() {
return fs.exists(TESTFILE);
}).then(function(exists) {
assert.equal(!!exists, true);
return fs.readFile(TESTFILE, 'utf-8');
}).then(function(contents) {
assert.equal(contents, 'hello');
return fs.unlink(TESTFILE);
}).then(function() {
return fs.exists(TESTFILE);
}).then(function(exists) {
assert.equal(!!exists, false);
});
});
});

14
node_modules/pn/test/load.js generated vendored
View file

@ -1,14 +0,0 @@
// Just verify that all of the packages can be loaded without errors.
var fs = require('fs'), path = require('path');
// if running on older node, ensure that es6-shim is loaded first
if (/^v0.10/.test(process.version)) { require('es6-shim'); }
describe("Package load tests", function() {
fs.readdirSync(path.join(__dirname, '..')).forEach(function(file) {
if (/^_/.test(file) || !/\.js$/.test(file)) { return; }
var pkgname = file.replace(/\.js$/, '');
it(pkgname+' should load', function() {
require('../'+pkgname);
});
});
});

34
node_modules/pn/test/timers.js generated vendored
View file

@ -1,34 +0,0 @@
// if running on older node, ensure that es6-shim is loaded first
if (/^v0.10/.test(process.version)) { require('es6-shim'); }
var assert= require('../assert');
var timers = require('../timers');
describe('timers module', function() {
it ('setImmediate()', function() {
return timers.setImmediate().then(function(result) {
assert.strictEqual(result, undefined, '');
});
});
it ('setImmediate(<arg>)', function() {
var obj = {};
return timers.setImmediate(obj).then(function(result) {
assert.strictEqual(result, obj, '');
});
});
it ('setTimeout()', function() {
return timers.setTimeout().then(function(result) {
assert.strictEqual(result, undefined, '');
});
});
it ('setTimeout(<num>)', function() {
return timers.setTimeout(15).then(function(result) {
assert.strictEqual(result, undefined, '');
});
});
it ('setTimeout(<num>, <arg>)', function() {
var obj = {};
return timers.setTimeout(25, obj).then(function(result) {
assert.strictEqual(result, obj, '');
});
});
});

15
node_modules/pn/timers.js generated vendored
View file

@ -1,15 +0,0 @@
var timers = require("timers");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
//_unrefActive: // skipping
active: { enumerable: true, value: bind(timers, timers.active) },
clearImmediate: { enumerable: true, value: bind(timers, timers.clearImmediate) },
clearInterval: { enumerable: true, value: bind(timers, timers.clearInterval) },
clearTimeout: { enumerable: true, value: bind(timers, timers.clearTimeout) },
enroll: { enumerable: true, value: bind(timers, timers.enroll) },
setImmediate: { enumerable: true, value: promisify(timers, timers.setImmediate, 0, {"noError":true,"callbackIsFirstArg":true}) },
setInterval: { enumerable: true, value: bind(timers, timers.setInterval) },
setTimeout: { enumerable: true, value: promisify(timers, timers.setTimeout, 0, {"noError":true,"callbackIsFirstArg":true}) },
unenroll: { enumerable: true, value: bind(timers, timers.unenroll) },
});

22
node_modules/pn/tls.js generated vendored
View file

@ -1,22 +0,0 @@
var tls = require("tls");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
CLIENT_RENEG_LIMIT: { enumerable: true, value: tls.CLIENT_RENEG_LIMIT },
CLIENT_RENEG_WINDOW: { enumerable: true, value: tls.CLIENT_RENEG_WINDOW },
DEFAULT_CIPHERS: { enumerable: true, value: tls.DEFAULT_CIPHERS },
DEFAULT_ECDH_CURVE: { enumerable: true, value: tls.DEFAULT_ECDH_CURVE },
SLAB_BUFFER_SIZE: { enumerable: true, value: tls.SLAB_BUFFER_SIZE },
SecureContext: { enumerable: true, value: tls.SecureContext },
Server: { enumerable: true, value: tls.Server },
TLSSocket: { enumerable: true, value: tls.TLSSocket },
checkServerIdentity: { enumerable: true, value: bind(tls, tls.checkServerIdentity) },
connect: { enumerable: true, value: promisify(tls, tls.connect, 1, {"returnsObject":true}) },
convertALPNProtocols: { enumerable: true, value: bind(tls, tls.convertALPNProtocols) },
convertNPNProtocols: { enumerable: true, value: bind(tls, tls.convertNPNProtocols) },
createSecureContext: { enumerable: true, value: bind(tls, tls.createSecureContext) },
createSecurePair: { enumerable: true, value: bind(tls, tls.createSecurePair) },
createServer: { enumerable: true, value: promisify(tls, tls.createServer, 1, {"returnsObject":true}) },
getCiphers: { enumerable: true, value: bind(tls, tls.getCiphers) },
parseCertString: { enumerable: true, value: bind(tls, tls.parseCertString) },
});

2
node_modules/pn/tty.js generated vendored
View file

@ -1,2 +0,0 @@
var tty = require("tty");
module.exports = tty;

2
node_modules/pn/url.js generated vendored
View file

@ -1,2 +0,0 @@
var url = require("url");
module.exports = url;

41
node_modules/pn/util.js generated vendored
View file

@ -1,41 +0,0 @@
var util = require("util");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
TextDecoder: { enumerable: true, value: util.TextDecoder },
TextEncoder: { enumerable: true, value: util.TextEncoder },
//_errnoException: // skipping
//_exceptionWithHostPort: // skipping
//_extend: // skipping
callbackify: { enumerable: true, value: bind(util, util.callbackify) },
debug: { enumerable: true, value: bind(util, util.debug) },
debuglog: { enumerable: true, value: bind(util, util.debuglog) },
deprecate: { enumerable: true, value: bind(util, util.deprecate) },
error: { enumerable: true, value: bind(util, util.error) },
exec: { enumerable: true, value: bind(util, util.exec) },
format: { enumerable: true, value: bind(util, util.format) },
inherits: { enumerable: true, value: bind(util, util.inherits) },
inspect: { enumerable: true, value: bind(util, util.inspect) },
isArray: { enumerable: true, value: bind(util, util.isArray) },
isBoolean: { enumerable: true, value: bind(util, util.isBoolean) },
isBuffer: { enumerable: true, value: bind(util, util.isBuffer) },
isDate: { enumerable: true, value: bind(util, util.isDate) },
isDeepStrictEqual: { enumerable: true, value: bind(util, util.isDeepStrictEqual) },
isError: { enumerable: true, value: bind(util, util.isError) },
isFunction: { enumerable: true, value: bind(util, util.isFunction) },
isNull: { enumerable: true, value: bind(util, util.isNull) },
isNullOrUndefined: { enumerable: true, value: bind(util, util.isNullOrUndefined) },
isNumber: { enumerable: true, value: bind(util, util.isNumber) },
isObject: { enumerable: true, value: bind(util, util.isObject) },
isPrimitive: { enumerable: true, value: bind(util, util.isPrimitive) },
isRegExp: { enumerable: true, value: bind(util, util.isRegExp) },
isString: { enumerable: true, value: bind(util, util.isString) },
isSymbol: { enumerable: true, value: bind(util, util.isSymbol) },
isUndefined: { enumerable: true, value: bind(util, util.isUndefined) },
log: { enumerable: true, value: bind(util, util.log) },
p: { enumerable: true, value: bind(util, util.p) },
print: { enumerable: true, value: bind(util, util.print) },
promisify: { enumerable: true, value: bind(util, util.promisify) },
pump: { enumerable: true, value: promisify(util, util.pump, 2) },
puts: { enumerable: true, value: bind(util, util.puts) },
});

3
node_modules/pn/v8.js generated vendored
View file

@ -1,3 +0,0 @@
var v8 = {};
try { v8 = require("v8"); } catch (e) { }
module.exports = v8;

2
node_modules/pn/vm.js generated vendored
View file

@ -1,2 +0,0 @@
var vm = require("vm");
module.exports = vm;

81
node_modules/pn/zlib.js generated vendored
View file

@ -1,81 +0,0 @@
var zlib = require("zlib");
var promisify = require("./_promisify.js");
var bind = function(c, f) { return f && f.bind(c); };
Object.defineProperties(module.exports, {
DEFLATE: { enumerable: true, value: zlib.DEFLATE },
DEFLATERAW: { enumerable: true, value: zlib.DEFLATERAW },
Deflate: { enumerable: true, value: zlib.Deflate },
DeflateRaw: { enumerable: true, value: zlib.DeflateRaw },
GUNZIP: { enumerable: true, value: zlib.GUNZIP },
GZIP: { enumerable: true, value: zlib.GZIP },
Gunzip: { enumerable: true, value: zlib.Gunzip },
Gzip: { enumerable: true, value: zlib.Gzip },
INFLATE: { enumerable: true, value: zlib.INFLATE },
INFLATERAW: { enumerable: true, value: zlib.INFLATERAW },
Inflate: { enumerable: true, value: zlib.Inflate },
InflateRaw: { enumerable: true, value: zlib.InflateRaw },
UNZIP: { enumerable: true, value: zlib.UNZIP },
Unzip: { enumerable: true, value: zlib.Unzip },
ZLIB_VERNUM: { enumerable: true, value: zlib.ZLIB_VERNUM },
ZLIB_VERSION: { enumerable: true, value: zlib.ZLIB_VERSION },
Z_BEST_COMPRESSION: { enumerable: true, value: zlib.Z_BEST_COMPRESSION },
Z_BEST_SPEED: { enumerable: true, value: zlib.Z_BEST_SPEED },
Z_BLOCK: { enumerable: true, value: zlib.Z_BLOCK },
Z_BUF_ERROR: { enumerable: true, value: zlib.Z_BUF_ERROR },
Z_DATA_ERROR: { enumerable: true, value: zlib.Z_DATA_ERROR },
Z_DEFAULT_CHUNK: { enumerable: true, value: zlib.Z_DEFAULT_CHUNK },
Z_DEFAULT_COMPRESSION: { enumerable: true, value: zlib.Z_DEFAULT_COMPRESSION },
Z_DEFAULT_LEVEL: { enumerable: true, value: zlib.Z_DEFAULT_LEVEL },
Z_DEFAULT_MEMLEVEL: { enumerable: true, value: zlib.Z_DEFAULT_MEMLEVEL },
Z_DEFAULT_STRATEGY: { enumerable: true, value: zlib.Z_DEFAULT_STRATEGY },
Z_DEFAULT_WINDOWBITS: { enumerable: true, value: zlib.Z_DEFAULT_WINDOWBITS },
Z_ERRNO: { enumerable: true, value: zlib.Z_ERRNO },
Z_FILTERED: { enumerable: true, value: zlib.Z_FILTERED },
Z_FINISH: { enumerable: true, value: zlib.Z_FINISH },
Z_FIXED: { enumerable: true, value: zlib.Z_FIXED },
Z_FULL_FLUSH: { enumerable: true, value: zlib.Z_FULL_FLUSH },
Z_HUFFMAN_ONLY: { enumerable: true, value: zlib.Z_HUFFMAN_ONLY },
Z_MAX_CHUNK: { enumerable: true, value: zlib.Z_MAX_CHUNK },
Z_MAX_LEVEL: { enumerable: true, value: zlib.Z_MAX_LEVEL },
Z_MAX_MEMLEVEL: { enumerable: true, value: zlib.Z_MAX_MEMLEVEL },
Z_MAX_WINDOWBITS: { enumerable: true, value: zlib.Z_MAX_WINDOWBITS },
Z_MEM_ERROR: { enumerable: true, value: zlib.Z_MEM_ERROR },
Z_MIN_CHUNK: { enumerable: true, value: zlib.Z_MIN_CHUNK },
Z_MIN_LEVEL: { enumerable: true, value: zlib.Z_MIN_LEVEL },
Z_MIN_MEMLEVEL: { enumerable: true, value: zlib.Z_MIN_MEMLEVEL },
Z_MIN_WINDOWBITS: { enumerable: true, value: zlib.Z_MIN_WINDOWBITS },
Z_NEED_DICT: { enumerable: true, value: zlib.Z_NEED_DICT },
Z_NO_COMPRESSION: { enumerable: true, value: zlib.Z_NO_COMPRESSION },
Z_NO_FLUSH: { enumerable: true, value: zlib.Z_NO_FLUSH },
Z_OK: { enumerable: true, value: zlib.Z_OK },
Z_PARTIAL_FLUSH: { enumerable: true, value: zlib.Z_PARTIAL_FLUSH },
Z_RLE: { enumerable: true, value: zlib.Z_RLE },
Z_STREAM_END: { enumerable: true, value: zlib.Z_STREAM_END },
Z_STREAM_ERROR: { enumerable: true, value: zlib.Z_STREAM_ERROR },
Z_SYNC_FLUSH: { enumerable: true, value: zlib.Z_SYNC_FLUSH },
Z_VERSION_ERROR: { enumerable: true, value: zlib.Z_VERSION_ERROR },
Zlib: { enumerable: true, value: zlib.Zlib },
codes: { enumerable: true, value: zlib.codes },
constants: { enumerable: true, get: function() { return zlib.constants; }, set: function(v) { zlib.constants = v; } },
createDeflate: { enumerable: true, value: bind(zlib, zlib.createDeflate) },
createDeflateRaw: { enumerable: true, value: bind(zlib, zlib.createDeflateRaw) },
createGunzip: { enumerable: true, value: bind(zlib, zlib.createGunzip) },
createGzip: { enumerable: true, value: bind(zlib, zlib.createGzip) },
createInflate: { enumerable: true, value: bind(zlib, zlib.createInflate) },
createInflateRaw: { enumerable: true, value: bind(zlib, zlib.createInflateRaw) },
createUnzip: { enumerable: true, value: bind(zlib, zlib.createUnzip) },
deflate: { enumerable: true, value: promisify(zlib, zlib.deflate, 1) },
deflateRaw: { enumerable: true, value: promisify(zlib, zlib.deflateRaw, 1) },
deflateRawSync: { enumerable: true, value: bind(zlib, zlib.deflateRawSync) },
deflateSync: { enumerable: true, value: bind(zlib, zlib.deflateSync) },
gunzip: { enumerable: true, value: promisify(zlib, zlib.gunzip, 1) },
gunzipSync: { enumerable: true, value: bind(zlib, zlib.gunzipSync) },
gzip: { enumerable: true, value: promisify(zlib, zlib.gzip, 1) },
gzipSync: { enumerable: true, value: bind(zlib, zlib.gzipSync) },
inflate: { enumerable: true, value: promisify(zlib, zlib.inflate, 1) },
inflateRaw: { enumerable: true, value: promisify(zlib, zlib.inflateRaw, 1) },
inflateRawSync: { enumerable: true, value: bind(zlib, zlib.inflateRawSync) },
inflateSync: { enumerable: true, value: bind(zlib, zlib.inflateSync) },
unzip: { enumerable: true, value: promisify(zlib, zlib.unzip, 1) },
unzipSync: { enumerable: true, value: bind(zlib, zlib.unzipSync) },
});