fsevents 1.2.6 → 1.2.7

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.

Files changed (526) hide show
  1. package/node_modules/abbrev/LICENSE +46 -0
  2. package/node_modules/abbrev/README.md +23 -0
  3. package/node_modules/abbrev/abbrev.js +61 -0
  4. package/node_modules/abbrev/package.json +57 -0
  5. package/node_modules/ansi-regex/index.js +4 -0
  6. package/node_modules/ansi-regex/license +21 -0
  7. package/node_modules/ansi-regex/package.json +108 -0
  8. package/node_modules/ansi-regex/readme.md +39 -0
  9. package/node_modules/aproba/LICENSE +14 -0
  10. package/node_modules/aproba/README.md +94 -0
  11. package/node_modules/aproba/index.js +105 -0
  12. package/node_modules/aproba/package.json +62 -0
  13. package/node_modules/are-we-there-yet/CHANGES.md +37 -0
  14. package/node_modules/are-we-there-yet/LICENSE +5 -0
  15. package/node_modules/are-we-there-yet/README.md +195 -0
  16. package/node_modules/are-we-there-yet/index.js +4 -0
  17. package/node_modules/are-we-there-yet/package.json +63 -0
  18. package/node_modules/are-we-there-yet/tracker-base.js +11 -0
  19. package/node_modules/are-we-there-yet/tracker-group.js +107 -0
  20. package/node_modules/are-we-there-yet/tracker-stream.js +36 -0
  21. package/node_modules/are-we-there-yet/tracker.js +30 -0
  22. package/node_modules/balanced-match/.npmignore +5 -0
  23. package/node_modules/balanced-match/LICENSE.md +21 -0
  24. package/node_modules/balanced-match/README.md +91 -0
  25. package/node_modules/balanced-match/index.js +59 -0
  26. package/node_modules/balanced-match/package.json +77 -0
  27. package/node_modules/brace-expansion/LICENSE +21 -0
  28. package/node_modules/brace-expansion/README.md +129 -0
  29. package/node_modules/brace-expansion/index.js +201 -0
  30. package/node_modules/brace-expansion/package.json +75 -0
  31. package/node_modules/chownr/LICENSE +15 -0
  32. package/node_modules/chownr/README.md +3 -0
  33. package/node_modules/chownr/chownr.js +88 -0
  34. package/node_modules/chownr/package.json +59 -0
  35. package/node_modules/code-point-at/index.js +32 -0
  36. package/node_modules/code-point-at/license +21 -0
  37. package/node_modules/code-point-at/package.json +70 -0
  38. package/node_modules/code-point-at/readme.md +32 -0
  39. package/node_modules/concat-map/.travis.yml +4 -0
  40. package/node_modules/concat-map/LICENSE +18 -0
  41. package/node_modules/concat-map/README.markdown +62 -0
  42. package/node_modules/concat-map/example/map.js +6 -0
  43. package/node_modules/concat-map/index.js +13 -0
  44. package/node_modules/concat-map/package.json +88 -0
  45. package/node_modules/concat-map/test/map.js +39 -0
  46. package/node_modules/console-control-strings/LICENSE +13 -0
  47. package/node_modules/console-control-strings/README.md +145 -0
  48. package/node_modules/console-control-strings/README.md~ +140 -0
  49. package/node_modules/console-control-strings/index.js +125 -0
  50. package/node_modules/console-control-strings/package.json +61 -0
  51. package/node_modules/core-util-is/LICENSE +19 -0
  52. package/node_modules/core-util-is/README.md +3 -0
  53. package/node_modules/core-util-is/float.patch +604 -0
  54. package/node_modules/core-util-is/lib/util.js +107 -0
  55. package/node_modules/core-util-is/package.json +62 -0
  56. package/node_modules/core-util-is/test.js +68 -0
  57. package/node_modules/debug/.coveralls.yml +1 -0
  58. package/node_modules/debug/.eslintrc +11 -0
  59. package/node_modules/debug/.npmignore +9 -0
  60. package/node_modules/debug/.travis.yml +14 -0
  61. package/node_modules/debug/CHANGELOG.md +362 -0
  62. package/node_modules/debug/LICENSE +19 -0
  63. package/node_modules/debug/Makefile +50 -0
  64. package/node_modules/debug/README.md +312 -0
  65. package/node_modules/debug/component.json +19 -0
  66. package/node_modules/debug/karma.conf.js +70 -0
  67. package/node_modules/debug/node.js +1 -0
  68. package/node_modules/debug/package.json +88 -0
  69. package/node_modules/debug/src/browser.js +185 -0
  70. package/node_modules/debug/src/debug.js +202 -0
  71. package/node_modules/debug/src/index.js +10 -0
  72. package/node_modules/debug/src/inspector-log.js +15 -0
  73. package/node_modules/debug/src/node.js +248 -0
  74. package/node_modules/deep-extend/CHANGELOG.md +46 -0
  75. package/node_modules/deep-extend/LICENSE +20 -0
  76. package/node_modules/deep-extend/README.md +91 -0
  77. package/node_modules/deep-extend/index.js +1 -0
  78. package/node_modules/deep-extend/lib/deep-extend.js +150 -0
  79. package/node_modules/deep-extend/package.json +92 -0
  80. package/node_modules/delegates/.npmignore +1 -0
  81. package/node_modules/delegates/History.md +22 -0
  82. package/node_modules/delegates/License +20 -0
  83. package/node_modules/delegates/Makefile +8 -0
  84. package/node_modules/delegates/Readme.md +94 -0
  85. package/node_modules/delegates/index.js +121 -0
  86. package/node_modules/delegates/package.json +48 -0
  87. package/node_modules/delegates/test/index.js +94 -0
  88. package/node_modules/detect-libc/.npmignore +7 -0
  89. package/node_modules/detect-libc/LICENSE +201 -0
  90. package/node_modules/detect-libc/README.md +78 -0
  91. package/node_modules/detect-libc/bin/detect-libc.js +18 -0
  92. package/node_modules/detect-libc/lib/detect-libc.js +92 -0
  93. package/node_modules/detect-libc/package.json +70 -0
  94. package/node_modules/fs-minipass/LICENSE +15 -0
  95. package/node_modules/fs-minipass/README.md +70 -0
  96. package/node_modules/fs-minipass/index.js +386 -0
  97. package/node_modules/fs-minipass/package.json +62 -0
  98. package/node_modules/fs.realpath/LICENSE +43 -0
  99. package/node_modules/fs.realpath/README.md +33 -0
  100. package/node_modules/fs.realpath/index.js +66 -0
  101. package/node_modules/fs.realpath/old.js +303 -0
  102. package/node_modules/fs.realpath/package.json +59 -0
  103. package/node_modules/gauge/CHANGELOG.md +160 -0
  104. package/node_modules/gauge/LICENSE +13 -0
  105. package/node_modules/gauge/README.md +399 -0
  106. package/node_modules/gauge/base-theme.js +14 -0
  107. package/node_modules/gauge/error.js +24 -0
  108. package/node_modules/gauge/has-color.js +12 -0
  109. package/node_modules/gauge/index.js +233 -0
  110. package/node_modules/gauge/package.json +91 -0
  111. package/node_modules/gauge/plumbing.js +48 -0
  112. package/node_modules/gauge/process.js +3 -0
  113. package/node_modules/gauge/progress-bar.js +35 -0
  114. package/node_modules/gauge/render-template.js +181 -0
  115. package/node_modules/gauge/set-immediate.js +7 -0
  116. package/node_modules/gauge/set-interval.js +3 -0
  117. package/node_modules/gauge/spin.js +5 -0
  118. package/node_modules/gauge/template-item.js +73 -0
  119. package/node_modules/gauge/theme-set.js +115 -0
  120. package/node_modules/gauge/themes.js +54 -0
  121. package/node_modules/gauge/wide-truncate.js +25 -0
  122. package/node_modules/glob/LICENSE +15 -0
  123. package/node_modules/glob/README.md +368 -0
  124. package/node_modules/glob/changelog.md +67 -0
  125. package/node_modules/glob/common.js +240 -0
  126. package/node_modules/glob/glob.js +790 -0
  127. package/node_modules/glob/package.json +76 -0
  128. package/node_modules/glob/sync.js +486 -0
  129. package/node_modules/has-unicode/LICENSE +14 -0
  130. package/node_modules/has-unicode/README.md +43 -0
  131. package/node_modules/has-unicode/index.js +16 -0
  132. package/node_modules/has-unicode/package.json +58 -0
  133. package/node_modules/iconv-lite/Changelog.md +162 -0
  134. package/node_modules/iconv-lite/LICENSE +21 -0
  135. package/node_modules/iconv-lite/README.md +156 -0
  136. package/node_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
  137. package/node_modules/iconv-lite/encodings/dbcs-data.js +176 -0
  138. package/node_modules/iconv-lite/encodings/index.js +22 -0
  139. package/node_modules/iconv-lite/encodings/internal.js +188 -0
  140. package/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  141. package/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  142. package/node_modules/iconv-lite/encodings/sbcs-data.js +174 -0
  143. package/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  144. package/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  145. package/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  146. package/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  147. package/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  148. package/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  149. package/node_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
  150. package/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  151. package/node_modules/iconv-lite/encodings/utf16.js +177 -0
  152. package/node_modules/iconv-lite/encodings/utf7.js +290 -0
  153. package/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  154. package/node_modules/iconv-lite/lib/extend-node.js +217 -0
  155. package/node_modules/iconv-lite/lib/index.d.ts +24 -0
  156. package/node_modules/iconv-lite/lib/index.js +153 -0
  157. package/node_modules/iconv-lite/lib/streams.js +121 -0
  158. package/node_modules/iconv-lite/package.json +76 -0
  159. package/node_modules/ignore-walk/LICENSE +15 -0
  160. package/node_modules/ignore-walk/README.md +60 -0
  161. package/node_modules/ignore-walk/index.js +265 -0
  162. package/node_modules/ignore-walk/package.json +71 -0
  163. package/node_modules/inflight/LICENSE +15 -0
  164. package/node_modules/inflight/README.md +37 -0
  165. package/node_modules/inflight/inflight.js +54 -0
  166. package/node_modules/inflight/package.json +58 -0
  167. package/node_modules/inherits/LICENSE +16 -0
  168. package/node_modules/inherits/README.md +42 -0
  169. package/node_modules/inherits/inherits.js +7 -0
  170. package/node_modules/inherits/inherits_browser.js +23 -0
  171. package/node_modules/inherits/package.json +64 -0
  172. package/node_modules/ini/LICENSE +15 -0
  173. package/node_modules/ini/README.md +102 -0
  174. package/node_modules/ini/ini.js +194 -0
  175. package/node_modules/ini/package.json +63 -0
  176. package/node_modules/is-fullwidth-code-point/index.js +46 -0
  177. package/node_modules/is-fullwidth-code-point/license +21 -0
  178. package/node_modules/is-fullwidth-code-point/package.json +77 -0
  179. package/node_modules/is-fullwidth-code-point/readme.md +39 -0
  180. package/node_modules/isarray/.npmignore +1 -0
  181. package/node_modules/isarray/.travis.yml +4 -0
  182. package/node_modules/isarray/Makefile +6 -0
  183. package/node_modules/isarray/README.md +60 -0
  184. package/node_modules/isarray/component.json +19 -0
  185. package/node_modules/isarray/index.js +5 -0
  186. package/node_modules/isarray/package.json +73 -0
  187. package/node_modules/isarray/test.js +20 -0
  188. package/node_modules/minimatch/LICENSE +15 -0
  189. package/node_modules/minimatch/README.md +209 -0
  190. package/node_modules/minimatch/minimatch.js +923 -0
  191. package/node_modules/minimatch/package.json +64 -0
  192. package/node_modules/minimist/.travis.yml +4 -0
  193. package/node_modules/minimist/LICENSE +18 -0
  194. package/node_modules/minimist/example/parse.js +2 -0
  195. package/node_modules/minimist/index.js +187 -0
  196. package/node_modules/minimist/package.json +71 -0
  197. package/node_modules/minimist/readme.markdown +73 -0
  198. package/node_modules/minimist/test/dash.js +24 -0
  199. package/node_modules/minimist/test/default_bool.js +20 -0
  200. package/node_modules/minimist/test/dotted.js +16 -0
  201. package/node_modules/minimist/test/long.js +31 -0
  202. package/node_modules/minimist/test/parse.js +318 -0
  203. package/node_modules/minimist/test/parse_modified.js +9 -0
  204. package/node_modules/minimist/test/short.js +67 -0
  205. package/node_modules/minimist/test/whitespace.js +8 -0
  206. package/node_modules/minipass/LICENSE +15 -0
  207. package/node_modules/minipass/README.md +124 -0
  208. package/node_modules/minipass/index.js +375 -0
  209. package/node_modules/minipass/package.json +69 -0
  210. package/node_modules/minizlib/LICENSE +26 -0
  211. package/node_modules/minizlib/README.md +44 -0
  212. package/node_modules/minizlib/constants.js +46 -0
  213. package/node_modules/minizlib/index.js +335 -0
  214. package/node_modules/minizlib/package.json +71 -0
  215. package/node_modules/mkdirp/.travis.yml +8 -0
  216. package/node_modules/mkdirp/LICENSE +21 -0
  217. package/node_modules/mkdirp/bin/cmd.js +33 -0
  218. package/node_modules/mkdirp/bin/usage.txt +12 -0
  219. package/node_modules/mkdirp/examples/pow.js +6 -0
  220. package/node_modules/mkdirp/index.js +98 -0
  221. package/node_modules/mkdirp/package.json +64 -0
  222. package/node_modules/mkdirp/readme.markdown +100 -0
  223. package/node_modules/mkdirp/test/chmod.js +41 -0
  224. package/node_modules/mkdirp/test/clobber.js +38 -0
  225. package/node_modules/mkdirp/test/mkdirp.js +28 -0
  226. package/node_modules/mkdirp/test/opts_fs.js +29 -0
  227. package/node_modules/mkdirp/test/opts_fs_sync.js +27 -0
  228. package/node_modules/mkdirp/test/perm.js +32 -0
  229. package/node_modules/mkdirp/test/perm_sync.js +36 -0
  230. package/node_modules/mkdirp/test/race.js +37 -0
  231. package/node_modules/mkdirp/test/rel.js +32 -0
  232. package/node_modules/mkdirp/test/return.js +25 -0
  233. package/node_modules/mkdirp/test/return_sync.js +24 -0
  234. package/node_modules/mkdirp/test/root.js +19 -0
  235. package/node_modules/mkdirp/test/sync.js +32 -0
  236. package/node_modules/mkdirp/test/umask.js +28 -0
  237. package/node_modules/mkdirp/test/umask_sync.js +32 -0
  238. package/node_modules/ms/index.js +152 -0
  239. package/node_modules/ms/license.md +21 -0
  240. package/node_modules/ms/package.json +69 -0
  241. package/node_modules/ms/readme.md +51 -0
  242. package/node_modules/needle/README.md +594 -0
  243. package/node_modules/needle/bin/needle +40 -0
  244. package/node_modules/needle/examples/deflated-stream.js +22 -0
  245. package/node_modules/needle/examples/digest-auth.js +16 -0
  246. package/node_modules/needle/examples/download-to-file.js +18 -0
  247. package/node_modules/needle/examples/multipart-stream.js +25 -0
  248. package/node_modules/needle/examples/parsed-stream.js +23 -0
  249. package/node_modules/needle/examples/parsed-stream2.js +21 -0
  250. package/node_modules/needle/examples/stream-events.js +23 -0
  251. package/node_modules/needle/examples/stream-to-file.js +14 -0
  252. package/node_modules/needle/examples/upload-image.js +51 -0
  253. package/node_modules/needle/lib/auth.js +110 -0
  254. package/node_modules/needle/lib/cookies.js +79 -0
  255. package/node_modules/needle/lib/decoder.js +53 -0
  256. package/node_modules/needle/lib/multipart.js +98 -0
  257. package/node_modules/needle/lib/needle.js +795 -0
  258. package/node_modules/needle/lib/parsers.js +120 -0
  259. package/node_modules/needle/lib/querystring.js +49 -0
  260. package/node_modules/needle/license.txt +19 -0
  261. package/node_modules/needle/note.xml +7 -0
  262. package/node_modules/needle/note.xml.1 +7 -0
  263. package/node_modules/needle/package.json +102 -0
  264. package/node_modules/needle/test/basic_auth_spec.js +196 -0
  265. package/node_modules/needle/test/compression_spec.js +94 -0
  266. package/node_modules/needle/test/cookies_spec.js +305 -0
  267. package/node_modules/needle/test/decoder_spec.js +86 -0
  268. package/node_modules/needle/test/errors_spec.js +286 -0
  269. package/node_modules/needle/test/headers_spec.js +198 -0
  270. package/node_modules/needle/test/helpers.js +72 -0
  271. package/node_modules/needle/test/long_string_spec.js +34 -0
  272. package/node_modules/needle/test/output_spec.js +254 -0
  273. package/node_modules/needle/test/parsing_spec.js +494 -0
  274. package/node_modules/needle/test/post_data_spec.js +1021 -0
  275. package/node_modules/needle/test/proxy_spec.js +202 -0
  276. package/node_modules/needle/test/querystring_spec.js +128 -0
  277. package/node_modules/needle/test/redirect_spec.js +392 -0
  278. package/node_modules/needle/test/redirect_with_timeout.js +45 -0
  279. package/node_modules/needle/test/request_stream_spec.js +202 -0
  280. package/node_modules/needle/test/response_stream_spec.js +139 -0
  281. package/node_modules/needle/test/socket_pool_spec.js +66 -0
  282. package/node_modules/needle/test/url_spec.js +155 -0
  283. package/node_modules/needle/test/utils/formidable.js +17 -0
  284. package/node_modules/needle/test/utils/proxy.js +62 -0
  285. package/node_modules/needle/test/utils/test.js +104 -0
  286. package/node_modules/node-pre-gyp/CHANGELOG.md +422 -0
  287. package/node_modules/node-pre-gyp/LICENSE +27 -0
  288. package/node_modules/node-pre-gyp/README.md +658 -0
  289. package/node_modules/node-pre-gyp/appveyor.yml +30 -0
  290. package/node_modules/node-pre-gyp/bin/node-pre-gyp +134 -0
  291. package/node_modules/node-pre-gyp/bin/node-pre-gyp.cmd +2 -0
  292. package/node_modules/node-pre-gyp/contributing.md +10 -0
  293. package/node_modules/node-pre-gyp/lib/build.js +51 -0
  294. package/node_modules/node-pre-gyp/lib/clean.js +32 -0
  295. package/node_modules/node-pre-gyp/lib/configure.js +52 -0
  296. package/node_modules/node-pre-gyp/lib/info.js +40 -0
  297. package/node_modules/node-pre-gyp/lib/install.js +243 -0
  298. package/node_modules/node-pre-gyp/lib/node-pre-gyp.js +203 -0
  299. package/node_modules/node-pre-gyp/lib/package.js +56 -0
  300. package/node_modules/node-pre-gyp/lib/pre-binding.js +30 -0
  301. package/node_modules/node-pre-gyp/lib/publish.js +79 -0
  302. package/node_modules/node-pre-gyp/lib/rebuild.js +21 -0
  303. package/node_modules/node-pre-gyp/lib/reinstall.js +20 -0
  304. package/node_modules/node-pre-gyp/lib/reveal.js +33 -0
  305. package/node_modules/node-pre-gyp/lib/testbinary.js +81 -0
  306. package/node_modules/node-pre-gyp/lib/testpackage.js +55 -0
  307. package/node_modules/node-pre-gyp/lib/unpublish.js +43 -0
  308. package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +1782 -0
  309. package/node_modules/node-pre-gyp/lib/util/compile.js +87 -0
  310. package/node_modules/node-pre-gyp/lib/util/handle_gyp_opts.js +100 -0
  311. package/node_modules/node-pre-gyp/lib/util/napi.js +156 -0
  312. package/node_modules/node-pre-gyp/lib/util/nw-pre-gyp/index.html +26 -0
  313. package/node_modules/node-pre-gyp/lib/util/nw-pre-gyp/package.json +9 -0
  314. package/node_modules/node-pre-gyp/lib/util/s3_setup.js +27 -0
  315. package/node_modules/node-pre-gyp/lib/util/versioning.js +330 -0
  316. package/node_modules/node-pre-gyp/package.json +86 -0
  317. package/node_modules/nopt/.npmignore +1 -0
  318. package/node_modules/nopt/.travis.yml +8 -0
  319. package/node_modules/nopt/CHANGELOG.md +58 -0
  320. package/node_modules/nopt/LICENSE +15 -0
  321. package/node_modules/nopt/README.md +213 -0
  322. package/node_modules/nopt/bin/nopt.js +54 -0
  323. package/node_modules/nopt/examples/my-program.js +30 -0
  324. package/node_modules/nopt/lib/nopt.js +436 -0
  325. package/node_modules/nopt/package.json +58 -0
  326. package/node_modules/nopt/test/basic.js +303 -0
  327. package/node_modules/npm-bundled/LICENSE +15 -0
  328. package/node_modules/npm-bundled/README.md +48 -0
  329. package/node_modules/npm-bundled/index.js +229 -0
  330. package/node_modules/npm-bundled/package.json +60 -0
  331. package/node_modules/npm-packlist/LICENSE +15 -0
  332. package/node_modules/npm-packlist/README.md +68 -0
  333. package/node_modules/npm-packlist/index.js +229 -0
  334. package/node_modules/npm-packlist/package.json +66 -0
  335. package/node_modules/npmlog/CHANGELOG.md +49 -0
  336. package/node_modules/npmlog/LICENSE +15 -0
  337. package/node_modules/npmlog/README.md +216 -0
  338. package/node_modules/npmlog/log.js +309 -0
  339. package/node_modules/npmlog/package.json +61 -0
  340. package/node_modules/number-is-nan/index.js +4 -0
  341. package/node_modules/number-is-nan/license +21 -0
  342. package/node_modules/number-is-nan/package.json +67 -0
  343. package/node_modules/number-is-nan/readme.md +28 -0
  344. package/node_modules/object-assign/index.js +90 -0
  345. package/node_modules/object-assign/license +21 -0
  346. package/node_modules/object-assign/package.json +74 -0
  347. package/node_modules/object-assign/readme.md +61 -0
  348. package/node_modules/once/LICENSE +15 -0
  349. package/node_modules/once/README.md +79 -0
  350. package/node_modules/once/once.js +42 -0
  351. package/node_modules/once/package.json +67 -0
  352. package/node_modules/os-homedir/index.js +24 -0
  353. package/node_modules/os-homedir/license +21 -0
  354. package/node_modules/os-homedir/package.json +73 -0
  355. package/node_modules/os-homedir/readme.md +31 -0
  356. package/node_modules/os-tmpdir/index.js +25 -0
  357. package/node_modules/os-tmpdir/license +21 -0
  358. package/node_modules/os-tmpdir/package.json +73 -0
  359. package/node_modules/os-tmpdir/readme.md +32 -0
  360. package/node_modules/osenv/LICENSE +15 -0
  361. package/node_modules/osenv/README.md +63 -0
  362. package/node_modules/osenv/osenv.js +72 -0
  363. package/node_modules/osenv/package.json +73 -0
  364. package/node_modules/path-is-absolute/index.js +20 -0
  365. package/node_modules/path-is-absolute/license +21 -0
  366. package/node_modules/path-is-absolute/package.json +75 -0
  367. package/node_modules/path-is-absolute/readme.md +59 -0
  368. package/node_modules/process-nextick-args/index.js +44 -0
  369. package/node_modules/process-nextick-args/license.md +19 -0
  370. package/node_modules/process-nextick-args/package.json +50 -0
  371. package/node_modules/process-nextick-args/readme.md +18 -0
  372. package/node_modules/rc/LICENSE.APACHE2 +15 -0
  373. package/node_modules/rc/LICENSE.BSD +26 -0
  374. package/node_modules/rc/LICENSE.MIT +24 -0
  375. package/node_modules/rc/README.md +227 -0
  376. package/node_modules/rc/browser.js +7 -0
  377. package/node_modules/rc/cli.js +4 -0
  378. package/node_modules/rc/index.js +53 -0
  379. package/node_modules/rc/lib/utils.js +104 -0
  380. package/node_modules/rc/node_modules/minimist/.travis.yml +8 -0
  381. package/node_modules/rc/node_modules/minimist/LICENSE +18 -0
  382. package/node_modules/rc/node_modules/minimist/example/parse.js +2 -0
  383. package/node_modules/rc/node_modules/minimist/index.js +236 -0
  384. package/node_modules/rc/node_modules/minimist/package.json +73 -0
  385. package/node_modules/rc/node_modules/minimist/readme.markdown +91 -0
  386. package/node_modules/rc/node_modules/minimist/test/all_bool.js +32 -0
  387. package/node_modules/rc/node_modules/minimist/test/bool.js +166 -0
  388. package/node_modules/rc/node_modules/minimist/test/dash.js +31 -0
  389. package/node_modules/rc/node_modules/minimist/test/default_bool.js +35 -0
  390. package/node_modules/rc/node_modules/minimist/test/dotted.js +22 -0
  391. package/node_modules/rc/node_modules/minimist/test/kv_short.js +16 -0
  392. package/node_modules/rc/node_modules/minimist/test/long.js +31 -0
  393. package/node_modules/rc/node_modules/minimist/test/num.js +36 -0
  394. package/node_modules/rc/node_modules/minimist/test/parse.js +197 -0
  395. package/node_modules/rc/node_modules/minimist/test/parse_modified.js +9 -0
  396. package/node_modules/rc/node_modules/minimist/test/short.js +67 -0
  397. package/node_modules/rc/node_modules/minimist/test/stop_early.js +15 -0
  398. package/node_modules/rc/node_modules/minimist/test/unknown.js +102 -0
  399. package/node_modules/rc/node_modules/minimist/test/whitespace.js +8 -0
  400. package/node_modules/rc/package.json +64 -0
  401. package/node_modules/rc/test/ini.js +16 -0
  402. package/node_modules/rc/test/nested-env-vars.js +50 -0
  403. package/node_modules/rc/test/test.js +59 -0
  404. package/node_modules/readable-stream/.travis.yml +55 -0
  405. package/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  406. package/node_modules/readable-stream/GOVERNANCE.md +136 -0
  407. package/node_modules/readable-stream/LICENSE +47 -0
  408. package/node_modules/readable-stream/README.md +58 -0
  409. package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
  410. package/node_modules/readable-stream/duplex-browser.js +1 -0
  411. package/node_modules/readable-stream/duplex.js +1 -0
  412. package/node_modules/readable-stream/lib/_stream_duplex.js +131 -0
  413. package/node_modules/readable-stream/lib/_stream_passthrough.js +47 -0
  414. package/node_modules/readable-stream/lib/_stream_readable.js +1019 -0
  415. package/node_modules/readable-stream/lib/_stream_transform.js +214 -0
  416. package/node_modules/readable-stream/lib/_stream_writable.js +687 -0
  417. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +79 -0
  418. package/node_modules/readable-stream/lib/internal/streams/destroy.js +74 -0
  419. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  420. package/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  421. package/node_modules/readable-stream/package.json +81 -0
  422. package/node_modules/readable-stream/passthrough.js +1 -0
  423. package/node_modules/readable-stream/readable-browser.js +7 -0
  424. package/node_modules/readable-stream/readable.js +19 -0
  425. package/node_modules/readable-stream/transform.js +1 -0
  426. package/node_modules/readable-stream/writable-browser.js +1 -0
  427. package/node_modules/readable-stream/writable.js +8 -0
  428. package/node_modules/rimraf/LICENSE +15 -0
  429. package/node_modules/rimraf/README.md +101 -0
  430. package/node_modules/rimraf/bin.js +50 -0
  431. package/node_modules/rimraf/package.json +67 -0
  432. package/node_modules/rimraf/rimraf.js +364 -0
  433. package/node_modules/safe-buffer/LICENSE +21 -0
  434. package/node_modules/safe-buffer/README.md +584 -0
  435. package/node_modules/safe-buffer/index.d.ts +187 -0
  436. package/node_modules/safe-buffer/index.js +62 -0
  437. package/node_modules/safe-buffer/package.json +65 -0
  438. package/node_modules/safer-buffer/LICENSE +21 -0
  439. package/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  440. package/node_modules/safer-buffer/Readme.md +156 -0
  441. package/node_modules/safer-buffer/dangerous.js +58 -0
  442. package/node_modules/safer-buffer/package.json +60 -0
  443. package/node_modules/safer-buffer/safer.js +77 -0
  444. package/node_modules/safer-buffer/tests.js +406 -0
  445. package/node_modules/sax/LICENSE +41 -0
  446. package/node_modules/sax/README.md +225 -0
  447. package/node_modules/sax/lib/sax.js +1565 -0
  448. package/node_modules/sax/package.json +61 -0
  449. package/node_modules/semver/LICENSE +15 -0
  450. package/node_modules/semver/README.md +399 -0
  451. package/node_modules/semver/bin/semver +153 -0
  452. package/node_modules/semver/package.json +54 -0
  453. package/node_modules/semver/range.bnf +16 -0
  454. package/node_modules/semver/semver.js +1352 -0
  455. package/node_modules/set-blocking/CHANGELOG.md +26 -0
  456. package/node_modules/set-blocking/LICENSE.txt +14 -0
  457. package/node_modules/set-blocking/README.md +31 -0
  458. package/node_modules/set-blocking/index.js +7 -0
  459. package/node_modules/set-blocking/package.json +70 -0
  460. package/node_modules/signal-exit/CHANGELOG.md +27 -0
  461. package/node_modules/signal-exit/LICENSE.txt +16 -0
  462. package/node_modules/signal-exit/README.md +40 -0
  463. package/node_modules/signal-exit/index.js +157 -0
  464. package/node_modules/signal-exit/package.json +66 -0
  465. package/node_modules/signal-exit/signals.js +53 -0
  466. package/node_modules/string-width/index.js +37 -0
  467. package/node_modules/string-width/license +21 -0
  468. package/node_modules/string-width/package.json +89 -0
  469. package/node_modules/string-width/readme.md +42 -0
  470. package/node_modules/string_decoder/.travis.yml +50 -0
  471. package/node_modules/string_decoder/LICENSE +48 -0
  472. package/node_modules/string_decoder/README.md +47 -0
  473. package/node_modules/string_decoder/lib/string_decoder.js +296 -0
  474. package/node_modules/string_decoder/package.json +59 -0
  475. package/node_modules/strip-ansi/index.js +6 -0
  476. package/node_modules/strip-ansi/license +21 -0
  477. package/node_modules/strip-ansi/package.json +102 -0
  478. package/node_modules/strip-ansi/readme.md +33 -0
  479. package/node_modules/strip-json-comments/index.js +70 -0
  480. package/node_modules/strip-json-comments/license +21 -0
  481. package/node_modules/strip-json-comments/package.json +74 -0
  482. package/node_modules/strip-json-comments/readme.md +64 -0
  483. package/node_modules/tar/LICENSE +15 -0
  484. package/node_modules/tar/README.md +954 -0
  485. package/node_modules/tar/index.js +18 -0
  486. package/node_modules/tar/lib/buffer.js +11 -0
  487. package/node_modules/tar/lib/create.js +105 -0
  488. package/node_modules/tar/lib/extract.js +112 -0
  489. package/node_modules/tar/lib/header.js +289 -0
  490. package/node_modules/tar/lib/high-level-opt.js +29 -0
  491. package/node_modules/tar/lib/large-numbers.js +92 -0
  492. package/node_modules/tar/lib/list.js +130 -0
  493. package/node_modules/tar/lib/mkdir.js +206 -0
  494. package/node_modules/tar/lib/mode-fix.js +14 -0
  495. package/node_modules/tar/lib/pack.js +404 -0
  496. package/node_modules/tar/lib/parse.js +423 -0
  497. package/node_modules/tar/lib/pax.js +146 -0
  498. package/node_modules/tar/lib/read-entry.js +94 -0
  499. package/node_modules/tar/lib/replace.js +220 -0
  500. package/node_modules/tar/lib/types.js +44 -0
  501. package/node_modules/tar/lib/unpack.js +621 -0
  502. package/node_modules/tar/lib/update.js +36 -0
  503. package/node_modules/tar/lib/warn-mixin.js +14 -0
  504. package/node_modules/tar/lib/winchars.js +23 -0
  505. package/node_modules/tar/lib/write-entry.js +422 -0
  506. package/node_modules/tar/package.json +78 -0
  507. package/node_modules/util-deprecate/History.md +16 -0
  508. package/node_modules/util-deprecate/LICENSE +24 -0
  509. package/node_modules/util-deprecate/README.md +53 -0
  510. package/node_modules/util-deprecate/browser.js +67 -0
  511. package/node_modules/util-deprecate/node.js +6 -0
  512. package/node_modules/util-deprecate/package.json +56 -0
  513. package/node_modules/wide-align/LICENSE +14 -0
  514. package/node_modules/wide-align/README.md +47 -0
  515. package/node_modules/wide-align/align.js +65 -0
  516. package/node_modules/wide-align/package.json +66 -0
  517. package/node_modules/wrappy/LICENSE +15 -0
  518. package/node_modules/wrappy/README.md +36 -0
  519. package/node_modules/wrappy/package.json +59 -0
  520. package/node_modules/wrappy/wrappy.js +33 -0
  521. package/node_modules/yallist/LICENSE +15 -0
  522. package/node_modules/yallist/README.md +204 -0
  523. package/node_modules/yallist/iterator.js +8 -0
  524. package/node_modules/yallist/package.json +63 -0
  525. package/node_modules/yallist/yallist.js +376 -0
  526. package/package.json +1 -1
@@ -0,0 +1,30 @@
1
+ os: Visual Studio 2015
2
+
3
+ environment:
4
+ matrix:
5
+ - nodejs_version: 6
6
+ - nodejs_version: 10
7
+
8
+ platform:
9
+ - x64
10
+ - x86
11
+
12
+ shallow_clone: true
13
+
14
+ install:
15
+ - ps: Install-Product node $env:nodejs_version $env:Platform
16
+ - ps: Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
17
+ - npm config get
18
+ - node --version
19
+ - npm --version
20
+ - node -e "console.log(process.arch);"
21
+ - IF /I "%PLATFORM%" == "x64" set PATH=C:\Python27-x64;%PATH%
22
+ - IF /I "%PLATFORM%" == "x86" SET PATH=C:\python27;%PATH%
23
+ - IF /I "%PLATFORM%" == "x64" CALL "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
24
+ - IF /I "%PLATFORM%" == "x86" CALL "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
25
+ - npm install
26
+ - npm test
27
+
28
+ build: off
29
+ test: off
30
+ deploy: off
@@ -0,0 +1,134 @@
1
+ #!/usr/bin/env node
2
+
3
+ "use strict";
4
+
5
+ /**
6
+ * Set the title.
7
+ */
8
+
9
+ process.title = 'node-pre-gyp';
10
+
11
+ /**
12
+ * Module dependencies.
13
+ */
14
+
15
+ var node_pre_gyp = require('../');
16
+ var log = require('npmlog');
17
+
18
+ /**
19
+ * Process and execute the selected commands.
20
+ */
21
+
22
+ var prog = new node_pre_gyp.Run();
23
+ var completed = false;
24
+ prog.parseArgv(process.argv);
25
+
26
+ if (prog.todo.length === 0) {
27
+ if (~process.argv.indexOf('-v') || ~process.argv.indexOf('--version')) {
28
+ console.log('v%s', prog.version);
29
+ return process.exit(0);
30
+ } else if (~process.argv.indexOf('-h') || ~process.argv.indexOf('--help')) {
31
+ console.log('%s', prog.usage());
32
+ return process.exit(0);
33
+ }
34
+ console.log('%s', prog.usage());
35
+ return process.exit(1);
36
+ }
37
+
38
+ // if --no-color is passed
39
+ if (prog.opts && prog.opts.hasOwnProperty('color') && !prog.opts.color) {
40
+ log.disableColor();
41
+ }
42
+
43
+ log.info('it worked if it ends with', 'ok');
44
+ log.verbose('cli', process.argv);
45
+ log.info('using', process.title + '@%s', prog.version);
46
+ log.info('using', 'node@%s | %s | %s', process.versions.node, process.platform, process.arch);
47
+
48
+
49
+ /**
50
+ * Change dir if -C/--directory was passed.
51
+ */
52
+
53
+ var dir = prog.opts.directory;
54
+ if (dir) {
55
+ var fs = require('fs');
56
+ try {
57
+ var stat = fs.statSync(dir);
58
+ if (stat.isDirectory()) {
59
+ log.info('chdir', dir);
60
+ process.chdir(dir);
61
+ } else {
62
+ log.warn('chdir', dir + ' is not a directory');
63
+ }
64
+ } catch (e) {
65
+ if (e.code === 'ENOENT') {
66
+ log.warn('chdir', dir + ' is not a directory');
67
+ } else {
68
+ log.warn('chdir', 'error during chdir() "%s"', e.message);
69
+ }
70
+ }
71
+ }
72
+
73
+ function run () {
74
+ var command = prog.todo.shift();
75
+ if (!command) {
76
+ // done!
77
+ completed = true;
78
+ log.info('ok');
79
+ return;
80
+ }
81
+
82
+ prog.commands[command.name](command.args, function (err) {
83
+ if (err) {
84
+ log.error(command.name + ' error');
85
+ log.error('stack', err.stack);
86
+ errorMessage();
87
+ log.error('not ok');
88
+ console.log(err.message);
89
+ return process.exit(1);
90
+ }
91
+ var args_array = [].slice.call(arguments, 1);
92
+ if (args_array.length) {
93
+ console.log.apply(console, args_array);
94
+ }
95
+ // now run the next command in the queue
96
+ process.nextTick(run);
97
+ });
98
+ }
99
+
100
+ process.on('exit', function (code) {
101
+ if (!completed && !code) {
102
+ log.error('Completion callback never invoked!');
103
+ issueMessage();
104
+ process.exit(6);
105
+ }
106
+ });
107
+
108
+ process.on('uncaughtException', function (err) {
109
+ log.error('UNCAUGHT EXCEPTION');
110
+ log.error('stack', err.stack);
111
+ issueMessage();
112
+ process.exit(7);
113
+ });
114
+
115
+ function errorMessage () {
116
+ // copied from npm's lib/util/error-handler.js
117
+ var os = require('os');
118
+ log.error('System', os.type() + ' ' + os.release());
119
+ log.error('command', process.argv.map(JSON.stringify).join(' '));
120
+ log.error('cwd', process.cwd());
121
+ log.error('node -v', process.version);
122
+ log.error(process.title+' -v', 'v' + prog.package.version);
123
+ }
124
+
125
+ function issueMessage () {
126
+ errorMessage();
127
+ log.error('', [ 'This is a bug in `'+process.title+'`.',
128
+ 'Try to update '+process.title+' and file an issue if it does not help:',
129
+ ' <https://github.com/mapbox/'+process.title+'/issues>',
130
+ ].join('\n'));
131
+ }
132
+
133
+ // start running the given commands!
134
+ run();
@@ -0,0 +1,2 @@
1
+ @echo off
2
+ node "%~dp0\node-pre-gyp" %*
@@ -0,0 +1,10 @@
1
+ # Contributing
2
+
3
+
4
+ ### Releasing a new version:
5
+
6
+ - Ensure tests are passing on travis and appveyor
7
+ - Run `node scripts/abi_crosswalk.js` and commit any changes
8
+ - Update the changelog
9
+ - Tag a new release like: `git tag -a v0.6.34 -m "tagging v0.6.34" && git push --tags`
10
+ - Run `npm publish`
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ module.exports = exports = build;
4
+
5
+ exports.usage = 'Attempts to compile the module by dispatching to node-gyp or nw-gyp';
6
+
7
+ var napi = require('./util/napi.js');
8
+ var compile = require('./util/compile.js');
9
+ var handle_gyp_opts = require('./util/handle_gyp_opts.js');
10
+ var configure = require('./configure.js');
11
+
12
+ function do_build(gyp,argv,callback) {
13
+ handle_gyp_opts(gyp,argv,function(err,result) {
14
+ var final_args = ['build'].concat(result.gyp).concat(result.pre);
15
+ if (result.unparsed.length > 0) {
16
+ final_args = final_args.
17
+ concat(['--']).
18
+ concat(result.unparsed);
19
+ }
20
+ if (!err && result.opts.napi_build_version) {
21
+ napi.swap_build_dir_in(result.opts.napi_build_version);
22
+ }
23
+ compile.run_gyp(final_args,result.opts,function(err) {
24
+ if (!err && result.opts.napi_build_version) {
25
+ napi.swap_build_dir_out(result.opts.napi_build_version);
26
+ }
27
+ return callback(err);
28
+ });
29
+ });
30
+ }
31
+
32
+ function build(gyp, argv, callback) {
33
+
34
+ // Form up commands to pass to node-gyp:
35
+ // We map `node-pre-gyp build` to `node-gyp configure build` so that we do not
36
+ // trigger a clean and therefore do not pay the penalty of a full recompile
37
+ if (argv.length && (argv.indexOf('rebuild') > -1)) {
38
+ argv.shift(); // remove `rebuild`
39
+ // here we map `node-pre-gyp rebuild` to `node-gyp rebuild` which internally means
40
+ // "clean + configure + build" and triggers a full recompile
41
+ compile.run_gyp(['clean'],{},function(err) {
42
+ if (err) return callback(err);
43
+ configure(gyp,argv,function(err) {
44
+ if (err) return callback(err);
45
+ return do_build(gyp,argv,callback);
46
+ });
47
+ });
48
+ } else {
49
+ return do_build(gyp,argv,callback);
50
+ }
51
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ module.exports = exports = clean;
4
+
5
+ exports.usage = 'Removes the entire folder containing the compiled .node module';
6
+
7
+ var fs = require('fs');
8
+ var rm = require('rimraf');
9
+ var exists = require('fs').exists || require('path').exists;
10
+ var versioning = require('./util/versioning.js');
11
+ var napi = require('./util/napi.js');
12
+ var path = require('path');
13
+
14
+ function clean (gyp, argv, callback) {
15
+ var package_json = JSON.parse(fs.readFileSync('./package.json'));
16
+ var napi_build_version = napi.get_napi_build_version_from_command_args(argv);
17
+ var opts = versioning.evaluate(package_json, gyp.opts, napi_build_version);
18
+ var to_delete = opts.module_path;
19
+ if (!to_delete) {
20
+ return callback(new Error("module_path is empty, refusing to delete"));
21
+ } else if (path.normalize(to_delete) == path.normalize(process.cwd())) {
22
+ return callback(new Error("module_path is not set, refusing to delete"));
23
+ } else {
24
+ exists(to_delete, function(found) {
25
+ if (found) {
26
+ if (!gyp.opts.silent_clean) console.log('['+package_json.name+'] Removing "%s"', to_delete);
27
+ return rm(to_delete, callback);
28
+ }
29
+ return callback();
30
+ });
31
+ }
32
+ }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ module.exports = exports = configure;
4
+
5
+ exports.usage = 'Attempts to configure node-gyp or nw-gyp build';
6
+
7
+ var napi = require('./util/napi.js');
8
+ var compile = require('./util/compile.js');
9
+ var handle_gyp_opts = require('./util/handle_gyp_opts.js');
10
+
11
+ function configure(gyp, argv, callback) {
12
+ handle_gyp_opts(gyp,argv,function(err,result) {
13
+ var final_args = result.gyp.concat(result.pre);
14
+ // pull select node-gyp configure options out of the npm environ
15
+ var known_gyp_args = ['dist-url','python','nodedir','msvs_version'];
16
+ known_gyp_args.forEach(function(key) {
17
+ var val = gyp.opts[key] || gyp.opts[key.replace('-','_')];
18
+ if (val) {
19
+ final_args.push('--'+key+'='+val);
20
+ }
21
+ });
22
+ // --ensure=false tell node-gyp to re-install node development headers
23
+ // but it is only respected by node-gyp install, so we have to call install
24
+ // as a separate step if the user passes it
25
+ if (gyp.opts.ensure === false) {
26
+ var install_args = final_args.concat(['install','--ensure=false']);
27
+ compile.run_gyp(install_args,result.opts,function(err) {
28
+ if (err) return callback(err);
29
+ if (result.unparsed.length > 0) {
30
+ final_args = final_args.
31
+ concat(['--']).
32
+ concat(result.unparsed);
33
+ }
34
+ compile.run_gyp(['configure'].concat(final_args),result.opts,function(err) {
35
+ return callback(err);
36
+ });
37
+ });
38
+ } else {
39
+ if (result.unparsed.length > 0) {
40
+ final_args = final_args.
41
+ concat(['--']).
42
+ concat(result.unparsed);
43
+ }
44
+ compile.run_gyp(['configure'].concat(final_args),result.opts,function(err) {
45
+ if (!err && result.opts.napi_build_version) {
46
+ napi.swap_build_dir_out(result.opts.napi_build_version);
47
+ }
48
+ return callback(err);
49
+ });
50
+ }
51
+ });
52
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ module.exports = exports = unpublish;
4
+
5
+ exports.usage = 'Lists all published binaries (requires aws-sdk)';
6
+
7
+ var fs = require('fs');
8
+ var log = require('npmlog');
9
+ var versioning = require('./util/versioning.js');
10
+ var s3_setup = require('./util/s3_setup.js');
11
+ var config = require('rc')("node_pre_gyp",{acl:"public-read"});
12
+
13
+ function unpublish(gyp, argv, callback) {
14
+ var AWS = require("aws-sdk");
15
+ var package_json = JSON.parse(fs.readFileSync('./package.json'));
16
+ var opts = versioning.evaluate(package_json, gyp.opts);
17
+ s3_setup.detect(opts.hosted_path,config);
18
+ AWS.config.update(config);
19
+ var s3 = new AWS.S3();
20
+ var s3_opts = { Bucket: config.bucket,
21
+ Prefix: config.prefix
22
+ };
23
+ s3.listObjects(s3_opts, function(err, meta){
24
+ if (err && err.code == 'NotFound') {
25
+ return callback(new Error('['+package_json.name+'] Not found: https://' + s3_opts.Bucket + '.s3.amazonaws.com/'+config.prefix));
26
+ } else if(err) {
27
+ return callback(err);
28
+ } else {
29
+ log.verbose(JSON.stringify(meta,null,1));
30
+ if (meta && meta.Contents) {
31
+ meta.Contents.forEach(function(obj) {
32
+ console.log(obj.Key);
33
+ });
34
+ } else {
35
+ console.error('['+package_json.name+'] No objects found at https://' + s3_opts.Bucket + '.s3.amazonaws.com/'+config.prefix );
36
+ }
37
+ return callback();
38
+ }
39
+ });
40
+ }
@@ -0,0 +1,243 @@
1
+ "use strict";
2
+
3
+ module.exports = exports = install;
4
+
5
+ exports.usage = 'Attempts to install pre-built binary for module';
6
+
7
+ var fs = require('fs');
8
+ var path = require('path');
9
+ var log = require('npmlog');
10
+ var existsAsync = fs.exists || path.exists;
11
+ var versioning = require('./util/versioning.js');
12
+ var napi = require('./util/napi.js');
13
+ var mkdirp = require('mkdirp');
14
+
15
+ var npgVersion = 'unknown';
16
+ try {
17
+ // Read own package.json to get the current node-pre-pyp version.
18
+ var ownPackageJSON = fs.readFileSync(path.join(__dirname, '..', 'package.json'), 'utf8');
19
+ npgVersion = JSON.parse(ownPackageJSON).version;
20
+ } catch (e) {}
21
+
22
+ var http_get = {
23
+ impl: undefined,
24
+ type: undefined
25
+ };
26
+
27
+ try {
28
+ http_get.impl = require('request');
29
+ http_get.type = 'request';
30
+ log.warn("Using request for node-pre-gyp https download");
31
+ } catch (e) {
32
+ http_get.impl = require('needle');
33
+ http_get.type = 'needle';
34
+ log.warn("Using needle for node-pre-gyp https download");
35
+ }
36
+
37
+ function download(uri,opts,callback) {
38
+ log.http('GET', uri);
39
+
40
+ var req = null;
41
+
42
+ // Try getting version info from the currently running npm.
43
+ var envVersionInfo = process.env.npm_config_user_agent ||
44
+ 'node ' + process.version;
45
+
46
+ var requestOpts = {
47
+ uri: uri.replace('+','%2B'),
48
+ headers: {
49
+ 'User-Agent': 'node-pre-gyp (v' + npgVersion + ', ' + envVersionInfo + ')'
50
+ },
51
+ follow_max: 10,
52
+ };
53
+
54
+ if (opts.cafile) {
55
+ try {
56
+ requestOpts.ca = fs.readFileSync(opts.cafile);
57
+ } catch (e) {
58
+ return callback(e);
59
+ }
60
+ } else if (opts.ca) {
61
+ requestOpts.ca = opts.ca;
62
+ }
63
+
64
+ var proxyUrl = opts.proxy ||
65
+ process.env.http_proxy ||
66
+ process.env.HTTP_PROXY ||
67
+ process.env.npm_config_proxy;
68
+ if (proxyUrl) {
69
+ if (/^https?:\/\//i.test(proxyUrl)) {
70
+ log.verbose('download', 'using proxy url: "%s"', proxyUrl);
71
+ requestOpts.proxy = proxyUrl;
72
+ } else {
73
+ log.warn('download', 'ignoring invalid "proxy" config setting: "%s"', proxyUrl);
74
+ }
75
+ }
76
+ try {
77
+ req = http_get.impl.get(requestOpts.uri, requestOpts);
78
+ } catch (e) {
79
+ return callback(e);
80
+ }
81
+ if (req) {
82
+ req.on('response', function (res) {
83
+ log.http(res.statusCode, uri);
84
+ });
85
+ }
86
+ return callback(null,req);
87
+ }
88
+
89
+ function place_binary(from,to,opts,callback) {
90
+ download(from,opts,function(err,req) {
91
+ if (err) return callback(err);
92
+ if (!req) return callback(new Error("empty req"));
93
+ var badDownload = false;
94
+ var extractCount = 0;
95
+ var tar = require('tar');
96
+
97
+ function afterTarball(err) {
98
+ if (err) return callback(err);
99
+ if (badDownload) return callback(new Error("bad download"));
100
+ if (extractCount === 0) {
101
+ return callback(new Error('There was a fatal problem while downloading/extracting the tarball'));
102
+ }
103
+ log.info('tarball', 'done parsing tarball');
104
+ callback();
105
+ }
106
+
107
+ function filter_func(entry) {
108
+ log.info('install','unpacking ' + entry.path);
109
+ extractCount++;
110
+ }
111
+
112
+ // for request compatibility
113
+ req.on('error', function(err) {
114
+ badDownload = true;
115
+ return callback(err);
116
+ });
117
+
118
+ // for needle compatibility
119
+ req.on('err', function(err) {
120
+ badDownload = true;
121
+ return callback(err);
122
+ });
123
+
124
+ req.on('close', function () {
125
+ if (extractCount === 0) {
126
+ return callback(new Error('Connection closed while downloading tarball file'));
127
+ }
128
+ });
129
+
130
+ req.on('response', function(res) {
131
+ // ignore redirects, needle handles these automatically.
132
+ if (http_get.type === 'needle' && res.headers.hasOwnProperty('location') && res.headers.location !== '') {
133
+ return;
134
+ }
135
+ if (res.statusCode !== 200) {
136
+ badDownload = true;
137
+ var err = new Error(res.statusCode + ' status code downloading tarball ' + from);
138
+ err.statusCode = res.statusCode;
139
+ return callback(err);
140
+ }
141
+ // start unzipping and untaring
142
+ req.pipe(tar.extract({
143
+ cwd: to,
144
+ strip: 1,
145
+ onentry: filter_func
146
+ }).on('close', afterTarball).on('error', callback));
147
+ });
148
+ });
149
+ }
150
+
151
+ function do_build(gyp,argv,callback) {
152
+ var args = ['rebuild'].concat(argv);
153
+ gyp.todo.push( { name: 'build', args: args } );
154
+ process.nextTick(callback);
155
+ }
156
+
157
+ function print_fallback_error(err,opts,package_json) {
158
+ var fallback_message = ' (falling back to source compile with node-gyp)';
159
+ var full_message = '';
160
+ if (err.statusCode !== undefined) {
161
+ // If we got a network response it but failed to download
162
+ // it means remote binaries are not available, so let's try to help
163
+ // the user/developer with the info to debug why
164
+ full_message = "Pre-built binaries not found for " + package_json.name + "@" + package_json.version;
165
+ full_message += " and " + opts.runtime + "@" + (opts.target || process.versions.node) + " (" + opts.node_abi + " ABI, " + opts.libc + ")";
166
+ full_message += fallback_message;
167
+ log.warn("Tried to download(" + err.statusCode + "): " + opts.hosted_tarball);
168
+ log.warn(full_message);
169
+ log.http(err.message);
170
+ } else {
171
+ // If we do not have a statusCode that means an unexpected error
172
+ // happened and prevented an http response, so we output the exact error
173
+ full_message = "Pre-built binaries not installable for " + package_json.name + "@" + package_json.version;
174
+ full_message += " and " + opts.runtime + "@" + (opts.target || process.versions.node) + " (" + opts.node_abi + " ABI, " + opts.libc + ")";
175
+ full_message += fallback_message;
176
+ log.warn(full_message);
177
+ log.warn("Hit error " + err.message);
178
+ }
179
+ }
180
+
181
+ function install(gyp, argv, callback) {
182
+ var package_json = JSON.parse(fs.readFileSync('./package.json'));
183
+ var napi_build_version = napi.get_napi_build_version_from_command_args(argv);
184
+ var source_build = gyp.opts['build-from-source'] || gyp.opts.build_from_source;
185
+ var update_binary = gyp.opts['update-binary'] || gyp.opts.update_binary;
186
+ var should_do_source_build = source_build === package_json.name || (source_build === true || source_build === 'true');
187
+ if (should_do_source_build) {
188
+ log.info('build','requesting source compile');
189
+ return do_build(gyp,argv,callback);
190
+ } else {
191
+ var fallback_to_build = gyp.opts['fallback-to-build'] || gyp.opts.fallback_to_build;
192
+ var should_do_fallback_build = fallback_to_build === package_json.name || (fallback_to_build === true || fallback_to_build === 'true');
193
+ // but allow override from npm
194
+ if (process.env.npm_config_argv) {
195
+ var cooked = JSON.parse(process.env.npm_config_argv).cooked;
196
+ var match = cooked.indexOf("--fallback-to-build");
197
+ if (match > -1 && cooked.length > match && cooked[match+1] == "false") {
198
+ should_do_fallback_build = false;
199
+ log.info('install','Build fallback disabled via npm flag: --fallback-to-build=false');
200
+ }
201
+ }
202
+ var opts;
203
+ try {
204
+ opts = versioning.evaluate(package_json, gyp.opts, napi_build_version);
205
+ } catch (err) {
206
+ return callback(err);
207
+ }
208
+
209
+ opts.ca = gyp.opts.ca;
210
+ opts.cafile = gyp.opts.cafile;
211
+
212
+ var from = opts.hosted_tarball;
213
+ var to = opts.module_path;
214
+ var binary_module = path.join(to,opts.module_name + '.node');
215
+ existsAsync(binary_module,function(found) {
216
+ if (found && !update_binary) {
217
+ console.log('['+package_json.name+'] Success: "' + binary_module + '" already installed');
218
+ console.log('Pass --update-binary to reinstall or --build-from-source to recompile');
219
+ return callback();
220
+ } else {
221
+ if (!update_binary) log.info('check','checked for "' + binary_module + '" (not found)');
222
+ mkdirp(to,function(err) {
223
+ if (err) {
224
+ after_place(err);
225
+ } else {
226
+ place_binary(from,to,opts,after_place);
227
+ }
228
+ });
229
+ }
230
+ function after_place(err) {
231
+ if (err && should_do_fallback_build) {
232
+ print_fallback_error(err,opts,package_json);
233
+ return do_build(gyp,argv,callback);
234
+ } else if (err) {
235
+ return callback(err);
236
+ } else {
237
+ console.log('['+package_json.name+'] Success: "' + binary_module + '" is installed via remote');
238
+ return callback();
239
+ }
240
+ }
241
+ });
242
+ }
243
+ }