fsevents 1.0.12 → 1.0.14
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of fsevents might be problematic. Click here for more details.
- package/.npmignore +1 -3
- package/.travis.yml +6 -5
- package/build/.target.mk +49 -0
- package/build/Makefile +352 -0
- package/build/action_after_build.target.mk +32 -0
- package/build/binding.Makefile +6 -0
- package/build/fse.target.mk +169 -0
- package/build/gyp-mac-tool +612 -0
- package/lib/binding/Release/node-v11-darwin-x64/fse.node +0 -0
- package/lib/binding/Release/node-v46-darwin-x64/fse.node +0 -0
- package/lib/binding/Release/node-v47-darwin-x64/fse.node +0 -0
- package/node_modules/abbrev/package.json +82 -0
- package/node_modules/{lodash.repeat/LICENSE → ansi-regex/license} +5 -7
- package/node_modules/ansi-regex/package.json +20 -2
- package/node_modules/{lodash.padstart/LICENSE → ansi-styles/license} +5 -7
- package/node_modules/ansi-styles/package.json +21 -4
- package/node_modules/aproba/LICENSE +14 -0
- package/node_modules/aproba/README.md +59 -0
- package/node_modules/aproba/index.js +62 -0
- package/node_modules/aproba/package.json +88 -0
- package/node_modules/are-we-there-yet/package.json +21 -4
- package/node_modules/asn1/package.json +19 -1
- package/node_modules/assert-plus/package.json +21 -4
- package/node_modules/async/CHANGELOG.md +125 -0
- package/node_modules/async/LICENSE +19 -0
- package/node_modules/async/package.json +20 -2
- package/node_modules/aws-sign2/package.json +20 -2
- package/node_modules/aws4/aws4.js +1 -1
- package/node_modules/aws4/lru.js +96 -0
- package/node_modules/aws4/package.json +31 -16
- package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion → balanced-match}/.npmignore +2 -0
- package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match → balanced-match}/README.md +5 -3
- package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match → balanced-match}/index.js +9 -1
- package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match → balanced-match}/package.json +35 -13
- package/node_modules/bl/README.md +3 -3
- package/node_modules/bl/bl.js +54 -38
- package/node_modules/bl/node_modules/readable-stream/.npmignore +5 -0
- package/node_modules/bl/node_modules/readable-stream/.travis.yml +52 -0
- package/node_modules/bl/node_modules/readable-stream/LICENSE +18 -0
- package/node_modules/bl/node_modules/readable-stream/README.md +36 -0
- package/node_modules/bl/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
- package/node_modules/bl/node_modules/readable-stream/duplex.js +1 -0
- package/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.js +75 -0
- package/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.js +26 -0
- package/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.js +880 -0
- package/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.js +180 -0
- package/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.js +516 -0
- package/node_modules/bl/node_modules/readable-stream/package.json +105 -0
- package/node_modules/bl/node_modules/readable-stream/passthrough.js +1 -0
- package/node_modules/bl/node_modules/readable-stream/readable.js +12 -0
- package/node_modules/bl/node_modules/readable-stream/transform.js +1 -0
- package/node_modules/bl/node_modules/readable-stream/writable.js +1 -0
- package/node_modules/bl/package.json +39 -15
- package/node_modules/bl/test/test.js +71 -2
- package/node_modules/block-stream/package.json +37 -12
- package/node_modules/boom/package.json +20 -2
- package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion → brace-expansion}/package.json +34 -16
- package/node_modules/buffer-shims/index.js +108 -0
- package/node_modules/buffer-shims/license.md +19 -0
- package/node_modules/buffer-shims/package.json +77 -0
- package/node_modules/buffer-shims/readme.md +21 -0
- package/node_modules/caseless/package.json +20 -2
- package/node_modules/{lodash.pad/LICENSE → chalk/license} +5 -7
- package/node_modules/chalk/package.json +21 -4
- package/node_modules/code-point-at/index.js +33 -0
- package/node_modules/{lodash.padend/LICENSE → code-point-at/license} +5 -7
- package/node_modules/code-point-at/package.json +96 -0
- package/node_modules/code-point-at/readme.md +34 -0
- package/node_modules/combined-stream/package.json +20 -2
- package/node_modules/commander/History.md +261 -0
- package/node_modules/commander/LICENSE +22 -0
- package/node_modules/commander/package.json +20 -2
- package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/package.json +21 -3
- package/node_modules/console-control-strings/LICENSE +13 -0
- package/node_modules/console-control-strings/README.md +145 -0
- package/node_modules/console-control-strings/README.md~ +140 -0
- package/node_modules/console-control-strings/index.js +125 -0
- package/node_modules/console-control-strings/package.json +88 -0
- package/node_modules/core-util-is/package.json +21 -2
- package/node_modules/cryptiles/package.json +20 -2
- package/node_modules/dashdash/lib/dashdash.js +34 -1
- package/node_modules/dashdash/node_modules/assert-plus/package.json +21 -4
- package/node_modules/dashdash/package.json +29 -12
- package/node_modules/debug/package.json +20 -2
- package/node_modules/deep-extend/CHANGELOG.md +21 -0
- package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → deep-extend}/LICENSE +3 -1
- package/node_modules/deep-extend/package.json +21 -4
- package/node_modules/delayed-stream/package.json +20 -2
- package/node_modules/delegates/package.json +21 -4
- package/node_modules/ecc-jsbn/package.json +20 -2
- package/node_modules/escape-string-regexp/license +21 -0
- package/node_modules/escape-string-regexp/package.json +21 -4
- package/node_modules/extend/package.json +20 -2
- package/node_modules/extsprintf/package.json +20 -3
- package/node_modules/forever-agent/package.json +20 -2
- package/node_modules/form-data/package.json +21 -4
- package/node_modules/fs.realpath/LICENSE +43 -0
- package/node_modules/fs.realpath/README.md +33 -0
- package/node_modules/fs.realpath/index.js +66 -0
- package/node_modules/fs.realpath/old.js +303 -0
- package/node_modules/fs.realpath/package.json +86 -0
- package/node_modules/fstream/.travis.yml +4 -4
- package/node_modules/fstream/lib/collect.js +2 -0
- package/node_modules/fstream/package.json +37 -15
- package/node_modules/fstream-ignore/package.json +45 -17
- package/node_modules/gauge/CHANGELOG.md +131 -0
- package/node_modules/gauge/CHANGELOG.md~ +123 -0
- package/node_modules/gauge/README.md +317 -88
- package/node_modules/gauge/README.md~ +393 -0
- package/node_modules/gauge/base-theme.js +14 -0
- package/node_modules/gauge/error.js +24 -0
- package/node_modules/gauge/has-color.js +12 -0
- package/node_modules/gauge/index.js +226 -0
- package/node_modules/gauge/package.json +67 -21
- package/node_modules/gauge/plumbing.js +47 -0
- package/node_modules/gauge/process.js +3 -0
- package/node_modules/gauge/progress-bar.js +29 -219
- package/node_modules/gauge/render-template.js +181 -0
- package/node_modules/gauge/set-immediate.js +7 -0
- package/node_modules/gauge/set-interval.js +3 -0
- package/node_modules/gauge/spin.js +5 -0
- package/node_modules/gauge/template-item.js +73 -0
- package/node_modules/gauge/theme-set.js +115 -0
- package/node_modules/gauge/themes.js +54 -0
- package/node_modules/gauge/wide-truncate.js +25 -0
- package/node_modules/generate-function/package.json +20 -2
- package/node_modules/generate-object-property/package.json +20 -2
- package/node_modules/getpass/.npmignore +8 -0
- package/node_modules/getpass/.travis.yml +9 -0
- package/node_modules/getpass/LICENSE +18 -0
- package/node_modules/getpass/README.md +32 -0
- package/node_modules/getpass/lib/index.js +123 -0
- package/node_modules/getpass/node_modules/assert-plus/AUTHORS +6 -0
- package/node_modules/getpass/node_modules/assert-plus/CHANGES.md +14 -0
- package/node_modules/getpass/node_modules/assert-plus/README.md +162 -0
- package/node_modules/getpass/node_modules/assert-plus/assert.js +211 -0
- package/node_modules/getpass/node_modules/assert-plus/package.json +107 -0
- package/node_modules/getpass/package.json +82 -0
- package/node_modules/glob/changelog.md +67 -0
- package/node_modules/{rimraf/node_modules/glob → glob}/glob.js +2 -1
- package/node_modules/glob/package.json +103 -0
- package/node_modules/{rimraf/node_modules/glob → glob}/sync.js +2 -1
- package/node_modules/graceful-fs/LICENSE +15 -0
- package/node_modules/graceful-fs/README.md +82 -2
- package/node_modules/graceful-fs/package.json +30 -12
- package/node_modules/graceful-readlink/package.json +20 -2
- package/node_modules/har-validator/LICENSE +13 -0
- package/node_modules/har-validator/package.json +20 -2
- package/node_modules/has-ansi/license +21 -0
- package/node_modules/has-ansi/package.json +20 -2
- package/node_modules/has-color/index.js +32 -0
- package/node_modules/has-color/package.json +97 -0
- package/node_modules/has-color/readme.md +30 -0
- package/node_modules/has-unicode/index.js +3 -8
- package/node_modules/has-unicode/package.json +36 -12
- package/node_modules/hawk/package.json +20 -2
- package/node_modules/hoek/package.json +20 -2
- package/node_modules/http-signature/package.json +20 -2
- package/node_modules/inflight/package.json +97 -0
- package/node_modules/inherits/package.json +16 -9
- package/node_modules/ini/package.json +21 -4
- package/node_modules/is-fullwidth-code-point/index.js +46 -0
- package/node_modules/is-fullwidth-code-point/license +21 -0
- package/node_modules/is-fullwidth-code-point/package.json +100 -0
- package/node_modules/is-fullwidth-code-point/readme.md +39 -0
- package/node_modules/is-my-json-valid/package.json +21 -4
- package/node_modules/is-property/package.json +20 -2
- package/node_modules/is-typedarray/package.json +20 -2
- package/node_modules/isarray/package.json +21 -2
- package/node_modules/isstream/package.json +20 -2
- package/node_modules/jodid25519/package.json +19 -1
- package/node_modules/jsbn/package.json +19 -1
- package/node_modules/json-schema/package.json +20 -2
- package/node_modules/json-stringify-safe/package.json +20 -2
- package/node_modules/jsonpointer/package.json +19 -1
- package/node_modules/jsprim/CHANGES.md +5 -0
- package/node_modules/jsprim/README.md +13 -4
- package/node_modules/jsprim/lib/jsprim.js +12 -2
- package/node_modules/jsprim/package.json +33 -11
- package/node_modules/mime-db/HISTORY.md +21 -0
- package/node_modules/mime-db/db.json +53 -1
- package/node_modules/mime-db/package.json +36 -19
- package/node_modules/mime-types/HISTORY.md +6 -0
- package/node_modules/mime-types/package.json +33 -16
- package/node_modules/{fstream-ignore/node_modules/minimatch → minimatch}/README.md +2 -9
- package/node_modules/{fstream-ignore/node_modules/minimatch → minimatch}/minimatch.js +15 -3
- package/node_modules/{rimraf/node_modules/glob/node_modules/minimatch → minimatch}/package.json +37 -14
- package/node_modules/mkdirp/package.json +10 -8
- package/node_modules/ms/History.md +66 -0
- package/node_modules/ms/package.json +19 -1
- package/node_modules/node-pre-gyp/CHANGELOG.md +21 -0
- package/node_modules/node-pre-gyp/appveyor.yml +2 -2
- package/node_modules/node-pre-gyp/lib/install.js +12 -2
- package/node_modules/node-pre-gyp/lib/testbinary.js +9 -9
- package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +84 -0
- package/node_modules/node-pre-gyp/package.json +21 -31
- package/node_modules/node-uuid/package.json +20 -2
- package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/package.json +21 -3
- package/node_modules/npmlog/CHANGELOG.md +36 -0
- package/node_modules/npmlog/CHANGELOG.md~ +31 -0
- package/node_modules/npmlog/README.md +16 -1
- package/node_modules/npmlog/log.js +97 -50
- package/node_modules/npmlog/package.json +43 -17
- package/node_modules/number-is-nan/index.js +4 -0
- package/node_modules/number-is-nan/license +21 -0
- package/node_modules/number-is-nan/package.json +94 -0
- package/node_modules/number-is-nan/readme.md +30 -0
- package/node_modules/oauth-sign/package.json +36 -12
- package/node_modules/object-assign/index.js +83 -0
- package/node_modules/object-assign/license +21 -0
- package/node_modules/object-assign/package.json +106 -0
- package/node_modules/object-assign/readme.md +56 -0
- package/node_modules/once/package.json +22 -2
- package/node_modules/path-is-absolute/license +21 -0
- package/node_modules/{rimraf/node_modules/glob/node_modules/path-is-absolute → path-is-absolute}/package.json +22 -4
- package/node_modules/pinkie/license +21 -0
- package/node_modules/pinkie/package.json +21 -4
- package/node_modules/pinkie-promise/index.js +1 -1
- package/node_modules/pinkie-promise/license +21 -0
- package/node_modules/pinkie-promise/package.json +32 -10
- package/node_modules/process-nextick-args/index.js +31 -8
- package/node_modules/process-nextick-args/package.json +33 -10
- package/node_modules/qs/.eslintrc +5 -3
- package/node_modules/qs/.jscs.json +176 -0
- package/node_modules/qs/CHANGELOG.md +10 -0
- package/node_modules/qs/dist/qs.js +75 -63
- package/node_modules/qs/lib/parse.js +32 -29
- package/node_modules/qs/lib/stringify.js +37 -30
- package/node_modules/qs/lib/utils.js +6 -4
- package/node_modules/qs/package.json +41 -18
- package/node_modules/qs/test/parse.js +30 -0
- package/node_modules/qs/test/stringify.js +70 -0
- package/node_modules/rc/node_modules/minimist/package.json +20 -2
- package/node_modules/rc/package.json +21 -4
- package/node_modules/readable-stream/.npmignore +4 -1
- package/node_modules/readable-stream/.travis.yml +2 -0
- package/node_modules/readable-stream/README.md +2 -2
- package/node_modules/readable-stream/doc/stream.md +1772 -0
- package/node_modules/readable-stream/lib/_stream_readable.js +33 -20
- package/node_modules/readable-stream/lib/_stream_transform.js +3 -3
- package/node_modules/readable-stream/lib/_stream_writable.js +25 -15
- package/node_modules/readable-stream/package.json +44 -15
- package/node_modules/readable-stream/readable.js +4 -0
- package/node_modules/request/.eslintrc +1 -1
- package/node_modules/request/.travis.yml +9 -3
- package/node_modules/request/CHANGELOG.md +46 -8
- package/node_modules/request/CONTRIBUTING.md +41 -4
- package/node_modules/request/README.md +9 -6
- package/node_modules/request/codecov.yml +2 -0
- package/node_modules/request/index.js +6 -5
- package/node_modules/request/lib/helpers.js +3 -3
- package/node_modules/request/package.json +52 -30
- package/node_modules/request/request.js +58 -43
- package/node_modules/rimraf/package.json +33 -16
- package/node_modules/rimraf/rimraf.js +10 -2
- package/node_modules/semver/README.md +27 -8
- package/node_modules/semver/package.json +38 -12
- package/node_modules/semver/range.bnf +1 -1
- package/node_modules/semver/semver.js +7 -1
- package/node_modules/set-blocking/CHANGELOG.md +26 -0
- package/node_modules/set-blocking/LICENSE.txt +14 -0
- package/node_modules/set-blocking/README.md +31 -0
- package/node_modules/set-blocking/index.js +7 -0
- package/node_modules/set-blocking/package.json +98 -0
- package/node_modules/signal-exit/CHANGELOG.md +17 -0
- package/node_modules/signal-exit/LICENSE.txt +14 -0
- package/node_modules/signal-exit/README.md +40 -0
- package/node_modules/signal-exit/index.js +148 -0
- package/node_modules/signal-exit/package.json +98 -0
- package/node_modules/signal-exit/signals.js +52 -0
- package/node_modules/sntp/package.json +20 -2
- package/node_modules/sshpk/.travis.yml +3 -3
- package/node_modules/sshpk/README.md +26 -7
- package/node_modules/sshpk/bin/sshpk-conv +14 -2
- package/node_modules/sshpk/bin/sshpk-sign +16 -1
- package/node_modules/sshpk/lib/errors.js +14 -1
- package/node_modules/sshpk/lib/formats/auto.js +8 -8
- package/node_modules/sshpk/lib/formats/pem.js +39 -5
- package/node_modules/sshpk/lib/formats/pkcs1.js +4 -4
- package/node_modules/sshpk/lib/formats/pkcs8.js +4 -4
- package/node_modules/sshpk/lib/formats/rfc4253.js +2 -2
- package/node_modules/sshpk/lib/formats/ssh-private.js +3 -3
- package/node_modules/sshpk/lib/formats/ssh.js +2 -2
- package/node_modules/sshpk/lib/index.js +2 -1
- package/node_modules/sshpk/lib/key.js +20 -17
- package/node_modules/sshpk/lib/private-key.js +19 -12
- package/node_modules/sshpk/lib/utils.js +40 -1
- package/node_modules/sshpk/node_modules/assert-plus/AUTHORS +6 -0
- package/node_modules/sshpk/node_modules/assert-plus/CHANGES.md +14 -0
- package/node_modules/sshpk/node_modules/assert-plus/README.md +162 -0
- package/node_modules/sshpk/node_modules/assert-plus/assert.js +211 -0
- package/node_modules/sshpk/node_modules/assert-plus/package.json +107 -0
- package/node_modules/sshpk/package.json +48 -30
- package/node_modules/string-width/index.js +32 -0
- package/node_modules/string-width/license +21 -0
- package/node_modules/string-width/package.json +111 -0
- package/node_modules/string-width/readme.md +41 -0
- package/node_modules/string_decoder/package.json +21 -2
- package/node_modules/stringstream/package.json +20 -2
- package/node_modules/strip-ansi/license +21 -0
- package/node_modules/strip-ansi/package.json +24 -5
- package/node_modules/strip-json-comments/license +21 -0
- package/node_modules/strip-json-comments/package.json +20 -2
- package/node_modules/supports-color/license +21 -0
- package/node_modules/supports-color/package.json +20 -2
- package/node_modules/tar/package.json +20 -2
- package/node_modules/tar-pack/package.json +34 -17
- package/node_modules/tough-cookie/LICENSE +27 -0
- package/node_modules/tough-cookie/package.json +21 -4
- package/node_modules/tunnel-agent/package.json +35 -10
- package/node_modules/tweetnacl/CHANGELOG.md +0 -53
- package/node_modules/tweetnacl/README.md +42 -24
- package/node_modules/tweetnacl/nacl-fast.js +52 -22
- package/node_modules/tweetnacl/nacl-fast.min.js +2 -2
- package/node_modules/tweetnacl/nacl.js +51 -21
- package/node_modules/tweetnacl/nacl.min.js +1 -1
- package/node_modules/tweetnacl/package.json +56 -30
- package/node_modules/uid-number/package.json +21 -4
- package/node_modules/util-deprecate/package.json +21 -2
- package/node_modules/verror/package.json +20 -3
- package/node_modules/wide-align/.npmignore +5 -0
- package/node_modules/wide-align/LICENSE +14 -0
- package/node_modules/wide-align/README.md +47 -0
- package/node_modules/wide-align/align.js +65 -0
- package/node_modules/wide-align/package.json +85 -0
- package/node_modules/wide-align/test/align.js +37 -0
- package/node_modules/wrappy/package.json +44 -14
- package/node_modules/xtend/package.json +20 -2
- package/package.json +2 -2
- package/node_modules/ansi/.jshintrc +0 -4
- package/node_modules/ansi/History.md +0 -23
- package/node_modules/ansi/LICENSE +0 -24
- package/node_modules/ansi/README.md +0 -98
- package/node_modules/ansi/examples/beep/index.js +0 -16
- package/node_modules/ansi/examples/clear/index.js +0 -15
- package/node_modules/ansi/examples/cursorPosition.js +0 -32
- package/node_modules/ansi/examples/progress/index.js +0 -87
- package/node_modules/ansi/lib/ansi.js +0 -405
- package/node_modules/ansi/lib/newlines.js +0 -71
- package/node_modules/ansi/package.json +0 -69
- package/node_modules/aws4/node_modules/lru-cache/README.md +0 -142
- package/node_modules/aws4/node_modules/lru-cache/lib/lru-cache.js +0 -469
- package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/README.md +0 -60
- package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/map.js +0 -9
- package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/package.json +0 -60
- package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/pseudomap.js +0 -113
- package/node_modules/aws4/node_modules/lru-cache/node_modules/pseudomap/test/basic.js +0 -86
- package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/.npmignore +0 -4
- package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/.travis.yml +0 -7
- package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/CONTRIBUTING.md +0 -4
- package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/README.md +0 -204
- package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/package.json +0 -60
- package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/test/basic.js +0 -188
- package/node_modules/aws4/node_modules/lru-cache/node_modules/yallist/yallist.js +0 -360
- package/node_modules/aws4/node_modules/lru-cache/package.json +0 -78
- package/node_modules/block-stream/bench/block-stream-pause.js +0 -70
- package/node_modules/block-stream/bench/block-stream.js +0 -68
- package/node_modules/block-stream/bench/dropper-pause.js +0 -70
- package/node_modules/block-stream/bench/dropper.js +0 -68
- package/node_modules/block-stream/test/basic.js +0 -27
- package/node_modules/block-stream/test/nopad-thorough.js +0 -68
- package/node_modules/block-stream/test/nopad.js +0 -57
- package/node_modules/block-stream/test/pause-resume.js +0 -73
- package/node_modules/block-stream/test/thorough.js +0 -68
- package/node_modules/block-stream/test/two-stream.js +0 -59
- package/node_modules/fstream-ignore/.npmignore +0 -1
- package/node_modules/fstream-ignore/example/basic.js +0 -13
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/.npmignore +0 -3
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/example.js +0 -8
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore +0 -2
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml +0 -3
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile +0 -6
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/README.md +0 -89
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js +0 -5
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json +0 -80
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js +0 -84
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json +0 -91
- package/node_modules/fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/package.json +0 -86
- package/node_modules/fstream-ignore/node_modules/minimatch/package.json +0 -67
- package/node_modules/fstream-ignore/test/.ignore +0 -2
- package/node_modules/fstream-ignore/test/.npmignore +0 -1
- package/node_modules/fstream-ignore/test/00-setup.js +0 -71
- package/node_modules/fstream-ignore/test/basic.js +0 -28
- package/node_modules/fstream-ignore/test/common.js +0 -40
- package/node_modules/fstream-ignore/test/ignore-most.js +0 -41
- package/node_modules/fstream-ignore/test/nested-ignores.js +0 -51
- package/node_modules/fstream-ignore/test/read-file-order.js +0 -81
- package/node_modules/fstream-ignore/test/unignore-child.js +0 -38
- package/node_modules/fstream-ignore/test/zz-cleanup.js +0 -10
- package/node_modules/gauge/.npmignore +0 -32
- package/node_modules/gauge/example.png +0 -0
- package/node_modules/gauge/test/progress-bar.js +0 -176
- package/node_modules/has-unicode/.npmignore +0 -32
- package/node_modules/has-unicode/test/index.js +0 -26
- package/node_modules/lodash.pad/README.md +0 -18
- package/node_modules/lodash.pad/index.js +0 -296
- package/node_modules/lodash.pad/package.json +0 -91
- package/node_modules/lodash.padend/README.md +0 -18
- package/node_modules/lodash.padend/index.js +0 -285
- package/node_modules/lodash.padend/package.json +0 -91
- package/node_modules/lodash.padstart/README.md +0 -18
- package/node_modules/lodash.padstart/index.js +0 -285
- package/node_modules/lodash.padstart/package.json +0 -91
- package/node_modules/lodash.repeat/README.md +0 -18
- package/node_modules/lodash.repeat/index.js +0 -215
- package/node_modules/lodash.repeat/package.json +0 -92
- package/node_modules/lodash.tostring/LICENSE +0 -23
- package/node_modules/lodash.tostring/README.md +0 -18
- package/node_modules/lodash.tostring/index.js +0 -164
- package/node_modules/lodash.tostring/package.json +0 -91
- package/node_modules/node-pre-gyp/README.md +0 -570
- package/node_modules/node-pre-gyp/node_modules/nopt/.npmignore +0 -1
- package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/.npmignore +0 -4
- package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/.travis.yml +0 -5
- package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/CONTRIBUTING.md +0 -3
- package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/package.json +0 -56
- package/node_modules/node-pre-gyp/node_modules/nopt/node_modules/abbrev/test.js +0 -47
- package/node_modules/npmlog/.nyc_output/64996.json +0 -1
- package/node_modules/npmlog/.nyc_output/64998.json +0 -1
- package/node_modules/npmlog/.nyc_output/65000.json +0 -1
- package/node_modules/npmlog/.travis.yml +0 -14
- package/node_modules/npmlog/example.js +0 -39
- package/node_modules/npmlog/test/basic.js +0 -235
- package/node_modules/npmlog/test/progress.js +0 -131
- package/node_modules/oauth-sign/test.js +0 -89
- package/node_modules/qs/.npmignore +0 -18
- package/node_modules/qs/.travis.yml +0 -69
- package/node_modules/qs/README.md +0 -335
- package/node_modules/qs/bower.json +0 -22
- package/node_modules/qs/component.json +0 -15
- package/node_modules/rimraf/node_modules/glob/node_modules/inflight/.eslintrc +0 -17
- package/node_modules/rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy/README.md +0 -36
- package/node_modules/rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy/package.json +0 -59
- package/node_modules/rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy/test/basic.js +0 -51
- package/node_modules/rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js +0 -33
- package/node_modules/rimraf/node_modules/glob/node_modules/inflight/package.json +0 -68
- package/node_modules/rimraf/node_modules/glob/node_modules/inflight/test.js +0 -97
- package/node_modules/rimraf/node_modules/glob/node_modules/inherits/LICENSE +0 -16
- package/node_modules/rimraf/node_modules/glob/node_modules/inherits/README.md +0 -42
- package/node_modules/rimraf/node_modules/glob/node_modules/inherits/inherits.js +0 -1
- package/node_modules/rimraf/node_modules/glob/node_modules/inherits/inherits_browser.js +0 -23
- package/node_modules/rimraf/node_modules/glob/node_modules/inherits/package.json +0 -59
- package/node_modules/rimraf/node_modules/glob/node_modules/inherits/test.js +0 -25
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/README.md +0 -216
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/minimatch.js +0 -912
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/README.md +0 -122
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/example.js +0 -8
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/index.js +0 -191
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.npmignore +0 -2
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/.travis.yml +0 -3
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/LICENSE.md +0 -21
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/Makefile +0 -6
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/example.js +0 -5
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js +0 -50
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/test/balanced.js +0 -84
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/.travis.yml +0 -4
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/README.markdown +0 -62
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/example/map.js +0 -6
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js +0 -13
- package/node_modules/rimraf/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/test/map.js +0 -39
- package/node_modules/rimraf/node_modules/glob/node_modules/once/README.md +0 -51
- package/node_modules/rimraf/node_modules/glob/node_modules/once/node_modules/wrappy/README.md +0 -36
- package/node_modules/rimraf/node_modules/glob/node_modules/once/node_modules/wrappy/package.json +0 -59
- package/node_modules/rimraf/node_modules/glob/node_modules/once/node_modules/wrappy/test/basic.js +0 -51
- package/node_modules/rimraf/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js +0 -33
- package/node_modules/rimraf/node_modules/glob/node_modules/once/once.js +0 -21
- package/node_modules/rimraf/node_modules/glob/node_modules/once/package.json +0 -71
- package/node_modules/rimraf/node_modules/glob/package.json +0 -85
- package/node_modules/semver/.npmignore +0 -4
- package/node_modules/semver/.travis.yml +0 -5
- package/node_modules/semver/test/big-numbers.js +0 -31
- package/node_modules/semver/test/clean.js +0 -29
- package/node_modules/semver/test/gtr.js +0 -173
- package/node_modules/semver/test/index.js +0 -698
- package/node_modules/semver/test/ltr.js +0 -181
- package/node_modules/semver/test/major-minor-patch.js +0 -72
- package/node_modules/tunnel-agent/.jshintrc +0 -5
- package/node_modules/tweetnacl/COPYING.txt +0 -9
- package/node_modules/wrappy/test/basic.js +0 -51
- package/test/fsevents.js +0 -27
- package/test/function.js +0 -93
- /package/node_modules/{aws4/node_modules/lru-cache/node_modules/pseudomap → abbrev}/LICENSE +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt/node_modules/abbrev → abbrev}/README.md +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt/node_modules/abbrev → abbrev}/abbrev.js +0 -0
- /package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match → balanced-match}/LICENSE.md +0 -0
- /package/node_modules/{readable-stream → bl/node_modules/readable-stream}/.zuul.yml +0 -0
- /package/node_modules/{readable-stream → bl/node_modules/readable-stream}/doc/stream.markdown +0 -0
- /package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion → brace-expansion}/README.md +0 -0
- /package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion → brace-expansion}/index.js +0 -0
- /package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/.travis.yml +0 -0
- /package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/LICENSE +0 -0
- /package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/README.markdown +0 -0
- /package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/example/map.js +0 -0
- /package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/index.js +0 -0
- /package/node_modules/{fstream-ignore/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map → concat-map}/test/map.js +0 -0
- /package/node_modules/{aws4/node_modules/lru-cache/node_modules/yallist → glob}/LICENSE +0 -0
- /package/node_modules/{rimraf/node_modules/glob → glob}/README.md +0 -0
- /package/node_modules/{rimraf/node_modules/glob → glob}/common.js +0 -0
- /package/node_modules/{rimraf/node_modules/glob/node_modules/inflight → inflight}/LICENSE +0 -0
- /package/node_modules/{rimraf/node_modules/glob/node_modules/inflight → inflight}/README.md +0 -0
- /package/node_modules/{rimraf/node_modules/glob/node_modules/inflight → inflight}/inflight.js +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt → ini}/LICENSE +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt/node_modules/abbrev → minimatch}/LICENSE +0 -0
- /package/node_modules/{ansi → nopt}/.npmignore +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/.travis.yml +0 -0
- /package/node_modules/{rimraf/node_modules/glob/node_modules/inflight/node_modules/wrappy → nopt}/LICENSE +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/README.md +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/bin/nopt.js +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/examples/my-program.js +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/lib/nopt.js +0 -0
- /package/node_modules/{node-pre-gyp/node_modules/nopt → nopt}/test/basic.js +0 -0
- /package/node_modules/{rimraf/node_modules/glob/node_modules/once/node_modules/wrappy → once}/LICENSE +0 -0
- /package/node_modules/{rimraf/node_modules/glob/node_modules/path-is-absolute → path-is-absolute}/index.js +0 -0
- /package/node_modules/{rimraf/node_modules/glob/node_modules/path-is-absolute → path-is-absolute}/readme.md +0 -0
@@ -77,11 +77,12 @@ function Key(opts) {
|
|
77
77
|
|
78
78
|
Key.formats = formats;
|
79
79
|
|
80
|
-
Key.prototype.toBuffer = function (format) {
|
80
|
+
Key.prototype.toBuffer = function (format, options) {
|
81
81
|
if (format === undefined)
|
82
82
|
format = 'ssh';
|
83
83
|
assert.string(format, 'format');
|
84
84
|
assert.object(formats[format], 'formats[format]');
|
85
|
+
assert.optionalObject(options, 'options');
|
85
86
|
|
86
87
|
if (format === 'rfc4253') {
|
87
88
|
if (this._rfc4253Cache === undefined)
|
@@ -89,11 +90,11 @@ Key.prototype.toBuffer = function (format) {
|
|
89
90
|
return (this._rfc4253Cache);
|
90
91
|
}
|
91
92
|
|
92
|
-
return (formats[format].write(this));
|
93
|
+
return (formats[format].write(this, options));
|
93
94
|
};
|
94
95
|
|
95
|
-
Key.prototype.toString = function (format) {
|
96
|
-
return (this.toBuffer(format).toString());
|
96
|
+
Key.prototype.toString = function (format, options) {
|
97
|
+
return (this.toBuffer(format, options).toString());
|
97
98
|
};
|
98
99
|
|
99
100
|
Key.prototype.hash = function (algo) {
|
@@ -107,9 +108,6 @@ Key.prototype.hash = function (algo) {
|
|
107
108
|
|
108
109
|
var hash = crypto.createHash(algo).
|
109
110
|
update(this.toBuffer('rfc4253')).digest();
|
110
|
-
/* Workaround for node 0.8 */
|
111
|
-
if (typeof (hash) === 'string')
|
112
|
-
hash = new Buffer(hash, 'binary');
|
113
111
|
this._hashCache[algo] = hash;
|
114
112
|
return (hash);
|
115
113
|
};
|
@@ -158,10 +156,7 @@ Key.prototype.createVerify = function (hashAlgo) {
|
|
158
156
|
|
159
157
|
var v, nm, err;
|
160
158
|
try {
|
161
|
-
nm =
|
162
|
-
if (this.type === 'ecdsa')
|
163
|
-
nm = 'ecdsa-with-';
|
164
|
-
nm += hashAlgo.toUpperCase();
|
159
|
+
nm = hashAlgo.toUpperCase();
|
165
160
|
v = crypto.createVerify(nm);
|
166
161
|
} catch (e) {
|
167
162
|
err = e;
|
@@ -213,26 +208,34 @@ Key.prototype.createDiffieHellman = function () {
|
|
213
208
|
};
|
214
209
|
Key.prototype.createDH = Key.prototype.createDiffieHellman;
|
215
210
|
|
216
|
-
Key.parse = function (data, format,
|
211
|
+
Key.parse = function (data, format, options) {
|
217
212
|
if (typeof (data) !== 'string')
|
218
213
|
assert.buffer(data, 'data');
|
219
214
|
if (format === undefined)
|
220
215
|
format = 'auto';
|
221
216
|
assert.string(format, 'format');
|
222
|
-
if (
|
223
|
-
|
217
|
+
if (typeof (options) === 'string')
|
218
|
+
options = { filename: options };
|
219
|
+
assert.optionalObject(options, 'options');
|
220
|
+
if (options === undefined)
|
221
|
+
options = {};
|
222
|
+
assert.optionalString(options.filename, 'options.filename');
|
223
|
+
if (options.filename === undefined)
|
224
|
+
options.filename = '(unnamed)';
|
224
225
|
|
225
226
|
assert.object(formats[format], 'formats[format]');
|
226
227
|
|
227
228
|
try {
|
228
|
-
var k = formats[format].read(data);
|
229
|
+
var k = formats[format].read(data, options);
|
229
230
|
if (k instanceof PrivateKey)
|
230
231
|
k = k.toPublic();
|
231
232
|
if (!k.comment)
|
232
|
-
k.comment =
|
233
|
+
k.comment = options.filename;
|
233
234
|
return (k);
|
234
235
|
} catch (e) {
|
235
|
-
|
236
|
+
if (e.name === 'KeyEncryptedError')
|
237
|
+
throw (e);
|
238
|
+
throw (new KeyParseError(options.filename, format, e));
|
236
239
|
}
|
237
240
|
};
|
238
241
|
|
@@ -23,6 +23,7 @@ var Key = require('./key');
|
|
23
23
|
|
24
24
|
var InvalidAlgorithmError = errs.InvalidAlgorithmError;
|
25
25
|
var KeyParseError = errs.KeyParseError;
|
26
|
+
var KeyEncryptedError = errs.KeyEncryptedError;
|
26
27
|
|
27
28
|
var formats = {};
|
28
29
|
formats['auto'] = require('./formats/auto');
|
@@ -44,13 +45,14 @@ util.inherits(PrivateKey, Key);
|
|
44
45
|
|
45
46
|
PrivateKey.formats = formats;
|
46
47
|
|
47
|
-
PrivateKey.prototype.toBuffer = function (format) {
|
48
|
+
PrivateKey.prototype.toBuffer = function (format, options) {
|
48
49
|
if (format === undefined)
|
49
50
|
format = 'pkcs1';
|
50
51
|
assert.string(format, 'format');
|
51
52
|
assert.object(formats[format], 'formats[format]');
|
53
|
+
assert.optionalObject(options, 'options');
|
52
54
|
|
53
|
-
return (formats[format].write(this));
|
55
|
+
return (formats[format].write(this, options));
|
54
56
|
};
|
55
57
|
|
56
58
|
PrivateKey.prototype.hash = function (algo) {
|
@@ -146,10 +148,7 @@ PrivateKey.prototype.createSign = function (hashAlgo) {
|
|
146
148
|
|
147
149
|
var v, nm, err;
|
148
150
|
try {
|
149
|
-
nm =
|
150
|
-
if (this.type === 'ecdsa')
|
151
|
-
nm = 'ecdsa-with-';
|
152
|
-
nm += hashAlgo.toUpperCase();
|
151
|
+
nm = hashAlgo.toUpperCase();
|
153
152
|
v = crypto.createSign(nm);
|
154
153
|
} catch (e) {
|
155
154
|
err = e;
|
@@ -175,25 +174,33 @@ PrivateKey.prototype.createSign = function (hashAlgo) {
|
|
175
174
|
return (v);
|
176
175
|
};
|
177
176
|
|
178
|
-
PrivateKey.parse = function (data, format,
|
177
|
+
PrivateKey.parse = function (data, format, options) {
|
179
178
|
if (typeof (data) !== 'string')
|
180
179
|
assert.buffer(data, 'data');
|
181
180
|
if (format === undefined)
|
182
181
|
format = 'auto';
|
183
182
|
assert.string(format, 'format');
|
184
|
-
if (
|
185
|
-
|
183
|
+
if (typeof (options) === 'string')
|
184
|
+
options = { filename: options };
|
185
|
+
assert.optionalObject(options, 'options');
|
186
|
+
if (options === undefined)
|
187
|
+
options = {};
|
188
|
+
assert.optionalString(options.filename, 'options.filename');
|
189
|
+
if (options.filename === undefined)
|
190
|
+
options.filename = '(unnamed)';
|
186
191
|
|
187
192
|
assert.object(formats[format], 'formats[format]');
|
188
193
|
|
189
194
|
try {
|
190
|
-
var k = formats[format].read(data);
|
195
|
+
var k = formats[format].read(data, options);
|
191
196
|
assert.ok(k instanceof PrivateKey, 'key is not a private key');
|
192
197
|
if (!k.comment)
|
193
|
-
k.comment =
|
198
|
+
k.comment = options.filename;
|
194
199
|
return (k);
|
195
200
|
} catch (e) {
|
196
|
-
|
201
|
+
if (e.name === 'KeyEncryptedError')
|
202
|
+
throw (e);
|
203
|
+
throw (new KeyParseError(options.filename, format, e));
|
197
204
|
}
|
198
205
|
};
|
199
206
|
|
@@ -8,11 +8,13 @@ module.exports = {
|
|
8
8
|
ecNormalize: ecNormalize,
|
9
9
|
countZeros: countZeros,
|
10
10
|
assertCompatible: assertCompatible,
|
11
|
-
isCompatible: isCompatible
|
11
|
+
isCompatible: isCompatible,
|
12
|
+
opensslKeyDeriv: opensslKeyDeriv
|
12
13
|
};
|
13
14
|
|
14
15
|
var assert = require('assert-plus');
|
15
16
|
var PrivateKey = require('./private-key');
|
17
|
+
var crypto = require('crypto');
|
16
18
|
|
17
19
|
var MAX_CLASS_DEPTH = 3;
|
18
20
|
|
@@ -68,6 +70,43 @@ function assertCompatible(obj, klass, needVer, name) {
|
|
68
70
|
'version ' + needVer[0] + '.' + needVer[1]);
|
69
71
|
}
|
70
72
|
|
73
|
+
var CIPHER_LEN = {
|
74
|
+
'des-ede3-cbc': { key: 7, iv: 8 },
|
75
|
+
'aes-128-cbc': { key: 16, iv: 16 }
|
76
|
+
};
|
77
|
+
var PKCS5_SALT_LEN = 8;
|
78
|
+
|
79
|
+
function opensslKeyDeriv(cipher, salt, passphrase, count) {
|
80
|
+
assert.buffer(salt, 'salt');
|
81
|
+
assert.buffer(passphrase, 'passphrase');
|
82
|
+
assert.number(count, 'iteration count');
|
83
|
+
|
84
|
+
var clen = CIPHER_LEN[cipher];
|
85
|
+
assert.object(clen, 'supported cipher');
|
86
|
+
|
87
|
+
salt = salt.slice(0, PKCS5_SALT_LEN);
|
88
|
+
|
89
|
+
var D, D_prev, bufs;
|
90
|
+
var material = new Buffer(0);
|
91
|
+
while (material.length < clen.key + clen.iv) {
|
92
|
+
bufs = [];
|
93
|
+
if (D_prev)
|
94
|
+
bufs.push(D_prev);
|
95
|
+
bufs.push(passphrase);
|
96
|
+
bufs.push(salt);
|
97
|
+
D = Buffer.concat(bufs);
|
98
|
+
for (var j = 0; j < count; ++j)
|
99
|
+
D = crypto.createHash('md5').update(D).digest();
|
100
|
+
material = Buffer.concat([material, D]);
|
101
|
+
D_prev = D;
|
102
|
+
}
|
103
|
+
|
104
|
+
return ({
|
105
|
+
key: material.slice(0, clen.key),
|
106
|
+
iv: material.slice(clen.key, clen.key + clen.iv)
|
107
|
+
});
|
108
|
+
}
|
109
|
+
|
71
110
|
/* Count leading zero bits on a buffer */
|
72
111
|
function countZeros(buf) {
|
73
112
|
var o = 0, obit = 8;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# assert-plus Changelog
|
2
|
+
|
3
|
+
## 1.0.0
|
4
|
+
|
5
|
+
- *BREAKING* assert.number (and derivatives) now accept Infinity as valid input
|
6
|
+
- Add assert.finite check. Previous assert.number callers should use this if
|
7
|
+
they expect Infinity inputs to throw.
|
8
|
+
|
9
|
+
## 0.2.0
|
10
|
+
|
11
|
+
- Fix `assert.object(null)` so it throws
|
12
|
+
- Fix optional/arrayOf exports for non-type-of asserts
|
13
|
+
- Add optiona/arrayOf exports for Stream/Date/Regex/uuid
|
14
|
+
- Add basic unit test coverage
|
@@ -0,0 +1,162 @@
|
|
1
|
+
# assert-plus
|
2
|
+
|
3
|
+
This library is a super small wrapper over node's assert module that has two
|
4
|
+
things: (1) the ability to disable assertions with the environment variable
|
5
|
+
NODE\_NDEBUG, and (2) some API wrappers for argument testing. Like
|
6
|
+
`assert.string(myArg, 'myArg')`. As a simple example, most of my code looks
|
7
|
+
like this:
|
8
|
+
|
9
|
+
```javascript
|
10
|
+
var assert = require('assert-plus');
|
11
|
+
|
12
|
+
function fooAccount(options, callback) {
|
13
|
+
assert.object(options, 'options');
|
14
|
+
assert.number(options.id, 'options.id');
|
15
|
+
assert.bool(options.isManager, 'options.isManager');
|
16
|
+
assert.string(options.name, 'options.name');
|
17
|
+
assert.arrayOfString(options.email, 'options.email');
|
18
|
+
assert.func(callback, 'callback');
|
19
|
+
|
20
|
+
// Do stuff
|
21
|
+
callback(null, {});
|
22
|
+
}
|
23
|
+
```
|
24
|
+
|
25
|
+
# API
|
26
|
+
|
27
|
+
All methods that *aren't* part of node's core assert API are simply assumed to
|
28
|
+
take an argument, and then a string 'name' that's not a message; `AssertionError`
|
29
|
+
will be thrown if the assertion fails with a message like:
|
30
|
+
|
31
|
+
AssertionError: foo (string) is required
|
32
|
+
at test (/home/mark/work/foo/foo.js:3:9)
|
33
|
+
at Object.<anonymous> (/home/mark/work/foo/foo.js:15:1)
|
34
|
+
at Module._compile (module.js:446:26)
|
35
|
+
at Object..js (module.js:464:10)
|
36
|
+
at Module.load (module.js:353:31)
|
37
|
+
at Function._load (module.js:311:12)
|
38
|
+
at Array.0 (module.js:484:10)
|
39
|
+
at EventEmitter._tickCallback (node.js:190:38)
|
40
|
+
|
41
|
+
from:
|
42
|
+
|
43
|
+
```javascript
|
44
|
+
function test(foo) {
|
45
|
+
assert.string(foo, 'foo');
|
46
|
+
}
|
47
|
+
```
|
48
|
+
|
49
|
+
There you go. You can check that arrays are of a homogeneous type with `Arrayof$Type`:
|
50
|
+
|
51
|
+
```javascript
|
52
|
+
function test(foo) {
|
53
|
+
assert.arrayOfString(foo, 'foo');
|
54
|
+
}
|
55
|
+
```
|
56
|
+
|
57
|
+
You can assert IFF an argument is not `undefined` (i.e., an optional arg):
|
58
|
+
|
59
|
+
```javascript
|
60
|
+
assert.optionalString(foo, 'foo');
|
61
|
+
```
|
62
|
+
|
63
|
+
Lastly, you can opt-out of assertion checking altogether by setting the
|
64
|
+
environment variable `NODE_NDEBUG=1`. This is pseudo-useful if you have
|
65
|
+
lots of assertions, and don't want to pay `typeof ()` taxes to v8 in
|
66
|
+
production. Be advised: The standard functions re-exported from `assert` are
|
67
|
+
also disabled in assert-plus if NDEBUG is specified. Using them directly from
|
68
|
+
the `assert` module avoids this behavior.
|
69
|
+
|
70
|
+
The complete list of APIs is:
|
71
|
+
|
72
|
+
* assert.array
|
73
|
+
* assert.bool
|
74
|
+
* assert.buffer
|
75
|
+
* assert.func
|
76
|
+
* assert.number
|
77
|
+
* assert.finite
|
78
|
+
* assert.object
|
79
|
+
* assert.string
|
80
|
+
* assert.stream
|
81
|
+
* assert.date
|
82
|
+
* assert.regexp
|
83
|
+
* assert.uuid
|
84
|
+
* assert.arrayOfArray
|
85
|
+
* assert.arrayOfBool
|
86
|
+
* assert.arrayOfBuffer
|
87
|
+
* assert.arrayOfFunc
|
88
|
+
* assert.arrayOfNumber
|
89
|
+
* assert.arrayOfFinite
|
90
|
+
* assert.arrayOfObject
|
91
|
+
* assert.arrayOfString
|
92
|
+
* assert.arrayOfStream
|
93
|
+
* assert.arrayOfDate
|
94
|
+
* assert.arrayOfRegexp
|
95
|
+
* assert.arrayOfUuid
|
96
|
+
* assert.optionalArray
|
97
|
+
* assert.optionalBool
|
98
|
+
* assert.optionalBuffer
|
99
|
+
* assert.optionalFunc
|
100
|
+
* assert.optionalNumber
|
101
|
+
* assert.optionalFinite
|
102
|
+
* assert.optionalObject
|
103
|
+
* assert.optionalString
|
104
|
+
* assert.optionalStream
|
105
|
+
* assert.optionalDate
|
106
|
+
* assert.optionalRegexp
|
107
|
+
* assert.optionalUuid
|
108
|
+
* assert.optionalArrayOfArray
|
109
|
+
* assert.optionalArrayOfBool
|
110
|
+
* assert.optionalArrayOfBuffer
|
111
|
+
* assert.optionalArrayOfFunc
|
112
|
+
* assert.optionalArrayOfNumber
|
113
|
+
* assert.optionalArrayOfFinite
|
114
|
+
* assert.optionalArrayOfObject
|
115
|
+
* assert.optionalArrayOfString
|
116
|
+
* assert.optionalArrayOfStream
|
117
|
+
* assert.optionalArrayOfDate
|
118
|
+
* assert.optionalArrayOfRegexp
|
119
|
+
* assert.optionalArrayOfUuid
|
120
|
+
* assert.AssertionError
|
121
|
+
* assert.fail
|
122
|
+
* assert.ok
|
123
|
+
* assert.equal
|
124
|
+
* assert.notEqual
|
125
|
+
* assert.deepEqual
|
126
|
+
* assert.notDeepEqual
|
127
|
+
* assert.strictEqual
|
128
|
+
* assert.notStrictEqual
|
129
|
+
* assert.throws
|
130
|
+
* assert.doesNotThrow
|
131
|
+
* assert.ifError
|
132
|
+
|
133
|
+
# Installation
|
134
|
+
|
135
|
+
npm install assert-plus
|
136
|
+
|
137
|
+
## License
|
138
|
+
|
139
|
+
The MIT License (MIT)
|
140
|
+
Copyright (c) 2012 Mark Cavage
|
141
|
+
|
142
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
143
|
+
this software and associated documentation files (the "Software"), to deal in
|
144
|
+
the Software without restriction, including without limitation the rights to
|
145
|
+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
146
|
+
the Software, and to permit persons to whom the Software is furnished to do so,
|
147
|
+
subject to the following conditions:
|
148
|
+
|
149
|
+
The above copyright notice and this permission notice shall be included in all
|
150
|
+
copies or substantial portions of the Software.
|
151
|
+
|
152
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
153
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
154
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
155
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
156
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
157
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
158
|
+
SOFTWARE.
|
159
|
+
|
160
|
+
## Bugs
|
161
|
+
|
162
|
+
See <https://github.com/mcavage/node-assert-plus/issues>.
|
@@ -0,0 +1,211 @@
|
|
1
|
+
// Copyright (c) 2012, Mark Cavage. All rights reserved.
|
2
|
+
// Copyright 2015 Joyent, Inc.
|
3
|
+
|
4
|
+
var assert = require('assert');
|
5
|
+
var Stream = require('stream').Stream;
|
6
|
+
var util = require('util');
|
7
|
+
|
8
|
+
|
9
|
+
///--- Globals
|
10
|
+
|
11
|
+
/* JSSTYLED */
|
12
|
+
var UUID_REGEXP = /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/;
|
13
|
+
|
14
|
+
|
15
|
+
///--- Internal
|
16
|
+
|
17
|
+
function _capitalize(str) {
|
18
|
+
return (str.charAt(0).toUpperCase() + str.slice(1));
|
19
|
+
}
|
20
|
+
|
21
|
+
function _toss(name, expected, oper, arg, actual) {
|
22
|
+
throw new assert.AssertionError({
|
23
|
+
message: util.format('%s (%s) is required', name, expected),
|
24
|
+
actual: (actual === undefined) ? typeof (arg) : actual(arg),
|
25
|
+
expected: expected,
|
26
|
+
operator: oper || '===',
|
27
|
+
stackStartFunction: _toss.caller
|
28
|
+
});
|
29
|
+
}
|
30
|
+
|
31
|
+
function _getClass(arg) {
|
32
|
+
return (Object.prototype.toString.call(arg).slice(8, -1));
|
33
|
+
}
|
34
|
+
|
35
|
+
function noop() {
|
36
|
+
// Why even bother with asserts?
|
37
|
+
}
|
38
|
+
|
39
|
+
|
40
|
+
///--- Exports
|
41
|
+
|
42
|
+
var types = {
|
43
|
+
bool: {
|
44
|
+
check: function (arg) { return typeof (arg) === 'boolean'; }
|
45
|
+
},
|
46
|
+
func: {
|
47
|
+
check: function (arg) { return typeof (arg) === 'function'; }
|
48
|
+
},
|
49
|
+
string: {
|
50
|
+
check: function (arg) { return typeof (arg) === 'string'; }
|
51
|
+
},
|
52
|
+
object: {
|
53
|
+
check: function (arg) {
|
54
|
+
return typeof (arg) === 'object' && arg !== null;
|
55
|
+
}
|
56
|
+
},
|
57
|
+
number: {
|
58
|
+
check: function (arg) {
|
59
|
+
return typeof (arg) === 'number' && !isNaN(arg);
|
60
|
+
}
|
61
|
+
},
|
62
|
+
finite: {
|
63
|
+
check: function (arg) {
|
64
|
+
return typeof (arg) === 'number' && !isNaN(arg) && isFinite(arg);
|
65
|
+
}
|
66
|
+
},
|
67
|
+
buffer: {
|
68
|
+
check: function (arg) { return Buffer.isBuffer(arg); },
|
69
|
+
operator: 'Buffer.isBuffer'
|
70
|
+
},
|
71
|
+
array: {
|
72
|
+
check: function (arg) { return Array.isArray(arg); },
|
73
|
+
operator: 'Array.isArray'
|
74
|
+
},
|
75
|
+
stream: {
|
76
|
+
check: function (arg) { return arg instanceof Stream; },
|
77
|
+
operator: 'instanceof',
|
78
|
+
actual: _getClass
|
79
|
+
},
|
80
|
+
date: {
|
81
|
+
check: function (arg) { return arg instanceof Date; },
|
82
|
+
operator: 'instanceof',
|
83
|
+
actual: _getClass
|
84
|
+
},
|
85
|
+
regexp: {
|
86
|
+
check: function (arg) { return arg instanceof RegExp; },
|
87
|
+
operator: 'instanceof',
|
88
|
+
actual: _getClass
|
89
|
+
},
|
90
|
+
uuid: {
|
91
|
+
check: function (arg) {
|
92
|
+
return typeof (arg) === 'string' && UUID_REGEXP.test(arg);
|
93
|
+
},
|
94
|
+
operator: 'isUUID'
|
95
|
+
}
|
96
|
+
};
|
97
|
+
|
98
|
+
function _setExports(ndebug) {
|
99
|
+
var keys = Object.keys(types);
|
100
|
+
var out;
|
101
|
+
|
102
|
+
/* re-export standard assert */
|
103
|
+
if (process.env.NODE_NDEBUG) {
|
104
|
+
out = noop;
|
105
|
+
} else {
|
106
|
+
out = function (arg, msg) {
|
107
|
+
if (!arg) {
|
108
|
+
_toss(msg, 'true', arg);
|
109
|
+
}
|
110
|
+
};
|
111
|
+
}
|
112
|
+
|
113
|
+
/* standard checks */
|
114
|
+
keys.forEach(function (k) {
|
115
|
+
if (ndebug) {
|
116
|
+
out[k] = noop;
|
117
|
+
return;
|
118
|
+
}
|
119
|
+
var type = types[k];
|
120
|
+
out[k] = function (arg, msg) {
|
121
|
+
if (!type.check(arg)) {
|
122
|
+
_toss(msg, k, type.operator, arg, type.actual);
|
123
|
+
}
|
124
|
+
};
|
125
|
+
});
|
126
|
+
|
127
|
+
/* optional checks */
|
128
|
+
keys.forEach(function (k) {
|
129
|
+
var name = 'optional' + _capitalize(k);
|
130
|
+
if (ndebug) {
|
131
|
+
out[name] = noop;
|
132
|
+
return;
|
133
|
+
}
|
134
|
+
var type = types[k];
|
135
|
+
out[name] = function (arg, msg) {
|
136
|
+
if (arg === undefined || arg === null) {
|
137
|
+
return;
|
138
|
+
}
|
139
|
+
if (!type.check(arg)) {
|
140
|
+
_toss(msg, k, type.operator, arg, type.actual);
|
141
|
+
}
|
142
|
+
};
|
143
|
+
});
|
144
|
+
|
145
|
+
/* arrayOf checks */
|
146
|
+
keys.forEach(function (k) {
|
147
|
+
var name = 'arrayOf' + _capitalize(k);
|
148
|
+
if (ndebug) {
|
149
|
+
out[name] = noop;
|
150
|
+
return;
|
151
|
+
}
|
152
|
+
var type = types[k];
|
153
|
+
var expected = '[' + k + ']';
|
154
|
+
out[name] = function (arg, msg) {
|
155
|
+
if (!Array.isArray(arg)) {
|
156
|
+
_toss(msg, expected, type.operator, arg, type.actual);
|
157
|
+
}
|
158
|
+
var i;
|
159
|
+
for (i = 0; i < arg.length; i++) {
|
160
|
+
if (!type.check(arg[i])) {
|
161
|
+
_toss(msg, expected, type.operator, arg, type.actual);
|
162
|
+
}
|
163
|
+
}
|
164
|
+
};
|
165
|
+
});
|
166
|
+
|
167
|
+
/* optionalArrayOf checks */
|
168
|
+
keys.forEach(function (k) {
|
169
|
+
var name = 'optionalArrayOf' + _capitalize(k);
|
170
|
+
if (ndebug) {
|
171
|
+
out[name] = noop;
|
172
|
+
return;
|
173
|
+
}
|
174
|
+
var type = types[k];
|
175
|
+
var expected = '[' + k + ']';
|
176
|
+
out[name] = function (arg, msg) {
|
177
|
+
if (arg === undefined || arg === null) {
|
178
|
+
return;
|
179
|
+
}
|
180
|
+
if (!Array.isArray(arg)) {
|
181
|
+
_toss(msg, expected, type.operator, arg, type.actual);
|
182
|
+
}
|
183
|
+
var i;
|
184
|
+
for (i = 0; i < arg.length; i++) {
|
185
|
+
if (!type.check(arg[i])) {
|
186
|
+
_toss(msg, expected, type.operator, arg, type.actual);
|
187
|
+
}
|
188
|
+
}
|
189
|
+
};
|
190
|
+
});
|
191
|
+
|
192
|
+
/* re-export built-in assertions */
|
193
|
+
Object.keys(assert).forEach(function (k) {
|
194
|
+
if (k === 'AssertionError') {
|
195
|
+
out[k] = assert[k];
|
196
|
+
return;
|
197
|
+
}
|
198
|
+
if (ndebug) {
|
199
|
+
out[k] = noop;
|
200
|
+
return;
|
201
|
+
}
|
202
|
+
out[k] = assert[k];
|
203
|
+
});
|
204
|
+
|
205
|
+
/* export ourselves (for unit tests _only_) */
|
206
|
+
out._setExports = _setExports;
|
207
|
+
|
208
|
+
return out;
|
209
|
+
}
|
210
|
+
|
211
|
+
module.exports = _setExports(process.env.NODE_NDEBUG);
|