fsevents 1.1.1 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of fsevents might be problematic. Click here for more details.

Files changed (1029) hide show
  1. package/.travis.yml +8 -10
  2. package/build/.target.mk +6 -2
  3. package/build/Makefile +6 -6
  4. package/build/Release/.deps/Release/.node.d +1 -0
  5. package/build/Release/.deps/Release/fse.node.d +1 -0
  6. package/build/Release/.deps/Release/obj.target/action_after_build.stamp.d +1 -0
  7. package/build/Release/.deps/Release/obj.target/fse/fsevents.o.d +65 -0
  8. package/build/Release/.deps/Users/eshanker/Code/fsevents/lib/binding/Release/node-v48-darwin-x64/fse.node.d +1 -0
  9. package/{node_modules/tar-pack/test/fixtures/packed.tar → build/Release/.node} +0 -0
  10. package/build/Release/fse.node +0 -0
  11. package/{node_modules/hoek/test/modules/ignore.txt → build/Release/obj.target/action_after_build.stamp} +0 -0
  12. package/build/Release/obj.target/fse/fsevents.o +0 -0
  13. package/build/action_after_build.target.mk +4 -4
  14. package/build/fse.target.mk +22 -12
  15. package/build/gyp-mac-tool +1 -2
  16. package/build/stage/v1.1.2/fse-v1.1.2-node-v48-darwin-x64.tar.gz +0 -0
  17. package/fsevents.cc +3 -1
  18. package/install.js +2 -2
  19. package/lib/binding/Release/node-v48-darwin-x64/fse.node +0 -0
  20. package/lib/binding/Release/node-v57-darwin-x64/fse.node +0 -0
  21. package/node_modules/abbrev/LICENSE +31 -0
  22. package/node_modules/abbrev/package.json +14 -50
  23. package/node_modules/ansi-regex/package.json +21 -45
  24. package/node_modules/aproba/README.md +16 -11
  25. package/node_modules/aproba/index.js +11 -9
  26. package/node_modules/aproba/package.json +16 -50
  27. package/node_modules/are-we-there-yet/CHANGES.md +12 -0
  28. package/node_modules/are-we-there-yet/CHANGES.md~ +27 -0
  29. package/node_modules/are-we-there-yet/README.md +4 -3
  30. package/node_modules/are-we-there-yet/package.json +24 -51
  31. package/node_modules/balanced-match/index.js +1 -0
  32. package/node_modules/balanced-match/package.json +19 -52
  33. package/node_modules/{ecc-jsbn → brace-expansion}/LICENSE +3 -3
  34. package/node_modules/brace-expansion/README.md +8 -1
  35. package/node_modules/brace-expansion/index.js +1 -1
  36. package/node_modules/brace-expansion/package.json +20 -57
  37. package/node_modules/{block-stream → chownr}/LICENSE +0 -0
  38. package/node_modules/chownr/README.md +3 -0
  39. package/node_modules/chownr/chownr.js +52 -0
  40. package/node_modules/chownr/package.json +56 -0
  41. package/node_modules/code-point-at/package.json +10 -46
  42. package/node_modules/concat-map/package.json +10 -39
  43. package/node_modules/console-control-strings/package.json +10 -45
  44. package/node_modules/core-util-is/package.json +11 -44
  45. package/node_modules/debug/.coveralls.yml +1 -0
  46. package/node_modules/debug/.eslintrc +11 -0
  47. package/node_modules/debug/.npmignore +3 -0
  48. package/node_modules/debug/.travis.yml +14 -0
  49. package/node_modules/debug/CHANGELOG.md +362 -0
  50. package/node_modules/debug/LICENSE +19 -0
  51. package/node_modules/debug/Makefile +28 -14
  52. package/node_modules/debug/README.md +312 -0
  53. package/node_modules/debug/component.json +4 -4
  54. package/node_modules/debug/karma.conf.js +70 -0
  55. package/node_modules/debug/node.js +1 -209
  56. package/node_modules/debug/package.json +42 -60
  57. package/node_modules/debug/{browser.js → src/browser.js} +29 -12
  58. package/node_modules/debug/{debug.js → src/debug.js} +42 -37
  59. package/node_modules/debug/src/index.js +10 -0
  60. package/node_modules/debug/src/inspector-log.js +15 -0
  61. package/node_modules/debug/src/node.js +248 -0
  62. package/node_modules/deep-extend/README.md +1 -1
  63. package/node_modules/deep-extend/lib/deep-extend.js +2 -2
  64. package/node_modules/deep-extend/package.json +18 -45
  65. package/node_modules/delegates/package.json +10 -46
  66. package/node_modules/detect-libc/.npmignore +7 -0
  67. package/node_modules/detect-libc/LICENSE +201 -0
  68. package/node_modules/detect-libc/README.md +78 -0
  69. package/node_modules/detect-libc/bin/detect-libc.js +18 -0
  70. package/node_modules/detect-libc/lib/detect-libc.js +92 -0
  71. package/node_modules/detect-libc/package.json +70 -0
  72. package/node_modules/{fstream-ignore → fs-minipass}/LICENSE +0 -0
  73. package/node_modules/fs-minipass/README.md +70 -0
  74. package/node_modules/fs-minipass/index.js +386 -0
  75. package/node_modules/fs-minipass/package.json +62 -0
  76. package/node_modules/fs.realpath/package.json +10 -45
  77. package/node_modules/gauge/CHANGELOG.md +5 -0
  78. package/node_modules/gauge/package.json +17 -52
  79. package/node_modules/gauge/plumbing.js +1 -0
  80. package/node_modules/glob/glob.js +0 -2
  81. package/node_modules/glob/package.json +15 -50
  82. package/node_modules/has-unicode/package.json +10 -46
  83. package/node_modules/iconv-lite/.travis.yml +23 -0
  84. package/node_modules/iconv-lite/Changelog.md +146 -0
  85. package/node_modules/{punycode/LICENSE-MIT.txt → iconv-lite/LICENSE} +2 -1
  86. package/node_modules/iconv-lite/README.md +156 -0
  87. package/node_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
  88. package/node_modules/iconv-lite/encodings/dbcs-data.js +176 -0
  89. package/node_modules/iconv-lite/encodings/index.js +22 -0
  90. package/node_modules/iconv-lite/encodings/internal.js +188 -0
  91. package/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  92. package/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  93. package/node_modules/iconv-lite/encodings/sbcs-data.js +169 -0
  94. package/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  95. package/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  96. package/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  97. package/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  98. package/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  99. package/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  100. package/node_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
  101. package/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  102. package/node_modules/iconv-lite/encodings/utf16.js +177 -0
  103. package/node_modules/iconv-lite/encodings/utf7.js +290 -0
  104. package/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  105. package/node_modules/iconv-lite/lib/extend-node.js +217 -0
  106. package/node_modules/iconv-lite/lib/index.d.ts +24 -0
  107. package/node_modules/iconv-lite/lib/index.js +153 -0
  108. package/node_modules/iconv-lite/lib/streams.js +121 -0
  109. package/node_modules/iconv-lite/package.json +76 -0
  110. package/node_modules/{fstream → ignore-walk}/LICENSE +0 -0
  111. package/node_modules/ignore-walk/README.md +60 -0
  112. package/node_modules/ignore-walk/index.js +265 -0
  113. package/node_modules/ignore-walk/package.json +71 -0
  114. package/node_modules/inflight/package.json +10 -57
  115. package/node_modules/inherits/package.json +14 -55
  116. package/node_modules/ini/ini.js +66 -62
  117. package/node_modules/ini/package.json +21 -47
  118. package/node_modules/is-fullwidth-code-point/package.json +11 -42
  119. package/node_modules/isarray/package.json +11 -43
  120. package/node_modules/minimatch/package.json +26 -60
  121. package/node_modules/minimist/package.json +9 -39
  122. package/node_modules/minipass/README.md +46 -0
  123. package/node_modules/minipass/index.js +304 -0
  124. package/node_modules/minipass/package.json +69 -0
  125. package/node_modules/minizlib/LICENSE +26 -0
  126. package/node_modules/minizlib/README.md +44 -0
  127. package/node_modules/minizlib/constants.js +46 -0
  128. package/node_modules/minizlib/index.js +364 -0
  129. package/node_modules/minizlib/package.json +71 -0
  130. package/node_modules/mkdirp/package.json +15 -46
  131. package/node_modules/ms/index.js +50 -23
  132. package/node_modules/{graceful-readlink/LICENSE → ms/license.md} +1 -2
  133. package/node_modules/ms/package.json +48 -61
  134. package/node_modules/ms/readme.md +51 -0
  135. package/node_modules/needle/README.md +593 -0
  136. package/node_modules/needle/bin/needle +40 -0
  137. package/node_modules/needle/examples/deflated-stream.js +22 -0
  138. package/node_modules/needle/examples/digest-auth.js +16 -0
  139. package/node_modules/needle/examples/download-to-file.js +18 -0
  140. package/node_modules/needle/examples/multipart-stream.js +25 -0
  141. package/node_modules/needle/examples/parsed-stream.js +23 -0
  142. package/node_modules/needle/examples/parsed-stream2.js +21 -0
  143. package/node_modules/needle/examples/stream-events.js +23 -0
  144. package/node_modules/needle/examples/stream-to-file.js +14 -0
  145. package/node_modules/needle/examples/upload-image.js +51 -0
  146. package/node_modules/needle/lib/auth.js +110 -0
  147. package/node_modules/needle/lib/cookies.js +77 -0
  148. package/node_modules/needle/lib/decoder.js +53 -0
  149. package/node_modules/needle/lib/multipart.js +98 -0
  150. package/node_modules/needle/lib/needle.js +783 -0
  151. package/node_modules/needle/lib/parsers.js +120 -0
  152. package/node_modules/needle/lib/querystring.js +49 -0
  153. package/node_modules/{xtend/LICENCE → needle/license.txt} +2 -2
  154. package/node_modules/needle/package.json +102 -0
  155. package/node_modules/needle/test/basic_auth_spec.js +196 -0
  156. package/node_modules/needle/test/compression_spec.js +94 -0
  157. package/node_modules/needle/test/cookies_spec.js +305 -0
  158. package/node_modules/needle/test/decoder_spec.js +86 -0
  159. package/node_modules/needle/test/errors_spec.js +286 -0
  160. package/node_modules/needle/test/headers_spec.js +198 -0
  161. package/node_modules/needle/test/helpers.js +72 -0
  162. package/node_modules/needle/test/long_string_spec.js +34 -0
  163. package/node_modules/needle/test/output_spec.js +254 -0
  164. package/node_modules/needle/test/parsing_spec.js +494 -0
  165. package/node_modules/needle/test/post_data_spec.js +1021 -0
  166. package/node_modules/needle/test/proxy_spec.js +202 -0
  167. package/node_modules/needle/test/querystring_spec.js +128 -0
  168. package/node_modules/needle/test/redirect_spec.js +392 -0
  169. package/node_modules/needle/test/redirect_with_timeout.js +45 -0
  170. package/node_modules/needle/test/request_stream_spec.js +202 -0
  171. package/node_modules/needle/test/response_stream_spec.js +139 -0
  172. package/node_modules/needle/test/socket_pool_spec.js +66 -0
  173. package/node_modules/needle/test/url_spec.js +147 -0
  174. package/node_modules/needle/test/utils/formidable.js +17 -0
  175. package/node_modules/needle/test/utils/proxy.js +62 -0
  176. package/node_modules/needle/test/utils/test.js +104 -0
  177. package/node_modules/node-pre-gyp/CHANGELOG.md +58 -0
  178. package/node_modules/node-pre-gyp/README.md +96 -9
  179. package/node_modules/node-pre-gyp/appveyor.yml +9 -12
  180. package/node_modules/node-pre-gyp/bin/node-pre-gyp +5 -2
  181. package/node_modules/node-pre-gyp/contributing.md +10 -0
  182. package/node_modules/node-pre-gyp/lib/build.js +8 -0
  183. package/node_modules/node-pre-gyp/lib/clean.js +17 -8
  184. package/node_modules/node-pre-gyp/lib/configure.js +4 -0
  185. package/node_modules/node-pre-gyp/lib/install.js +61 -79
  186. package/node_modules/node-pre-gyp/lib/node-pre-gyp.js +9 -0
  187. package/node_modules/node-pre-gyp/lib/package.js +20 -13
  188. package/node_modules/node-pre-gyp/lib/pre-binding.js +6 -1
  189. package/node_modules/node-pre-gyp/lib/publish.js +3 -1
  190. package/node_modules/node-pre-gyp/lib/rebuild.js +12 -4
  191. package/node_modules/node-pre-gyp/lib/reinstall.js +8 -1
  192. package/node_modules/node-pre-gyp/lib/reveal.js +4 -2
  193. package/node_modules/node-pre-gyp/lib/testbinary.js +11 -3
  194. package/node_modules/node-pre-gyp/lib/testpackage.js +22 -16
  195. package/node_modules/node-pre-gyp/lib/unpublish.js +3 -1
  196. package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +268 -0
  197. package/node_modules/node-pre-gyp/lib/util/handle_gyp_opts.js +8 -2
  198. package/node_modules/node-pre-gyp/lib/util/napi.js +156 -0
  199. package/node_modules/node-pre-gyp/lib/util/versioning.js +24 -2
  200. package/node_modules/node-pre-gyp/package.json +36 -82
  201. package/node_modules/nopt/.travis.yml +3 -4
  202. package/node_modules/nopt/CHANGELOG.md +58 -0
  203. package/node_modules/nopt/README.md +28 -26
  204. package/node_modules/nopt/lib/nopt.js +50 -29
  205. package/node_modules/nopt/package.json +20 -58
  206. package/node_modules/nopt/test/basic.js +36 -6
  207. package/node_modules/npm-bundled/README.md +46 -0
  208. package/node_modules/npm-bundled/index.js +227 -0
  209. package/node_modules/npm-bundled/package.json +60 -0
  210. package/node_modules/{json-stringify-safe → npm-packlist}/LICENSE +0 -0
  211. package/node_modules/npm-packlist/README.md +68 -0
  212. package/node_modules/npm-packlist/index.js +220 -0
  213. package/node_modules/npm-packlist/package.json +66 -0
  214. package/node_modules/npmlog/CHANGELOG.md +5 -1
  215. package/node_modules/npmlog/log.js +8 -1
  216. package/node_modules/npmlog/package.json +19 -66
  217. package/node_modules/number-is-nan/package.json +10 -46
  218. package/node_modules/object-assign/package.json +10 -54
  219. package/node_modules/once/package.json +10 -44
  220. package/node_modules/os-homedir/index.js +24 -0
  221. package/node_modules/{ansi-styles → os-homedir}/license +0 -0
  222. package/node_modules/os-homedir/package.json +73 -0
  223. package/node_modules/os-homedir/readme.md +31 -0
  224. package/node_modules/os-tmpdir/index.js +25 -0
  225. package/node_modules/{chalk → os-tmpdir}/license +0 -0
  226. package/node_modules/os-tmpdir/package.json +73 -0
  227. package/node_modules/os-tmpdir/readme.md +32 -0
  228. package/node_modules/{tar-pack/node_modules/once → osenv}/LICENSE +0 -0
  229. package/node_modules/osenv/README.md +63 -0
  230. package/node_modules/osenv/osenv.js +72 -0
  231. package/node_modules/osenv/package.json +73 -0
  232. package/node_modules/path-is-absolute/package.json +10 -46
  233. package/node_modules/process-nextick-args/index.js +3 -2
  234. package/node_modules/process-nextick-args/package.json +21 -55
  235. package/node_modules/process-nextick-args/readme.md +2 -2
  236. package/node_modules/rc/README.md +80 -2
  237. package/node_modules/rc/cli.js +4 -0
  238. package/node_modules/rc/index.js +0 -7
  239. package/node_modules/rc/lib/utils.js +2 -1
  240. package/node_modules/rc/node_modules/minimist/package.json +10 -42
  241. package/node_modules/rc/package.json +19 -55
  242. package/node_modules/rc/test/nested-env-vars.js +31 -21
  243. package/node_modules/readable-stream/.travis.yml +28 -22
  244. package/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  245. package/node_modules/readable-stream/GOVERNANCE.md +136 -0
  246. package/node_modules/readable-stream/LICENSE +29 -0
  247. package/node_modules/readable-stream/README.md +22 -4
  248. package/node_modules/readable-stream/duplex-browser.js +1 -0
  249. package/node_modules/readable-stream/duplex.js +1 -1
  250. package/node_modules/readable-stream/lib/_stream_duplex.js +69 -13
  251. package/node_modules/readable-stream/lib/_stream_passthrough.js +21 -0
  252. package/node_modules/readable-stream/lib/_stream_readable.js +199 -121
  253. package/node_modules/readable-stream/lib/_stream_transform.js +64 -32
  254. package/node_modules/readable-stream/lib/_stream_writable.js +212 -79
  255. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +68 -53
  256. package/node_modules/readable-stream/lib/internal/streams/destroy.js +74 -0
  257. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  258. package/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  259. package/node_modules/readable-stream/package.json +32 -77
  260. package/node_modules/readable-stream/passthrough.js +1 -1
  261. package/node_modules/{tar-pack/node_modules/readable-stream/readable.js → readable-stream/readable-browser.js} +1 -10
  262. package/node_modules/readable-stream/readable.js +17 -14
  263. package/node_modules/readable-stream/transform.js +1 -1
  264. package/node_modules/readable-stream/writable-browser.js +1 -0
  265. package/node_modules/readable-stream/writable.js +8 -1
  266. package/node_modules/rimraf/bin.js +13 -3
  267. package/node_modules/rimraf/package.json +19 -56
  268. package/node_modules/rimraf/rimraf.js +25 -4
  269. package/node_modules/safe-buffer/.travis.yml +7 -0
  270. package/node_modules/{is-property → safe-buffer}/LICENSE +1 -2
  271. package/node_modules/safe-buffer/README.md +584 -0
  272. package/node_modules/safe-buffer/index.js +62 -0
  273. package/node_modules/safe-buffer/package.json +65 -0
  274. package/node_modules/safe-buffer/test.js +101 -0
  275. package/node_modules/{asynckit → safer-buffer}/LICENSE +2 -2
  276. package/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  277. package/node_modules/safer-buffer/Readme.md +156 -0
  278. package/node_modules/safer-buffer/dangerous.js +58 -0
  279. package/node_modules/safer-buffer/package.json +60 -0
  280. package/node_modules/safer-buffer/safer.js +77 -0
  281. package/node_modules/safer-buffer/tests.js +406 -0
  282. package/node_modules/sax/LICENSE +41 -0
  283. package/node_modules/sax/README.md +225 -0
  284. package/node_modules/sax/lib/sax.js +1565 -0
  285. package/node_modules/sax/package.json +61 -0
  286. package/node_modules/semver/README.md +75 -37
  287. package/node_modules/semver/bin/semver +12 -2
  288. package/node_modules/semver/package.json +19 -59
  289. package/node_modules/semver/range.bnf +2 -2
  290. package/node_modules/semver/semver.js +134 -13
  291. package/node_modules/set-blocking/package.json +10 -46
  292. package/node_modules/signal-exit/package.json +10 -50
  293. package/node_modules/string-width/package.json +10 -45
  294. package/node_modules/string_decoder/.travis.yml +50 -0
  295. package/node_modules/string_decoder/LICENSE +48 -20
  296. package/node_modules/string_decoder/README.md +44 -4
  297. package/node_modules/string_decoder/lib/string_decoder.js +296 -0
  298. package/node_modules/string_decoder/package.json +30 -59
  299. package/node_modules/strip-ansi/package.json +22 -45
  300. package/node_modules/strip-json-comments/package.json +10 -46
  301. package/node_modules/tar/LICENSE +3 -0
  302. package/node_modules/tar/README.md +929 -30
  303. package/node_modules/tar/index.js +18 -0
  304. package/node_modules/tar/lib/buffer.js +11 -0
  305. package/node_modules/tar/lib/create.js +105 -0
  306. package/node_modules/tar/lib/extract.js +97 -79
  307. package/node_modules/tar/lib/header.js +236 -348
  308. package/node_modules/tar/lib/high-level-opt.js +29 -0
  309. package/node_modules/tar/lib/large-numbers.js +92 -0
  310. package/node_modules/tar/lib/list.js +130 -0
  311. package/node_modules/tar/lib/mkdir.js +206 -0
  312. package/node_modules/tar/lib/pack.js +354 -187
  313. package/node_modules/tar/lib/parse.js +393 -246
  314. package/node_modules/tar/lib/pax.js +146 -0
  315. package/node_modules/tar/lib/read-entry.js +94 -0
  316. package/node_modules/tar/lib/replace.js +220 -0
  317. package/node_modules/tar/lib/types.js +44 -0
  318. package/node_modules/tar/lib/unpack.js +560 -0
  319. package/node_modules/tar/lib/update.js +36 -0
  320. package/node_modules/tar/lib/warn-mixin.js +14 -0
  321. package/node_modules/tar/lib/winchars.js +23 -0
  322. package/node_modules/tar/lib/write-entry.js +403 -0
  323. package/node_modules/tar/package.json +48 -73
  324. package/node_modules/util-deprecate/package.json +11 -45
  325. package/node_modules/wide-align/package.json +21 -48
  326. package/node_modules/wrappy/package.json +11 -50
  327. package/node_modules/yallist/LICENSE +15 -0
  328. package/node_modules/yallist/README.md +204 -0
  329. package/node_modules/yallist/iterator.js +8 -0
  330. package/node_modules/yallist/package.json +63 -0
  331. package/node_modules/yallist/yallist.js +376 -0
  332. package/package.json +5 -4
  333. package/src/methods.cc +1 -1
  334. package/node_modules/ansi-styles/index.js +0 -65
  335. package/node_modules/ansi-styles/package.json +0 -114
  336. package/node_modules/ansi-styles/readme.md +0 -86
  337. package/node_modules/are-we-there-yet/.npmignore +0 -5
  338. package/node_modules/are-we-there-yet/test/lib/test-event.js +0 -29
  339. package/node_modules/are-we-there-yet/test/tracker.js +0 -57
  340. package/node_modules/are-we-there-yet/test/trackergroup.js +0 -96
  341. package/node_modules/are-we-there-yet/test/trackerstream.js +0 -51
  342. package/node_modules/asn1/.npmignore +0 -2
  343. package/node_modules/asn1/.travis.yml +0 -4
  344. package/node_modules/asn1/LICENSE +0 -19
  345. package/node_modules/asn1/README.md +0 -50
  346. package/node_modules/asn1/lib/ber/errors.js +0 -13
  347. package/node_modules/asn1/lib/ber/index.js +0 -27
  348. package/node_modules/asn1/lib/ber/reader.js +0 -261
  349. package/node_modules/asn1/lib/ber/types.js +0 -36
  350. package/node_modules/asn1/lib/ber/writer.js +0 -316
  351. package/node_modules/asn1/lib/index.js +0 -20
  352. package/node_modules/asn1/package.json +0 -98
  353. package/node_modules/asn1/tst/ber/reader.test.js +0 -208
  354. package/node_modules/asn1/tst/ber/writer.test.js +0 -370
  355. package/node_modules/assert-plus/AUTHORS +0 -6
  356. package/node_modules/assert-plus/CHANGES.md +0 -8
  357. package/node_modules/assert-plus/README.md +0 -155
  358. package/node_modules/assert-plus/assert.js +0 -206
  359. package/node_modules/assert-plus/package.json +0 -115
  360. package/node_modules/asynckit/README.md +0 -233
  361. package/node_modules/asynckit/bench.js +0 -76
  362. package/node_modules/asynckit/index.js +0 -6
  363. package/node_modules/asynckit/lib/abort.js +0 -29
  364. package/node_modules/asynckit/lib/async.js +0 -34
  365. package/node_modules/asynckit/lib/defer.js +0 -26
  366. package/node_modules/asynckit/lib/iterate.js +0 -75
  367. package/node_modules/asynckit/lib/readable_asynckit.js +0 -91
  368. package/node_modules/asynckit/lib/readable_parallel.js +0 -25
  369. package/node_modules/asynckit/lib/readable_serial.js +0 -25
  370. package/node_modules/asynckit/lib/readable_serial_ordered.js +0 -29
  371. package/node_modules/asynckit/lib/state.js +0 -37
  372. package/node_modules/asynckit/lib/streamify.js +0 -141
  373. package/node_modules/asynckit/lib/terminator.js +0 -29
  374. package/node_modules/asynckit/package.json +0 -126
  375. package/node_modules/asynckit/parallel.js +0 -43
  376. package/node_modules/asynckit/serial.js +0 -17
  377. package/node_modules/asynckit/serialOrdered.js +0 -75
  378. package/node_modules/asynckit/stream.js +0 -21
  379. package/node_modules/aws-sign2/LICENSE +0 -55
  380. package/node_modules/aws-sign2/README.md +0 -4
  381. package/node_modules/aws-sign2/index.js +0 -212
  382. package/node_modules/aws-sign2/package.json +0 -81
  383. package/node_modules/aws4/.npmignore +0 -4
  384. package/node_modules/aws4/.tern-port +0 -1
  385. package/node_modules/aws4/.travis.yml +0 -5
  386. package/node_modules/aws4/LICENSE +0 -19
  387. package/node_modules/aws4/README.md +0 -523
  388. package/node_modules/aws4/aws4.js +0 -332
  389. package/node_modules/aws4/lru.js +0 -96
  390. package/node_modules/aws4/package.json +0 -140
  391. package/node_modules/bcrypt-pbkdf/README.md +0 -39
  392. package/node_modules/bcrypt-pbkdf/index.js +0 -556
  393. package/node_modules/bcrypt-pbkdf/package.json +0 -84
  394. package/node_modules/block-stream/LICENCE +0 -25
  395. package/node_modules/block-stream/README.md +0 -14
  396. package/node_modules/block-stream/block-stream.js +0 -209
  397. package/node_modules/block-stream/package.json +0 -95
  398. package/node_modules/boom/.npmignore +0 -18
  399. package/node_modules/boom/.travis.yml +0 -8
  400. package/node_modules/boom/CONTRIBUTING.md +0 -1
  401. package/node_modules/boom/LICENSE +0 -28
  402. package/node_modules/boom/README.md +0 -652
  403. package/node_modules/boom/images/boom.png +0 -0
  404. package/node_modules/boom/lib/index.js +0 -318
  405. package/node_modules/boom/package.json +0 -98
  406. package/node_modules/boom/test/index.js +0 -654
  407. package/node_modules/buffer-shims/index.js +0 -108
  408. package/node_modules/buffer-shims/license.md +0 -19
  409. package/node_modules/buffer-shims/package.json +0 -86
  410. package/node_modules/buffer-shims/readme.md +0 -21
  411. package/node_modules/caseless/LICENSE +0 -28
  412. package/node_modules/caseless/README.md +0 -45
  413. package/node_modules/caseless/index.js +0 -66
  414. package/node_modules/caseless/package.json +0 -96
  415. package/node_modules/caseless/test.js +0 -40
  416. package/node_modules/chalk/index.js +0 -116
  417. package/node_modules/chalk/package.json +0 -140
  418. package/node_modules/chalk/readme.md +0 -213
  419. package/node_modules/combined-stream/License +0 -19
  420. package/node_modules/combined-stream/Readme.md +0 -138
  421. package/node_modules/combined-stream/lib/combined_stream.js +0 -188
  422. package/node_modules/combined-stream/package.json +0 -101
  423. package/node_modules/commander/History.md +0 -261
  424. package/node_modules/commander/LICENSE +0 -22
  425. package/node_modules/commander/Readme.md +0 -351
  426. package/node_modules/commander/index.js +0 -1110
  427. package/node_modules/commander/package.json +0 -104
  428. package/node_modules/cryptiles/.npmignore +0 -18
  429. package/node_modules/cryptiles/.travis.yml +0 -8
  430. package/node_modules/cryptiles/LICENSE +0 -28
  431. package/node_modules/cryptiles/README.md +0 -16
  432. package/node_modules/cryptiles/lib/index.js +0 -68
  433. package/node_modules/cryptiles/package.json +0 -94
  434. package/node_modules/cryptiles/test/index.js +0 -102
  435. package/node_modules/dashdash/CHANGES.md +0 -364
  436. package/node_modules/dashdash/LICENSE.txt +0 -24
  437. package/node_modules/dashdash/README.md +0 -574
  438. package/node_modules/dashdash/etc/dashdash.bash_completion.in +0 -389
  439. package/node_modules/dashdash/lib/dashdash.js +0 -1055
  440. package/node_modules/dashdash/node_modules/assert-plus/AUTHORS +0 -6
  441. package/node_modules/dashdash/node_modules/assert-plus/CHANGES.md +0 -14
  442. package/node_modules/dashdash/node_modules/assert-plus/README.md +0 -162
  443. package/node_modules/dashdash/node_modules/assert-plus/assert.js +0 -211
  444. package/node_modules/dashdash/node_modules/assert-plus/package.json +0 -115
  445. package/node_modules/dashdash/package.json +0 -125
  446. package/node_modules/debug/.jshintrc +0 -3
  447. package/node_modules/debug/History.md +0 -195
  448. package/node_modules/debug/Readme.md +0 -188
  449. package/node_modules/debug/bower.json +0 -28
  450. package/node_modules/delayed-stream/.npmignore +0 -1
  451. package/node_modules/delayed-stream/License +0 -19
  452. package/node_modules/delayed-stream/Makefile +0 -7
  453. package/node_modules/delayed-stream/Readme.md +0 -141
  454. package/node_modules/delayed-stream/lib/delayed_stream.js +0 -107
  455. package/node_modules/delayed-stream/package.json +0 -97
  456. package/node_modules/ecc-jsbn/.npmignore +0 -15
  457. package/node_modules/ecc-jsbn/README.md +0 -8
  458. package/node_modules/ecc-jsbn/index.js +0 -57
  459. package/node_modules/ecc-jsbn/lib/LICENSE-jsbn +0 -40
  460. package/node_modules/ecc-jsbn/lib/ec.js +0 -561
  461. package/node_modules/ecc-jsbn/lib/sec.js +0 -170
  462. package/node_modules/ecc-jsbn/package.json +0 -90
  463. package/node_modules/ecc-jsbn/test.js +0 -14
  464. package/node_modules/escape-string-regexp/index.js +0 -11
  465. package/node_modules/escape-string-regexp/license +0 -21
  466. package/node_modules/escape-string-regexp/package.json +0 -109
  467. package/node_modules/escape-string-regexp/readme.md +0 -27
  468. package/node_modules/extend/.eslintrc +0 -192
  469. package/node_modules/extend/.jscs.json +0 -104
  470. package/node_modules/extend/.npmignore +0 -1
  471. package/node_modules/extend/.travis.yml +0 -44
  472. package/node_modules/extend/CHANGELOG.md +0 -69
  473. package/node_modules/extend/LICENSE +0 -23
  474. package/node_modules/extend/README.md +0 -62
  475. package/node_modules/extend/component.json +0 -32
  476. package/node_modules/extend/index.js +0 -86
  477. package/node_modules/extend/package.json +0 -106
  478. package/node_modules/extsprintf/.gitmodules +0 -6
  479. package/node_modules/extsprintf/LICENSE +0 -19
  480. package/node_modules/extsprintf/Makefile +0 -23
  481. package/node_modules/extsprintf/Makefile.deps +0 -39
  482. package/node_modules/extsprintf/Makefile.targ +0 -285
  483. package/node_modules/extsprintf/README.md +0 -39
  484. package/node_modules/extsprintf/examples/simple.js +0 -2
  485. package/node_modules/extsprintf/jsl.node.conf +0 -137
  486. package/node_modules/extsprintf/lib/extsprintf.js +0 -166
  487. package/node_modules/extsprintf/package.json +0 -74
  488. package/node_modules/forever-agent/LICENSE +0 -55
  489. package/node_modules/forever-agent/README.md +0 -4
  490. package/node_modules/forever-agent/index.js +0 -138
  491. package/node_modules/forever-agent/package.json +0 -88
  492. package/node_modules/form-data/License +0 -19
  493. package/node_modules/form-data/README.md +0 -217
  494. package/node_modules/form-data/lib/browser.js +0 -2
  495. package/node_modules/form-data/lib/form_data.js +0 -440
  496. package/node_modules/form-data/lib/populate.js +0 -10
  497. package/node_modules/form-data/package.json +0 -145
  498. package/node_modules/fstream/.npmignore +0 -5
  499. package/node_modules/fstream/.travis.yml +0 -9
  500. package/node_modules/fstream/README.md +0 -76
  501. package/node_modules/fstream/examples/filter-pipe.js +0 -134
  502. package/node_modules/fstream/examples/pipe.js +0 -118
  503. package/node_modules/fstream/examples/reader.js +0 -68
  504. package/node_modules/fstream/examples/symlink-write.js +0 -27
  505. package/node_modules/fstream/fstream.js +0 -35
  506. package/node_modules/fstream/lib/abstract.js +0 -85
  507. package/node_modules/fstream/lib/collect.js +0 -70
  508. package/node_modules/fstream/lib/dir-reader.js +0 -252
  509. package/node_modules/fstream/lib/dir-writer.js +0 -174
  510. package/node_modules/fstream/lib/file-reader.js +0 -150
  511. package/node_modules/fstream/lib/file-writer.js +0 -107
  512. package/node_modules/fstream/lib/get-type.js +0 -33
  513. package/node_modules/fstream/lib/link-reader.js +0 -53
  514. package/node_modules/fstream/lib/link-writer.js +0 -95
  515. package/node_modules/fstream/lib/proxy-reader.js +0 -95
  516. package/node_modules/fstream/lib/proxy-writer.js +0 -111
  517. package/node_modules/fstream/lib/reader.js +0 -255
  518. package/node_modules/fstream/lib/socket-reader.js +0 -36
  519. package/node_modules/fstream/lib/writer.js +0 -390
  520. package/node_modules/fstream/package.json +0 -110
  521. package/node_modules/fstream-ignore/README.md +0 -22
  522. package/node_modules/fstream-ignore/ignore.js +0 -275
  523. package/node_modules/fstream-ignore/package.json +0 -104
  524. package/node_modules/generate-function/.npmignore +0 -1
  525. package/node_modules/generate-function/.travis.yml +0 -3
  526. package/node_modules/generate-function/README.md +0 -72
  527. package/node_modules/generate-function/example.js +0 -27
  528. package/node_modules/generate-function/index.js +0 -61
  529. package/node_modules/generate-function/package.json +0 -87
  530. package/node_modules/generate-function/test.js +0 -33
  531. package/node_modules/generate-object-property/.npmignore +0 -1
  532. package/node_modules/generate-object-property/.travis.yml +0 -3
  533. package/node_modules/generate-object-property/LICENSE +0 -21
  534. package/node_modules/generate-object-property/README.md +0 -19
  535. package/node_modules/generate-object-property/index.js +0 -12
  536. package/node_modules/generate-object-property/package.json +0 -84
  537. package/node_modules/generate-object-property/test.js +0 -12
  538. package/node_modules/getpass/.npmignore +0 -8
  539. package/node_modules/getpass/.travis.yml +0 -9
  540. package/node_modules/getpass/LICENSE +0 -18
  541. package/node_modules/getpass/README.md +0 -32
  542. package/node_modules/getpass/lib/index.js +0 -123
  543. package/node_modules/getpass/node_modules/assert-plus/AUTHORS +0 -6
  544. package/node_modules/getpass/node_modules/assert-plus/CHANGES.md +0 -14
  545. package/node_modules/getpass/node_modules/assert-plus/README.md +0 -162
  546. package/node_modules/getpass/node_modules/assert-plus/assert.js +0 -211
  547. package/node_modules/getpass/node_modules/assert-plus/package.json +0 -115
  548. package/node_modules/getpass/package.json +0 -90
  549. package/node_modules/graceful-fs/LICENSE +0 -15
  550. package/node_modules/graceful-fs/README.md +0 -133
  551. package/node_modules/graceful-fs/fs.js +0 -21
  552. package/node_modules/graceful-fs/graceful-fs.js +0 -262
  553. package/node_modules/graceful-fs/legacy-streams.js +0 -118
  554. package/node_modules/graceful-fs/package.json +0 -111
  555. package/node_modules/graceful-fs/polyfills.js +0 -330
  556. package/node_modules/graceful-readlink/.npmignore +0 -3
  557. package/node_modules/graceful-readlink/.travis.yml +0 -5
  558. package/node_modules/graceful-readlink/README.md +0 -17
  559. package/node_modules/graceful-readlink/index.js +0 -12
  560. package/node_modules/graceful-readlink/package.json +0 -83
  561. package/node_modules/har-validator/LICENSE +0 -13
  562. package/node_modules/har-validator/README.md +0 -309
  563. package/node_modules/har-validator/bin/har-validator +0 -56
  564. package/node_modules/har-validator/lib/async.js +0 -14
  565. package/node_modules/har-validator/lib/error.js +0 -10
  566. package/node_modules/har-validator/lib/index.js +0 -22
  567. package/node_modules/har-validator/lib/runner.js +0 -29
  568. package/node_modules/har-validator/lib/schemas/cache.json +0 -13
  569. package/node_modules/har-validator/lib/schemas/cacheEntry.json +0 -31
  570. package/node_modules/har-validator/lib/schemas/content.json +0 -27
  571. package/node_modules/har-validator/lib/schemas/cookie.json +0 -34
  572. package/node_modules/har-validator/lib/schemas/creator.json +0 -18
  573. package/node_modules/har-validator/lib/schemas/entry.json +0 -51
  574. package/node_modules/har-validator/lib/schemas/har.json +0 -11
  575. package/node_modules/har-validator/lib/schemas/index.js +0 -49
  576. package/node_modules/har-validator/lib/schemas/log.json +0 -34
  577. package/node_modules/har-validator/lib/schemas/page.json +0 -30
  578. package/node_modules/har-validator/lib/schemas/pageTimings.json +0 -16
  579. package/node_modules/har-validator/lib/schemas/postData.json +0 -41
  580. package/node_modules/har-validator/lib/schemas/record.json +0 -18
  581. package/node_modules/har-validator/lib/schemas/request.json +0 -55
  582. package/node_modules/har-validator/lib/schemas/response.json +0 -52
  583. package/node_modules/har-validator/lib/schemas/timings.json +0 -40
  584. package/node_modules/har-validator/package.json +0 -120
  585. package/node_modules/has-ansi/index.js +0 -4
  586. package/node_modules/has-ansi/license +0 -21
  587. package/node_modules/has-ansi/package.json +0 -118
  588. package/node_modules/has-ansi/readme.md +0 -36
  589. package/node_modules/hawk/.npmignore +0 -20
  590. package/node_modules/hawk/.travis.yml +0 -5
  591. package/node_modules/hawk/LICENSE +0 -28
  592. package/node_modules/hawk/README.md +0 -634
  593. package/node_modules/hawk/bower.json +0 -24
  594. package/node_modules/hawk/component.json +0 -19
  595. package/node_modules/hawk/dist/client.js +0 -343
  596. package/node_modules/hawk/example/usage.js +0 -78
  597. package/node_modules/hawk/images/hawk.png +0 -0
  598. package/node_modules/hawk/images/logo.png +0 -0
  599. package/node_modules/hawk/lib/browser.js +0 -637
  600. package/node_modules/hawk/lib/client.js +0 -369
  601. package/node_modules/hawk/lib/crypto.js +0 -126
  602. package/node_modules/hawk/lib/index.js +0 -15
  603. package/node_modules/hawk/lib/server.js +0 -548
  604. package/node_modules/hawk/lib/utils.js +0 -184
  605. package/node_modules/hawk/package.json +0 -101
  606. package/node_modules/hawk/test/browser.js +0 -1492
  607. package/node_modules/hawk/test/client.js +0 -440
  608. package/node_modules/hawk/test/crypto.js +0 -70
  609. package/node_modules/hawk/test/index.js +0 -378
  610. package/node_modules/hawk/test/readme.js +0 -95
  611. package/node_modules/hawk/test/server.js +0 -1329
  612. package/node_modules/hawk/test/uri.js +0 -838
  613. package/node_modules/hawk/test/utils.js +0 -149
  614. package/node_modules/hoek/.npmignore +0 -18
  615. package/node_modules/hoek/.travis.yml +0 -7
  616. package/node_modules/hoek/CONTRIBUTING.md +0 -1
  617. package/node_modules/hoek/LICENSE +0 -31
  618. package/node_modules/hoek/README.md +0 -584
  619. package/node_modules/hoek/images/hoek.png +0 -0
  620. package/node_modules/hoek/lib/escape.js +0 -132
  621. package/node_modules/hoek/lib/index.js +0 -993
  622. package/node_modules/hoek/package.json +0 -96
  623. package/node_modules/hoek/test/escaper.js +0 -88
  624. package/node_modules/hoek/test/index.js +0 -2513
  625. package/node_modules/hoek/test/modules/test1.js +0 -1
  626. package/node_modules/hoek/test/modules/test2.js +0 -1
  627. package/node_modules/hoek/test/modules/test3.js +0 -1
  628. package/node_modules/http-signature/.dir-locals.el +0 -6
  629. package/node_modules/http-signature/.npmignore +0 -7
  630. package/node_modules/http-signature/CHANGES.md +0 -46
  631. package/node_modules/http-signature/LICENSE +0 -18
  632. package/node_modules/http-signature/README.md +0 -79
  633. package/node_modules/http-signature/http_signing.md +0 -363
  634. package/node_modules/http-signature/lib/index.js +0 -29
  635. package/node_modules/http-signature/lib/parser.js +0 -318
  636. package/node_modules/http-signature/lib/signer.js +0 -399
  637. package/node_modules/http-signature/lib/utils.js +0 -112
  638. package/node_modules/http-signature/lib/verify.js +0 -88
  639. package/node_modules/http-signature/package.json +0 -116
  640. package/node_modules/is-my-json-valid/.npmignore +0 -2
  641. package/node_modules/is-my-json-valid/.travis.yml +0 -3
  642. package/node_modules/is-my-json-valid/LICENSE +0 -21
  643. package/node_modules/is-my-json-valid/README.md +0 -173
  644. package/node_modules/is-my-json-valid/example.js +0 -18
  645. package/node_modules/is-my-json-valid/formats.js +0 -14
  646. package/node_modules/is-my-json-valid/index.js +0 -594
  647. package/node_modules/is-my-json-valid/package.json +0 -116
  648. package/node_modules/is-my-json-valid/require.js +0 -12
  649. package/node_modules/is-my-json-valid/test/fixtures/cosmic.js +0 -84
  650. package/node_modules/is-my-json-valid/test/json-schema-draft4/additionalItems.json +0 -82
  651. package/node_modules/is-my-json-valid/test/json-schema-draft4/additionalProperties.json +0 -88
  652. package/node_modules/is-my-json-valid/test/json-schema-draft4/allOf.json +0 -112
  653. package/node_modules/is-my-json-valid/test/json-schema-draft4/anyOf.json +0 -68
  654. package/node_modules/is-my-json-valid/test/json-schema-draft4/bignum.json +0 -107
  655. package/node_modules/is-my-json-valid/test/json-schema-draft4/default.json +0 -49
  656. package/node_modules/is-my-json-valid/test/json-schema-draft4/definitions.json +0 -32
  657. package/node_modules/is-my-json-valid/test/json-schema-draft4/dependencies.json +0 -113
  658. package/node_modules/is-my-json-valid/test/json-schema-draft4/enum.json +0 -72
  659. package/node_modules/is-my-json-valid/test/json-schema-draft4/format.json +0 -143
  660. package/node_modules/is-my-json-valid/test/json-schema-draft4/items.json +0 -46
  661. package/node_modules/is-my-json-valid/test/json-schema-draft4/maxItems.json +0 -28
  662. package/node_modules/is-my-json-valid/test/json-schema-draft4/maxLength.json +0 -28
  663. package/node_modules/is-my-json-valid/test/json-schema-draft4/maxProperties.json +0 -28
  664. package/node_modules/is-my-json-valid/test/json-schema-draft4/maximum.json +0 -42
  665. package/node_modules/is-my-json-valid/test/json-schema-draft4/minItems.json +0 -28
  666. package/node_modules/is-my-json-valid/test/json-schema-draft4/minLength.json +0 -28
  667. package/node_modules/is-my-json-valid/test/json-schema-draft4/minProperties.json +0 -28
  668. package/node_modules/is-my-json-valid/test/json-schema-draft4/minimum.json +0 -42
  669. package/node_modules/is-my-json-valid/test/json-schema-draft4/multipleOf.json +0 -96
  670. package/node_modules/is-my-json-valid/test/json-schema-draft4/not.json +0 -96
  671. package/node_modules/is-my-json-valid/test/json-schema-draft4/nullAndFormat.json +0 -18
  672. package/node_modules/is-my-json-valid/test/json-schema-draft4/nullAndObject.json +0 -18
  673. package/node_modules/is-my-json-valid/test/json-schema-draft4/oneOf.json +0 -68
  674. package/node_modules/is-my-json-valid/test/json-schema-draft4/pattern.json +0 -23
  675. package/node_modules/is-my-json-valid/test/json-schema-draft4/patternProperties.json +0 -110
  676. package/node_modules/is-my-json-valid/test/json-schema-draft4/properties.json +0 -92
  677. package/node_modules/is-my-json-valid/test/json-schema-draft4/ref.json +0 -128
  678. package/node_modules/is-my-json-valid/test/json-schema-draft4/refRemote.json +0 -74
  679. package/node_modules/is-my-json-valid/test/json-schema-draft4/required.json +0 -39
  680. package/node_modules/is-my-json-valid/test/json-schema-draft4/type.json +0 -330
  681. package/node_modules/is-my-json-valid/test/json-schema-draft4/uniqueItems.json +0 -79
  682. package/node_modules/is-my-json-valid/test/json-schema.js +0 -23
  683. package/node_modules/is-my-json-valid/test/misc.js +0 -471
  684. package/node_modules/is-property/.npmignore +0 -17
  685. package/node_modules/is-property/README.md +0 -28
  686. package/node_modules/is-property/is-property.js +0 -5
  687. package/node_modules/is-property/package.json +0 -92
  688. package/node_modules/is-typedarray/LICENSE.md +0 -18
  689. package/node_modules/is-typedarray/README.md +0 -16
  690. package/node_modules/is-typedarray/index.js +0 -41
  691. package/node_modules/is-typedarray/package.json +0 -90
  692. package/node_modules/is-typedarray/test.js +0 -34
  693. package/node_modules/isstream/.jshintrc +0 -59
  694. package/node_modules/isstream/.npmignore +0 -1
  695. package/node_modules/isstream/.travis.yml +0 -12
  696. package/node_modules/isstream/LICENSE.md +0 -11
  697. package/node_modules/isstream/README.md +0 -66
  698. package/node_modules/isstream/isstream.js +0 -27
  699. package/node_modules/isstream/package.json +0 -93
  700. package/node_modules/isstream/test.js +0 -168
  701. package/node_modules/jodid25519/.npmignore +0 -11
  702. package/node_modules/jodid25519/.travis.yml +0 -7
  703. package/node_modules/jodid25519/AUTHORS.md +0 -3
  704. package/node_modules/jodid25519/LICENSE +0 -23
  705. package/node_modules/jodid25519/README.md +0 -51
  706. package/node_modules/jodid25519/almond.0 +0 -42
  707. package/node_modules/jodid25519/almond.1 +0 -13
  708. package/node_modules/jodid25519/index.js +0 -35
  709. package/node_modules/jodid25519/jsdoc.json +0 -19
  710. package/node_modules/jodid25519/lib/core.js +0 -481
  711. package/node_modules/jodid25519/lib/curve255.js +0 -221
  712. package/node_modules/jodid25519/lib/dh.js +0 -111
  713. package/node_modules/jodid25519/lib/eddsa.js +0 -573
  714. package/node_modules/jodid25519/lib/utils.js +0 -198
  715. package/node_modules/jodid25519/package.json +0 -104
  716. package/node_modules/jsbn/.npmignore +0 -2
  717. package/node_modules/jsbn/LICENSE +0 -40
  718. package/node_modules/jsbn/README.md +0 -175
  719. package/node_modules/jsbn/example.html +0 -12
  720. package/node_modules/jsbn/example.js +0 -3
  721. package/node_modules/jsbn/index.js +0 -1357
  722. package/node_modules/jsbn/package.json +0 -91
  723. package/node_modules/json-schema/README.md +0 -5
  724. package/node_modules/json-schema/draft-00/hyper-schema +0 -68
  725. package/node_modules/json-schema/draft-00/json-ref +0 -26
  726. package/node_modules/json-schema/draft-00/links +0 -33
  727. package/node_modules/json-schema/draft-00/schema +0 -155
  728. package/node_modules/json-schema/draft-01/hyper-schema +0 -68
  729. package/node_modules/json-schema/draft-01/json-ref +0 -26
  730. package/node_modules/json-schema/draft-01/links +0 -33
  731. package/node_modules/json-schema/draft-01/schema +0 -155
  732. package/node_modules/json-schema/draft-02/hyper-schema +0 -68
  733. package/node_modules/json-schema/draft-02/json-ref +0 -26
  734. package/node_modules/json-schema/draft-02/links +0 -35
  735. package/node_modules/json-schema/draft-02/schema +0 -166
  736. package/node_modules/json-schema/draft-03/examples/address +0 -20
  737. package/node_modules/json-schema/draft-03/examples/calendar +0 -53
  738. package/node_modules/json-schema/draft-03/examples/card +0 -105
  739. package/node_modules/json-schema/draft-03/examples/geo +0 -8
  740. package/node_modules/json-schema/draft-03/examples/interfaces +0 -23
  741. package/node_modules/json-schema/draft-03/hyper-schema +0 -60
  742. package/node_modules/json-schema/draft-03/json-ref +0 -26
  743. package/node_modules/json-schema/draft-03/links +0 -35
  744. package/node_modules/json-schema/draft-03/schema +0 -174
  745. package/node_modules/json-schema/draft-04/hyper-schema +0 -60
  746. package/node_modules/json-schema/draft-04/links +0 -41
  747. package/node_modules/json-schema/draft-04/schema +0 -189
  748. package/node_modules/json-schema/draft-zyp-json-schema-03.xml +0 -1120
  749. package/node_modules/json-schema/draft-zyp-json-schema-04.xml +0 -1072
  750. package/node_modules/json-schema/lib/links.js +0 -66
  751. package/node_modules/json-schema/lib/validate.js +0 -273
  752. package/node_modules/json-schema/package.json +0 -100
  753. package/node_modules/json-schema/test/tests.js +0 -95
  754. package/node_modules/json-stringify-safe/.npmignore +0 -1
  755. package/node_modules/json-stringify-safe/CHANGELOG.md +0 -14
  756. package/node_modules/json-stringify-safe/Makefile +0 -35
  757. package/node_modules/json-stringify-safe/README.md +0 -52
  758. package/node_modules/json-stringify-safe/package.json +0 -102
  759. package/node_modules/json-stringify-safe/stringify.js +0 -27
  760. package/node_modules/json-stringify-safe/test/mocha.opts +0 -2
  761. package/node_modules/json-stringify-safe/test/stringify_test.js +0 -246
  762. package/node_modules/jsonpointer/LICENSE.md +0 -21
  763. package/node_modules/jsonpointer/README.md +0 -39
  764. package/node_modules/jsonpointer/jsonpointer.js +0 -93
  765. package/node_modules/jsonpointer/package.json +0 -112
  766. package/node_modules/jsprim/CHANGES.md +0 -39
  767. package/node_modules/jsprim/LICENSE +0 -19
  768. package/node_modules/jsprim/README.md +0 -237
  769. package/node_modules/jsprim/lib/jsprim.js +0 -488
  770. package/node_modules/jsprim/package.json +0 -85
  771. package/node_modules/mime-db/HISTORY.md +0 -391
  772. package/node_modules/mime-db/LICENSE +0 -22
  773. package/node_modules/mime-db/README.md +0 -82
  774. package/node_modules/mime-db/db.json +0 -6751
  775. package/node_modules/mime-db/index.js +0 -11
  776. package/node_modules/mime-db/package.json +0 -138
  777. package/node_modules/mime-types/HISTORY.md +0 -216
  778. package/node_modules/mime-types/LICENSE +0 -23
  779. package/node_modules/mime-types/README.md +0 -103
  780. package/node_modules/mime-types/index.js +0 -188
  781. package/node_modules/mime-types/package.json +0 -128
  782. package/node_modules/ms/.npmignore +0 -5
  783. package/node_modules/ms/History.md +0 -66
  784. package/node_modules/ms/LICENSE +0 -20
  785. package/node_modules/ms/README.md +0 -35
  786. package/node_modules/oauth-sign/LICENSE +0 -55
  787. package/node_modules/oauth-sign/README.md +0 -4
  788. package/node_modules/oauth-sign/index.js +0 -136
  789. package/node_modules/oauth-sign/package.json +0 -98
  790. package/node_modules/pinkie/index.js +0 -292
  791. package/node_modules/pinkie/license +0 -21
  792. package/node_modules/pinkie/package.json +0 -100
  793. package/node_modules/pinkie/readme.md +0 -83
  794. package/node_modules/pinkie-promise/index.js +0 -3
  795. package/node_modules/pinkie-promise/license +0 -21
  796. package/node_modules/pinkie-promise/package.json +0 -102
  797. package/node_modules/pinkie-promise/readme.md +0 -28
  798. package/node_modules/process-nextick-args/.travis.yml +0 -12
  799. package/node_modules/process-nextick-args/test.js +0 -24
  800. package/node_modules/punycode/README.md +0 -176
  801. package/node_modules/punycode/package.json +0 -127
  802. package/node_modules/punycode/punycode.js +0 -533
  803. package/node_modules/qs/.eslintignore +0 -1
  804. package/node_modules/qs/.eslintrc +0 -19
  805. package/node_modules/qs/CHANGELOG.md +0 -156
  806. package/node_modules/qs/LICENSE +0 -28
  807. package/node_modules/qs/README.md +0 -431
  808. package/node_modules/qs/dist/qs.js +0 -587
  809. package/node_modules/qs/lib/formats.js +0 -18
  810. package/node_modules/qs/lib/index.js +0 -11
  811. package/node_modules/qs/lib/parse.js +0 -166
  812. package/node_modules/qs/lib/stringify.js +0 -200
  813. package/node_modules/qs/lib/utils.js +0 -180
  814. package/node_modules/qs/package.json +0 -121
  815. package/node_modules/qs/test/.eslintrc +0 -10
  816. package/node_modules/qs/test/index.js +0 -7
  817. package/node_modules/qs/test/parse.js +0 -484
  818. package/node_modules/qs/test/stringify.js +0 -538
  819. package/node_modules/qs/test/utils.js +0 -22
  820. package/node_modules/readable-stream/.npmignore +0 -9
  821. package/node_modules/request/CHANGELOG.md +0 -662
  822. package/node_modules/request/LICENSE +0 -55
  823. package/node_modules/request/README.md +0 -1098
  824. package/node_modules/request/index.js +0 -156
  825. package/node_modules/request/lib/auth.js +0 -168
  826. package/node_modules/request/lib/cookies.js +0 -39
  827. package/node_modules/request/lib/getProxyFromURI.js +0 -79
  828. package/node_modules/request/lib/har.js +0 -215
  829. package/node_modules/request/lib/helpers.js +0 -65
  830. package/node_modules/request/lib/multipart.js +0 -112
  831. package/node_modules/request/lib/oauth.js +0 -147
  832. package/node_modules/request/lib/querystring.js +0 -51
  833. package/node_modules/request/lib/redirect.js +0 -157
  834. package/node_modules/request/lib/tunnel.js +0 -176
  835. package/node_modules/request/package.json +0 -163
  836. package/node_modules/request/request.js +0 -1475
  837. package/node_modules/sntp/.npmignore +0 -18
  838. package/node_modules/sntp/.travis.yml +0 -5
  839. package/node_modules/sntp/LICENSE +0 -28
  840. package/node_modules/sntp/Makefile +0 -9
  841. package/node_modules/sntp/README.md +0 -68
  842. package/node_modules/sntp/examples/offset.js +0 -16
  843. package/node_modules/sntp/examples/time.js +0 -25
  844. package/node_modules/sntp/index.js +0 -1
  845. package/node_modules/sntp/lib/index.js +0 -412
  846. package/node_modules/sntp/package.json +0 -98
  847. package/node_modules/sntp/test/index.js +0 -435
  848. package/node_modules/sshpk/.npmignore +0 -9
  849. package/node_modules/sshpk/.travis.yml +0 -11
  850. package/node_modules/sshpk/LICENSE +0 -18
  851. package/node_modules/sshpk/README.md +0 -666
  852. package/node_modules/sshpk/bin/sshpk-conv +0 -201
  853. package/node_modules/sshpk/bin/sshpk-sign +0 -191
  854. package/node_modules/sshpk/bin/sshpk-verify +0 -166
  855. package/node_modules/sshpk/lib/algs.js +0 -168
  856. package/node_modules/sshpk/lib/certificate.js +0 -291
  857. package/node_modules/sshpk/lib/dhe.js +0 -311
  858. package/node_modules/sshpk/lib/ed-compat.js +0 -96
  859. package/node_modules/sshpk/lib/errors.js +0 -84
  860. package/node_modules/sshpk/lib/fingerprint.js +0 -161
  861. package/node_modules/sshpk/lib/formats/auto.js +0 -73
  862. package/node_modules/sshpk/lib/formats/openssh-cert.js +0 -289
  863. package/node_modules/sshpk/lib/formats/pem.js +0 -186
  864. package/node_modules/sshpk/lib/formats/pkcs1.js +0 -320
  865. package/node_modules/sshpk/lib/formats/pkcs8.js +0 -505
  866. package/node_modules/sshpk/lib/formats/rfc4253.js +0 -146
  867. package/node_modules/sshpk/lib/formats/ssh-private.js +0 -261
  868. package/node_modules/sshpk/lib/formats/ssh.js +0 -114
  869. package/node_modules/sshpk/lib/formats/x509-pem.js +0 -77
  870. package/node_modules/sshpk/lib/formats/x509.js +0 -484
  871. package/node_modules/sshpk/lib/identity.js +0 -277
  872. package/node_modules/sshpk/lib/index.js +0 -38
  873. package/node_modules/sshpk/lib/key.js +0 -270
  874. package/node_modules/sshpk/lib/private-key.js +0 -231
  875. package/node_modules/sshpk/lib/signature.js +0 -245
  876. package/node_modules/sshpk/lib/ssh-buffer.js +0 -148
  877. package/node_modules/sshpk/lib/utils.js +0 -288
  878. package/node_modules/sshpk/man/man1/sshpk-conv.1 +0 -135
  879. package/node_modules/sshpk/man/man1/sshpk-sign.1 +0 -81
  880. package/node_modules/sshpk/man/man1/sshpk-verify.1 +0 -68
  881. package/node_modules/sshpk/node_modules/assert-plus/AUTHORS +0 -6
  882. package/node_modules/sshpk/node_modules/assert-plus/CHANGES.md +0 -14
  883. package/node_modules/sshpk/node_modules/assert-plus/README.md +0 -162
  884. package/node_modules/sshpk/node_modules/assert-plus/assert.js +0 -211
  885. package/node_modules/sshpk/node_modules/assert-plus/package.json +0 -115
  886. package/node_modules/sshpk/package.json +0 -135
  887. package/node_modules/string_decoder/.npmignore +0 -2
  888. package/node_modules/string_decoder/index.js +0 -221
  889. package/node_modules/stringstream/.npmignore +0 -15
  890. package/node_modules/stringstream/.travis.yml +0 -4
  891. package/node_modules/stringstream/LICENSE.txt +0 -22
  892. package/node_modules/stringstream/README.md +0 -38
  893. package/node_modules/stringstream/example.js +0 -27
  894. package/node_modules/stringstream/package.json +0 -85
  895. package/node_modules/stringstream/stringstream.js +0 -102
  896. package/node_modules/supports-color/index.js +0 -50
  897. package/node_modules/supports-color/license +0 -21
  898. package/node_modules/supports-color/package.json +0 -113
  899. package/node_modules/supports-color/readme.md +0 -36
  900. package/node_modules/tar/.npmignore +0 -5
  901. package/node_modules/tar/.travis.yml +0 -4
  902. package/node_modules/tar/examples/extracter.js +0 -19
  903. package/node_modules/tar/examples/packer.js +0 -24
  904. package/node_modules/tar/examples/reader.js +0 -36
  905. package/node_modules/tar/lib/buffer-entry.js +0 -30
  906. package/node_modules/tar/lib/entry-writer.js +0 -169
  907. package/node_modules/tar/lib/entry.js +0 -220
  908. package/node_modules/tar/lib/extended-header-writer.js +0 -191
  909. package/node_modules/tar/lib/extended-header.js +0 -140
  910. package/node_modules/tar/lib/global-header-writer.js +0 -14
  911. package/node_modules/tar/tar.js +0 -173
  912. package/node_modules/tar/test/00-setup-fixtures.js +0 -53
  913. package/node_modules/tar/test/cb-never-called-1.0.1.tgz +0 -0
  914. package/node_modules/tar/test/dir-normalization.js +0 -177
  915. package/node_modules/tar/test/dir-normalization.tar +0 -0
  916. package/node_modules/tar/test/error-on-broken.js +0 -33
  917. package/node_modules/tar/test/extract-move.js +0 -132
  918. package/node_modules/tar/test/extract.js +0 -367
  919. package/node_modules/tar/test/fixtures.tgz +0 -0
  920. package/node_modules/tar/test/header.js +0 -183
  921. package/node_modules/tar/test/pack-no-proprietary.js +0 -886
  922. package/node_modules/tar/test/pack.js +0 -952
  923. package/node_modules/tar/test/parse-discard.js +0 -29
  924. package/node_modules/tar/test/parse.js +0 -359
  925. package/node_modules/tar/test/zz-cleanup.js +0 -20
  926. package/node_modules/tar-pack/.npmignore +0 -14
  927. package/node_modules/tar-pack/.travis.yml +0 -7
  928. package/node_modules/tar-pack/LICENSE +0 -23
  929. package/node_modules/tar-pack/README.md +0 -84
  930. package/node_modules/tar-pack/index.js +0 -245
  931. package/node_modules/tar-pack/node_modules/once/README.md +0 -51
  932. package/node_modules/tar-pack/node_modules/once/once.js +0 -21
  933. package/node_modules/tar-pack/node_modules/once/package.json +0 -96
  934. package/node_modules/tar-pack/node_modules/readable-stream/.npmignore +0 -8
  935. package/node_modules/tar-pack/node_modules/readable-stream/.travis.yml +0 -49
  936. package/node_modules/tar-pack/node_modules/readable-stream/LICENSE +0 -18
  937. package/node_modules/tar-pack/node_modules/readable-stream/README.md +0 -36
  938. package/node_modules/tar-pack/node_modules/readable-stream/doc/stream.md +0 -2015
  939. package/node_modules/tar-pack/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  940. package/node_modules/tar-pack/node_modules/readable-stream/duplex.js +0 -1
  941. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_duplex.js +0 -75
  942. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_passthrough.js +0 -26
  943. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_readable.js +0 -937
  944. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_transform.js +0 -180
  945. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_writable.js +0 -526
  946. package/node_modules/tar-pack/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -64
  947. package/node_modules/tar-pack/node_modules/readable-stream/package.json +0 -125
  948. package/node_modules/tar-pack/node_modules/readable-stream/passthrough.js +0 -1
  949. package/node_modules/tar-pack/node_modules/readable-stream/transform.js +0 -1
  950. package/node_modules/tar-pack/node_modules/readable-stream/writable.js +0 -1
  951. package/node_modules/tar-pack/package.json +0 -109
  952. package/node_modules/tar-pack/test/fixtures/packed-file.txt +0 -1
  953. package/node_modules/tar-pack/test/fixtures/packed.tar.gz +0 -0
  954. package/node_modules/tar-pack/test/fixtures/to-pack/bar.txt +0 -1
  955. package/node_modules/tar-pack/test/fixtures/to-pack/foo.txt +0 -1
  956. package/node_modules/tar-pack/test/index.js +0 -109
  957. package/node_modules/tough-cookie/LICENSE +0 -27
  958. package/node_modules/tough-cookie/README.md +0 -506
  959. package/node_modules/tough-cookie/lib/cookie.js +0 -1336
  960. package/node_modules/tough-cookie/lib/memstore.js +0 -170
  961. package/node_modules/tough-cookie/lib/pathMatch.js +0 -61
  962. package/node_modules/tough-cookie/lib/permuteDomain.js +0 -56
  963. package/node_modules/tough-cookie/lib/pubsuffix.js +0 -98
  964. package/node_modules/tough-cookie/lib/store.js +0 -71
  965. package/node_modules/tough-cookie/package.json +0 -135
  966. package/node_modules/tunnel-agent/LICENSE +0 -55
  967. package/node_modules/tunnel-agent/README.md +0 -4
  968. package/node_modules/tunnel-agent/index.js +0 -243
  969. package/node_modules/tunnel-agent/package.json +0 -100
  970. package/node_modules/tweetnacl/.npmignore +0 -4
  971. package/node_modules/tweetnacl/AUTHORS.md +0 -28
  972. package/node_modules/tweetnacl/CHANGELOG.md +0 -221
  973. package/node_modules/tweetnacl/LICENSE +0 -24
  974. package/node_modules/tweetnacl/PULL_REQUEST_TEMPLATE.md +0 -20
  975. package/node_modules/tweetnacl/README.md +0 -459
  976. package/node_modules/tweetnacl/nacl-fast.js +0 -2388
  977. package/node_modules/tweetnacl/nacl-fast.min.js +0 -2
  978. package/node_modules/tweetnacl/nacl.d.ts +0 -98
  979. package/node_modules/tweetnacl/nacl.js +0 -1175
  980. package/node_modules/tweetnacl/nacl.min.js +0 -1
  981. package/node_modules/tweetnacl/package.json +0 -121
  982. package/node_modules/uid-number/LICENSE +0 -15
  983. package/node_modules/uid-number/README.md +0 -17
  984. package/node_modules/uid-number/get-uid-gid.js +0 -24
  985. package/node_modules/uid-number/package.json +0 -82
  986. package/node_modules/uid-number/uid-number.js +0 -59
  987. package/node_modules/uuid/.npmignore +0 -8
  988. package/node_modules/uuid/.travis.yml +0 -5
  989. package/node_modules/uuid/AUTHORS +0 -5
  990. package/node_modules/uuid/HISTORY.md +0 -28
  991. package/node_modules/uuid/LICENSE.md +0 -21
  992. package/node_modules/uuid/README.md +0 -132
  993. package/node_modules/uuid/bin/uuid +0 -26
  994. package/node_modules/uuid/index.js +0 -8
  995. package/node_modules/uuid/lib/bytesToUuid.js +0 -23
  996. package/node_modules/uuid/lib/rng-browser.js +0 -33
  997. package/node_modules/uuid/lib/rng.js +0 -10
  998. package/node_modules/uuid/package.json +0 -122
  999. package/node_modules/uuid/test/mocha.opts +0 -3
  1000. package/node_modules/uuid/test/test.js +0 -96
  1001. package/node_modules/uuid/v1.js +0 -103
  1002. package/node_modules/uuid/v4.js +0 -29
  1003. package/node_modules/verror/.gitmodules +0 -0
  1004. package/node_modules/verror/.npmignore +0 -1
  1005. package/node_modules/verror/LICENSE +0 -19
  1006. package/node_modules/verror/Makefile +0 -35
  1007. package/node_modules/verror/Makefile.targ +0 -285
  1008. package/node_modules/verror/README.md +0 -120
  1009. package/node_modules/verror/examples/levels-verror.js +0 -36
  1010. package/node_modules/verror/examples/levels-werror.js +0 -34
  1011. package/node_modules/verror/examples/varargs.js +0 -6
  1012. package/node_modules/verror/examples/verror.js +0 -13
  1013. package/node_modules/verror/examples/werror.js +0 -14
  1014. package/node_modules/verror/jsl.node.conf +0 -139
  1015. package/node_modules/verror/lib/verror.js +0 -157
  1016. package/node_modules/verror/package.json +0 -78
  1017. package/node_modules/verror/tests/tst.inherit.js +0 -100
  1018. package/node_modules/verror/tests/tst.verror.js +0 -156
  1019. package/node_modules/verror/tests/tst.werror.js +0 -179
  1020. package/node_modules/wide-align/.npmignore +0 -5
  1021. package/node_modules/wide-align/test/align.js +0 -37
  1022. package/node_modules/xtend/.jshintrc +0 -30
  1023. package/node_modules/xtend/.npmignore +0 -1
  1024. package/node_modules/xtend/Makefile +0 -4
  1025. package/node_modules/xtend/README.md +0 -32
  1026. package/node_modules/xtend/immutable.js +0 -19
  1027. package/node_modules/xtend/mutable.js +0 -17
  1028. package/node_modules/xtend/package.json +0 -117
  1029. package/node_modules/xtend/test.js +0 -83
@@ -0,0 +1,593 @@
1
+ Needle
2
+ ======
3
+
4
+ [![NPM](https://nodei.co/npm/needle.png)](https://nodei.co/npm/needle/)
5
+
6
+ The leanest and most handsome HTTP client in the Nodelands.
7
+
8
+ ```js
9
+ var needle = require('needle');
10
+
11
+ needle.get('http://www.google.com', function(error, response) {
12
+ if (!error && response.statusCode == 200)
13
+ console.log(response.body);
14
+ });
15
+ ```
16
+
17
+ Callbacks not floating your boat? Needle got your back.
18
+
19
+ ``` js
20
+ var data = {
21
+ file: '/home/johnlennon/walrus.png',
22
+ content_type: 'image/png'
23
+ };
24
+
25
+ // the callback is optional, and needle returns a `readableStream` object
26
+ // that triggers a 'done' event when the request/response process is complete.
27
+ needle
28
+ .post('https://my.server.com/foo', data, { multipart: true })
29
+ .on('readable', function() { /* eat your chunks */ })
30
+ .on('done', function(err, resp) {
31
+ console.log('Ready-o!');
32
+ })
33
+ ```
34
+
35
+ From version 2.0.x up, Promises are also supported. Just call `needle()` directly and you'll get a native Promise object.
36
+
37
+ ```js
38
+ needle('put', 'https://hacking.the.gibson/login', { password: 'god' })
39
+ .then(function(response) {
40
+ return doSomethingWith(response)
41
+ })
42
+ .catch(function(err) {
43
+ console.log('Call the locksmith!')
44
+ })
45
+ ```
46
+
47
+ With only two real dependencies, Needle supports:
48
+
49
+ - HTTP/HTTPS requests, with the usual verbs you would expect
50
+ - All of Node's native TLS options, such as 'rejectUnauthorized' (see below)
51
+ - Basic & Digest authentication with auto-detection
52
+ - Multipart form-data (e.g. file uploads)
53
+ - HTTP Proxy forwarding, optionally with authentication
54
+ - Streaming gzip or deflate decompression
55
+ - Automatic XML & JSON parsing
56
+ - 301/302/303 redirect following, with fine-grained tuning, and
57
+ - Streaming non-UTF-8 charset decoding, via `iconv-lite`
58
+
59
+ And yes, Mr. Wayne, it does come in black.
60
+
61
+ This makes Needle an ideal alternative for performing quick HTTP requests in Node, either for API interaction, downloading or uploading streams of data, and so on. If you need OAuth, AWS support or anything fancier, you should check out mikeal's request module.
62
+
63
+ Install
64
+ -------
65
+
66
+ ```
67
+ $ npm install needle
68
+ ```
69
+
70
+ Usage
71
+ -----
72
+
73
+ ```js
74
+ // using promises
75
+ needle('get', 'https://server.com/posts/12')
76
+ .then(function(resp) {
77
+ // ...
78
+ })
79
+ .catch(function(err) {
80
+ // ...
81
+ })
82
+ });
83
+
84
+ // with callback
85
+ needle.get('ifconfig.me/all.json', function(error, response, body) {
86
+ if (error) throw error;
87
+
88
+ // body is an alias for `response.body`,
89
+ // that in this case holds a JSON-decoded object.
90
+ console.log(body.ip_addr);
91
+ });
92
+
93
+ // no callback, using streams
94
+ var out = fs.createWriteStream('logo.png');
95
+ needle.get('https://google.com/images/logo.png').pipe(out).on('finish', function() {
96
+ console.log('Pipe finished!');
97
+ });
98
+ ```
99
+
100
+ As you can see, you can use Needle with Promises or without them. When using Promises or when a callback is passed, the response's body will be buffered and written to `response.body`, and the callback will be fired when all of the data has been collected and processed (e.g. decompressed, decoded and/or parsed).
101
+
102
+ When no callback is passed, however, the buffering logic will be skipped but the response stream will still go through Needle's processing pipeline, so you get all the benefits of post-processing while keeping the streamishness we all love from Node.
103
+
104
+ Response pipeline
105
+ -----------------
106
+
107
+ Depending on the response's Content-Type, Needle will either attempt to parse JSON or XML streams, or, if a text response was received, will ensure that the final encoding you get is UTF-8.
108
+
109
+ You can also request a gzip/deflated response, which, if sent by the server, will be processed before parsing or decoding is performed.
110
+
111
+ ```js
112
+ needle.get('http://stackoverflow.com/feeds', { compressed: true }, function(err, resp) {
113
+ console.log(resp.body); // this little guy won't be a Gzipped binary blob
114
+ // but a nice object containing all the latest entries
115
+ });
116
+ ```
117
+
118
+ Or in anti-callback mode, using a few other options:
119
+
120
+ ```js
121
+ var options = {
122
+ compressed : true, // sets 'Accept-Encoding' to 'gzip,deflate'
123
+ follow_max : 5, // follow up to five redirects
124
+ rejectUnauthorized : true // verify SSL certificate
125
+ }
126
+
127
+ var stream = needle.get('https://backend.server.com/everything.html', options);
128
+
129
+ // read the chunks from the 'readable' event, so the stream gets consumed.
130
+ stream.on('readable', function() {
131
+ while (data = this.read()) {
132
+ console.log(data.toString());
133
+ }
134
+ })
135
+
136
+ stream.on('done', function(err) {
137
+ // if our request had an error, our 'done' event will tell us.
138
+ if (!err) console.log('Great success!');
139
+ })
140
+ ```
141
+
142
+ API
143
+ ---
144
+
145
+ ### needle(method, url[, data][, options][, callback]) `(> 2.0.x)`
146
+
147
+ Calling `needle()` directly returns a Promise. Besides `method` and `url`, all parameters are optional, although when sending a `post`, `put` or `patch` request you will get an error if `data` is not present.
148
+
149
+ ```js
150
+ needle('get', 'http://some.url.com')
151
+ .then(function(resp) { console.log(resp.body) })
152
+ .catch(function(err) { console.error(err) })
153
+ })
154
+ ```
155
+
156
+ Except from the above, all of Needle's request methods return a Readable stream, and both `options` and `callback` are optional. If passed, the callback will return three arguments: `error`, `response` and `body`, which is basically an alias for `response.body`.
157
+
158
+ ### needle.head(url[, options][, callback])
159
+
160
+ ```js
161
+ needle.head('https://my.backend.server.com', {
162
+ open_timeout: 5000 // if we're not able to open a connection in 5 seconds, boom.
163
+ }, function(err, resp) {
164
+ if (err)
165
+ console.log('Shoot! Something is wrong: ' + err.message)
166
+ else
167
+ console.log('Yup, still alive.')
168
+ })
169
+ ```
170
+
171
+ ### needle.get(url[, options][, callback])
172
+
173
+ ```js
174
+ needle.get('google.com/search?q=syd+barrett', function(err, resp) {
175
+ // if no http:// is found, Needle will automagically prepend it.
176
+ });
177
+ ```
178
+
179
+ ### needle.post(url, data[, options][, callback])
180
+
181
+ ```js
182
+ var options = {
183
+ headers: { 'X-Custom-Header': 'Bumbaway atuna' }
184
+ }
185
+
186
+ needle.post('https://my.app.com/endpoint', 'foo=bar', options, function(err, resp) {
187
+ // you can pass params as a string or as an object.
188
+ });
189
+ ```
190
+
191
+ ### needle.put(url, data[, options][, callback])
192
+
193
+ ```js
194
+ var nested = {
195
+ params: {
196
+ are: {
197
+ also: 'supported'
198
+ }
199
+ }
200
+ }
201
+
202
+ needle.put('https://api.app.com/v2', nested, function(err, resp) {
203
+ console.log('Got ' + resp.bytes + ' bytes.') // another nice treat from this handsome fella.
204
+ });
205
+ ```
206
+
207
+ ### needle.patch(url, data[, options][, callback])
208
+
209
+ Same behaviour as PUT.
210
+
211
+ ### needle.delete(url, data[, options][, callback])
212
+
213
+ ```js
214
+ var options = {
215
+ username: 'fidelio',
216
+ password: 'x'
217
+ }
218
+
219
+ needle.delete('https://api.app.com/messages/123', null, options, function(err, resp) {
220
+ // in this case, data may be null, but you need to explicity pass it.
221
+ });
222
+ ```
223
+
224
+ ### needle.request(method, url, data[, options][, callback])
225
+
226
+ Generic request. This not only allows for flexibility, but also lets you perform a GET request with data, in which case will be appended to the request as a query string, unless you pass a `json: true` option (read below).
227
+
228
+ ```js
229
+ var params = {
230
+ q : 'a very smart query',
231
+ page : 2
232
+ }
233
+
234
+ needle.request('get', 'forum.com/search', params, function(err, resp) {
235
+ if (!err && resp.statusCode == 200)
236
+ console.log(resp.body); // here you go, mister.
237
+ });
238
+ ```
239
+
240
+ Now, if you set pass `json: true` among the options, Needle won't set your params as a querystring but instead send a JSON representation of your data through the request's body, as well as set the `Content-Type` and `Accept` headers to `application/json`.
241
+
242
+ ```js
243
+ needle.request('get', 'forum.com/search', params, { json: true }, function(err, resp) {
244
+ if (resp.statusCode == 200) console.log('It worked!');
245
+ });
246
+ ```
247
+
248
+ Events
249
+ ------
250
+
251
+ The [Readable stream](https://nodejs.org/api/stream.html#stream_class_stream_readable) object returned by the above request methods emits the following events, in addition to the regular ones (e.g. `end`, `close`, `data`, `pipe`, `readable`).
252
+
253
+ ### Event: `'response'`
254
+
255
+ - `response <http.IncomingMessage>`
256
+
257
+ Emitted when the underlying [http.ClientRequest](https://nodejs.org/api/http.html#http_class_http_clientrequest) emits a response event. This is after the connection is established and the header received, but before any of it is processed (e.g. authorization required or redirect to be followed). No data has been consumed at this point.
258
+
259
+ ### Event: `'redirect'`
260
+
261
+ - `location <String>`
262
+
263
+ Indicates that the a redirect is being followed. This means that the response code was a redirect (`301`, `302`, `303`, `307`) and the given [redirect options](#redirect-options) allowed following the URL received in the `Location` header.
264
+
265
+ ### Event: `'header'`
266
+
267
+ - `statusCode <Integer>`
268
+ - `headers <Object>`
269
+
270
+ Triggered after the header has been processed, and just before the data is to be consumed. This implies that no redirect was followed and/or authentication header was received. In other words, we got a "valid" response.
271
+
272
+ ### Event: `'done'` (previously 'end')
273
+
274
+ - `exception <Error>` (optional)
275
+
276
+ Emitted when the request/response process has finished, either because all data was consumed or an error ocurred somewhere in between. Unlike a regular stream's `end` event, Needle's `done` will be fired either on success or on failure, which is why the first argument may be an Error object. In other words:
277
+
278
+ ```js
279
+ var resp = needle.get('something.worthy/of/being/streamed/by/needle');
280
+ resp.pipe(someWritableStream);
281
+
282
+ resp.on('done', function(err) {
283
+ if (err) console.log('An error ocurred: ' + err.message);
284
+ else console.log('Great success!');
285
+ })
286
+ ```
287
+
288
+ ### Event: `'err'`
289
+
290
+ - `exception <Error>`
291
+
292
+ Emitted when an error ocurrs. This should only happen once in the lifecycle of a Needle request.
293
+
294
+ ### Event: `'timeout'`
295
+
296
+ - `type <String>`
297
+
298
+ Emitted when an timeout error occurs. Type can be either 'open', 'response', or 'read'. This will called right before aborting the request, which will also trigger an `err` event, a described above, with an `ECONNRESET` (Socket hang up) exception.
299
+
300
+ Request options
301
+ ---------------
302
+
303
+ For information about options that've changed, there's always [the changelog](https://github.com/tomas/needle/releases).
304
+
305
+ - `agent` : Uses an [http.Agent](https://nodejs.org/api/http.html#http_class_http_agent) of your choice, instead of the global, default one. Useful for tweaking the behaviour at the connection level, such as when doing tunneling (see below for an example).
306
+ - `json` : When `true`, sets content type to `application/json` and sends request body as JSON string, instead of a query string.
307
+ - `open_timeout`: (or `timeout`) Returns error if connection takes longer than X milisecs to establish. Defaults to `10000` (10 secs). `0` means no timeout.
308
+ - `response_timeout`: Returns error if no response headers are received in X milisecs, counting from when the connection is opened. Defaults to `0` (no response timeout).
309
+ - `read_timeout`: Returns error if data transfer takes longer than X milisecs, once response headers are received. Defaults to `0` (no timeout).
310
+ - `follow_max` : (or `follow`) Number of redirects to follow. Defaults to `0`. See below for more redirect options.
311
+ - `multipart` : Enables multipart/form-data encoding. Defaults to `false`. Use it when uploading files.
312
+ - `proxy` : Forwards request through HTTP(s) proxy. Eg. `proxy: 'http://user:pass@proxy.server.com:3128'`. For more advanced proxying/tunneling use a custom `agent`, as described below.
313
+ - `headers` : Object containing custom HTTP headers for request. Overrides defaults described below.
314
+ - `auth` : Determines what to do with provided username/password. Options are `auto`, `digest` or `basic` (default). `auto` will detect the type of authentication depending on the response headers.
315
+ - `stream_length`: When sending streams, this lets you manually set the Content-Length header --if the stream's bytecount is known beforehand--, preventing ECONNRESET (socket hang up) errors on some servers that misbehave when receiving payloads of unknown size. Set it to `0` and Needle will get and set the stream's length for you, or leave unset for the default behaviour, which is no Content-Length header for stream payloads.
316
+
317
+ Response options
318
+ ----------------
319
+
320
+ - `decode_response` : (or `decode`) Whether to decode the text responses to UTF-8, if Content-Type header shows a different charset. Defaults to `true`.
321
+ - `parse_response` : (or `parse`) Whether to parse XML or JSON response bodies automagically. Defaults to `true`. You can also set this to 'xml' or 'json' in which case Needle will *only* parse the response if the content type matches.
322
+ - `output` : Dump response output to file. This occurs after parsing and charset decoding is done.
323
+ - `parse_cookies` : Whether to parse response’s `Set-Cookie` header. Defaults to `true`. If parsed, response cookies will be available at `resp.cookies`.
324
+
325
+ HTTP Header options
326
+ -------------------
327
+
328
+ These are basically shortcuts to the `headers` option described above.
329
+
330
+ - `cookies` : Builds and sets a Cookie header from a `{ key: 'value' }` object.
331
+ - `compressed`: If `true`, sets 'Accept-Encoding' header to 'gzip,deflate', and inflates content if zipped. Defaults to `false`.
332
+ - `username` : For HTTP basic auth.
333
+ - `password` : For HTTP basic auth. Requires username to be passed, but is optional.
334
+ - `accept` : Sets 'Accept' HTTP header. Defaults to `*/*`.
335
+ - `connection`: Sets 'Connection' HTTP header. Not set by default, unless running Node < 0.11.4 in which case it defaults to `close`. More info about this below.
336
+ - `user_agent`: Sets the 'User-Agent' HTTP header. Defaults to `Needle/{version} (Node.js {node_version})`.
337
+ - `content_type`: Sets the 'Content-Type' header. Unset by default, unless you're sending data in which case it's set accordingly to whatever is being sent (`application/x-www-form-urlencoded`, `application/json` or `multipart/form-data`). That is, of course, unless the option is passed, either here or through `options.headers`. You're the boss.
338
+
339
+ Node.js TLS Options
340
+ -------------------
341
+
342
+ These options are passed directly to `https.request` if present. Taken from the [original documentation](http://nodejs.org/docs/latest/api/https.html):
343
+
344
+ - `pfx` : Certificate, Private key and CA certificates to use for SSL.
345
+ - `key` : Private key to use for SSL.
346
+ - `passphrase` : A string of passphrase for the private key or pfx.
347
+ - `cert` : Public x509 certificate to use.
348
+ - `ca` : An authority certificate or array of authority certificates to check the remote host against.
349
+ - `ciphers` : A string describing the ciphers to use or exclude.
350
+ - `rejectUnauthorized` : If true, the server certificate is verified against the list of supplied CAs. An 'error' event is emitted if verification fails. Verification happens at the connection level, before the HTTP request is sent.
351
+ - `secureProtocol` : The SSL method to use, e.g. SSLv3_method to force SSL version 3.
352
+
353
+ Redirect options
354
+ ----------------
355
+
356
+ These options only apply if the `follow_max` (or `follow`) option is higher than 0.
357
+
358
+ - `follow_set_cookies` : Sends the cookies received in the `set-cookie` header as part of the following request. `false` by default.
359
+ - `follow_set_referer` : Sets the 'Referer' header to the requested URI when following a redirect. `false` by default.
360
+ - `follow_keep_method` : If enabled, resends the request using the original verb instead of being rewritten to `get` with no data. `false` by default.
361
+ - `follow_if_same_host` : When true, Needle will only follow redirects that point to the same host as the original request. `false` by default.
362
+ - `follow_if_same_protocol` : When true, Needle will only follow redirects that point to the same protocol as the original request. `false` by default.
363
+
364
+ Overriding Defaults
365
+ -------------------
366
+
367
+ Yes sir, we have it. Needle includes a `defaults()` method, that lets you override some of the defaults for all future requests. Like this:
368
+
369
+ ```js
370
+ needle.defaults({
371
+ open_timeout: 60000,
372
+ user_agent: 'MyApp/1.2.3',
373
+ parse_response: false });
374
+ ```
375
+
376
+ This will override Needle's default user agent and 10-second timeout, and disable response parsing, so you don't need to pass those options in every other request.
377
+
378
+ More advanced Proxy support
379
+ ---------------------------
380
+
381
+ Since you can pass a custom HTTPAgent to Needle you can do all sorts of neat stuff. For example, if you want to use the [`tunnel`](https://github.com/koichik/node-tunnel) module for HTTPS proxying, you can do this:
382
+
383
+ ```js
384
+ var tunnel = require('tunnel');
385
+ var myAgent = tunnel.httpOverHttp({
386
+ proxy: { host: 'localhost' }
387
+ });
388
+
389
+ needle.get('foobar.com', { agent: myAgent });
390
+ ```
391
+
392
+ Regarding the 'Connection' header
393
+ ---------------------------------
394
+
395
+ Unless you're running an old version of Node (< 0.11.4), by default Needle won't set the Connection header on requests, yielding Node's default behaviour of keeping the connection alive with the target server. This speeds up inmensely the process of sending several requests to the same host.
396
+
397
+ On older versions, however, this has the unwanted behaviour of preventing the runtime from exiting, either because of a bug or 'feature' that was changed on 0.11.4. To overcome this Needle does set the 'Connection' header to 'close' on those versions, however this also means that making new requests to the same host doesn't benefit from Keep-Alive.
398
+
399
+ So if you're stuck on 0.10 or even lower and want full speed, you can simply set the Connection header to 'Keep-Alive' by using `{ connection: 'Keep-Alive' }`. Please note, though, that an event loop handler will prevent the runtime from exiting so you'll need to manually call `process.exit()` or the universe will collapse.
400
+
401
+ Examples Galore
402
+ ---------------
403
+
404
+ ### HTTPS GET with Basic Auth
405
+
406
+ ```js
407
+ needle.get('https://api.server.com', { username: 'you', password: 'secret' },
408
+ function(err, resp) {
409
+ // used HTTP auth
410
+ });
411
+ ```
412
+
413
+ Or use [RFC-1738](http://tools.ietf.org/html/rfc1738#section-3.1) basic auth URL syntax:
414
+
415
+ ```js
416
+ needle.get('https://username:password@api.server.com', function(err, resp) {
417
+ // used HTTP auth from URL
418
+ });
419
+ ```
420
+
421
+ ### Digest Auth
422
+
423
+ ```js
424
+ needle.get('other.server.com', { username: 'you', password: 'secret', auth: 'digest' },
425
+ function(err, resp, body) {
426
+ // needle prepends 'http://' to your URL, if missing
427
+ });
428
+ ```
429
+
430
+ ### Custom Accept header, deflate
431
+
432
+ ```js
433
+ var options = {
434
+ compressed : true,
435
+ follow : 10,
436
+ accept : 'application/vnd.github.full+json'
437
+ }
438
+
439
+ needle.get('api.github.com/users/tomas', options, function(err, resp, body) {
440
+ // body will contain a JSON.parse(d) object
441
+ // if parsing fails, you'll simply get the original body
442
+ });
443
+ ```
444
+
445
+ ### GET XML object
446
+
447
+ ```js
448
+ needle.get('https://news.ycombinator.com/rss', function(err, resp, body) {
449
+ // you'll get a nice object containing the nodes in the RSS
450
+ });
451
+ ```
452
+
453
+ ### GET binary, output to file
454
+
455
+ ```js
456
+ needle.get('http://upload.server.com/tux.png', { output: '/tmp/tux.png' }, function(err, resp, body) {
457
+ // you can dump any response to a file, not only binaries.
458
+ });
459
+ ```
460
+
461
+ ### GET through proxy
462
+
463
+ ```js
464
+ needle.get('http://search.npmjs.org', { proxy: 'http://localhost:1234' }, function(err, resp, body) {
465
+ // request passed through proxy
466
+ });
467
+ ```
468
+
469
+ ### GET a very large document in a stream (from 0.7+)
470
+
471
+ ```js
472
+ var stream = needle.get('http://www.as35662.net/100.log');
473
+
474
+ stream.on('readable', function() {
475
+ var chunk;
476
+ while (chunk = this.read()) {
477
+ console.log('got data: ', chunk);
478
+ }
479
+ });
480
+ ```
481
+
482
+ ### GET JSON object in a stream (from 0.7+)
483
+
484
+ ```js
485
+ var stream = needle.get('http://jsonplaceholder.typicode.com/db', { parse: true });
486
+
487
+ stream.on('readable', function() {
488
+ var node;
489
+
490
+ // our stream will only emit a single JSON root node.
491
+ while (node = this.read()) {
492
+ console.log('got data: ', node);
493
+ }
494
+ });
495
+ ```
496
+
497
+ ### GET JSONStream flexible parser with search query (from 0.7+)
498
+
499
+ ```js
500
+
501
+ // The 'data' element of this stream will be the string representation
502
+ // of the titles of all posts.
503
+
504
+ needle.get('http://jsonplaceholder.typicode.com/db', { parse: true })
505
+ .pipe(new JSONStream.parse('posts.*.title'));
506
+ .on('data', function (obj) {
507
+ console.log('got post title: %s', obj);
508
+ });
509
+ ```
510
+
511
+ ### File upload using multipart, passing file path
512
+
513
+ ```js
514
+ var data = {
515
+ foo: 'bar',
516
+ image: { file: '/home/tomas/linux.png', content_type: 'image/png' }
517
+ }
518
+
519
+ needle.post('http://my.other.app.com', data, { multipart: true }, function(err, resp, body) {
520
+ // needle will read the file and include it in the form-data as binary
521
+ });
522
+ ```
523
+
524
+ ### Stream upload, PUT or POST
525
+
526
+ ``` js
527
+ needle.put('https://api.app.com/v2', fs.createReadStream('myfile.txt'), function(err, resp, body) {
528
+ // stream content is uploaded verbatim
529
+ });
530
+ ```
531
+
532
+ ### Multipart POST, passing data buffer
533
+
534
+ ```js
535
+ var buffer = fs.readFileSync('/path/to/package.zip');
536
+
537
+ var data = {
538
+ zip_file: {
539
+ buffer : buffer,
540
+ filename : 'mypackage.zip',
541
+ content_type : 'application/octet-stream'
542
+ }
543
+ }
544
+
545
+ needle.post('http://somewhere.com/over/the/rainbow', data, { multipart: true }, function(err, resp, body) {
546
+ // if you see, when using buffers we need to pass the filename for the multipart body.
547
+ // you can also pass a filename when using the file path method, in case you want to override
548
+ // the default filename to be received on the other end.
549
+ });
550
+ ```
551
+
552
+ ### Multipart with custom Content-Type
553
+
554
+ ```js
555
+ var data = {
556
+ token: 'verysecret',
557
+ payload: {
558
+ value: JSON.stringify({ title: 'test', version: 1 }),
559
+ content_type: 'application/json'
560
+ }
561
+ }
562
+
563
+ needle.post('http://test.com/', data, { timeout: 5000, multipart: true }, function(err, resp, body) {
564
+ // in this case, if the request takes more than 5 seconds
565
+ // the callback will return a [Socket closed] error
566
+ });
567
+ ```
568
+
569
+ For even more examples, check out the examples directory in the repo.
570
+
571
+ ### Testing
572
+
573
+ To run tests, you need to generate a self-signed SSL certificate in the `test` directory. After cloning the repository, run the following commands:
574
+
575
+ $ mkdir -p test/keys
576
+ $ openssl genrsa -out test/keys/ssl.key 2048
577
+ $ openssl req -new -key test/keys/ssl.key -x509 -days 999 -out test/keys/ssl.cert
578
+
579
+ Then you should be able to run `npm test` once you have the dependencies in place.
580
+
581
+ > Note: Tests currently only work on linux-based environments that have `/proc/self/fd`. They *do not* work on MacOS environments.
582
+ > You can use Docker to run tests by creating a container and mounting the needle project directory on `/app`
583
+ > `docker create --name Needle -v /app -w /app -v /app/node_modules -i node:argon`
584
+
585
+ Credits
586
+ -------
587
+
588
+ Written by Tomás Pollak, with the help of contributors.
589
+
590
+ Copyright
591
+ ---------
592
+
593
+ (c) Fork Ltd. Licensed under the MIT license.
@@ -0,0 +1,40 @@
1
+ #!/usr/bin/env node
2
+ var needle = require('./../lib/needle');
3
+
4
+ function exit(code, str) {
5
+ console.log(str) || process.exit(code);
6
+ }
7
+
8
+ function usage() {
9
+ var out = ['Usage: needle [get|head|post|put|delete] url [query]'];
10
+ out.push('Examples: \n needle get google.com\n needle post server.com/api foo=bar');
11
+ exit(1, out.join('\n'))
12
+ }
13
+
14
+ if (process.argv[2] == '-v' || process.argv[2] == '--version')
15
+ exit(0, needle.version);
16
+ else if (process.argv[2] == null)
17
+ usage();
18
+
19
+ var method = process.argv[2],
20
+ url = process.argv[3],
21
+ options = { compressed: true, parse_response: true, follow_max: 5, timeout: 10000 };
22
+
23
+ if (!needle[method]) {
24
+ url = method;
25
+ method = 'get';
26
+ }
27
+
28
+ var callback = function(err, resp) {
29
+ if (err) return exit(1, "Error: " + err.message);
30
+
31
+ if (process.argv.indexOf('-i') != -1)
32
+ console.log(resp.headers) || console.log('');
33
+
34
+ console.log(resp.body.toString());
35
+ };
36
+
37
+ if (method == 'post' || method == 'put')
38
+ needle[method](url, process.argv[4], options, callback);
39
+ else
40
+ needle[method](url, options, callback);
@@ -0,0 +1,22 @@
1
+ var fs = require('fs'),
2
+ stream = require('stream'),
3
+ needle = require('./../');
4
+
5
+ var url = 'http://ibl.gamechaser.net/f/tagqfxtteucbuldhezkz/bt_level1.gz';
6
+
7
+ var resp = needle.get(url, { compressed: true, follow_max: 10 });
8
+ console.log('Downloading...');
9
+
10
+ resp.on('readable', function() {
11
+
12
+ while (data = this.read()) {
13
+ var lines = data.toString().split('\n');
14
+ console.log('Got ' + lines.length + ' items.');
15
+ // console.log(lines);
16
+ }
17
+
18
+ })
19
+
20
+ resp.on('done', function(data) {
21
+ console.log('Done');
22
+ })
@@ -0,0 +1,16 @@
1
+ var needle = require('./..');
2
+
3
+ var opts = {
4
+ username: 'user3',
5
+ password: 'user3',
6
+ auth: 'digest'
7
+ }
8
+
9
+ needle.get('http://test.webdav.org/auth-digest/', opts, function(err, resp, body) {
10
+ console.log(resp.headers);
11
+
12
+ if (resp.statusCode == 401)
13
+ console.log('\nIt failed.')
14
+ else
15
+ console.log('\nIt worked!')
16
+ });
@@ -0,0 +1,18 @@
1
+ var fs = require('fs'),
2
+ needle = require('./..'),
3
+ path = require('path');
4
+
5
+ var url = process.argv[2] || 'https://upload.wikimedia.org/wikipedia/commons/a/af/Tux.png';
6
+ var file = path.basename(url);
7
+
8
+ console.log('Downloading ' + file);
9
+
10
+ needle.get(url, { output: file, follow: 3 }, function(err, resp, data){
11
+ console.log('File saved: ' + process.cwd() + '/' + file);
12
+
13
+ var size = fs.statSync(file).size;
14
+ if (size == resp.bytes)
15
+ console.log(resp.bytes + ' bytes written to file.');
16
+ else
17
+ throw new Error('File size mismatch: ' + size + ' != ' + resp.bytes);
18
+ });