fsevents 1.1.0 → 1.2.0

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 (590) 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/build/Release/.node +0 -0
  10. package/build/Release/fse.node +0 -0
  11. package/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/package.json +15 -51
  22. package/node_modules/ajv/.tonic_example.js +20 -0
  23. package/node_modules/{is-my-json-valid → ajv}/LICENSE +6 -5
  24. package/node_modules/ajv/README.md +1213 -0
  25. package/node_modules/ajv/dist/ajv.bundle.js +8023 -0
  26. package/node_modules/ajv/dist/ajv.min.js +6 -0
  27. package/node_modules/ajv/dist/ajv.min.js.map +1 -0
  28. package/node_modules/ajv/dist/nodent.min.js +8 -0
  29. package/node_modules/ajv/dist/regenerator.min.js +32 -0
  30. package/node_modules/ajv/lib/ajv.d.ts +284 -0
  31. package/node_modules/ajv/lib/ajv.js +420 -0
  32. package/node_modules/ajv/lib/async.js +218 -0
  33. package/node_modules/ajv/lib/cache.js +26 -0
  34. package/node_modules/ajv/lib/compile/_rules.js +28 -0
  35. package/node_modules/ajv/lib/compile/equal.js +45 -0
  36. package/node_modules/ajv/lib/compile/formats.js +164 -0
  37. package/node_modules/ajv/lib/compile/index.js +390 -0
  38. package/node_modules/ajv/lib/compile/resolve.js +267 -0
  39. package/node_modules/ajv/lib/compile/rules.js +40 -0
  40. package/node_modules/ajv/lib/compile/schema_obj.js +9 -0
  41. package/node_modules/ajv/lib/compile/ucs2length.js +20 -0
  42. package/node_modules/ajv/lib/compile/util.js +257 -0
  43. package/node_modules/ajv/lib/compile/validation_error.js +14 -0
  44. package/node_modules/ajv/lib/dot/_limit.jst +49 -0
  45. package/node_modules/ajv/lib/dot/_limitItems.jst +10 -0
  46. package/node_modules/ajv/lib/dot/_limitLength.jst +10 -0
  47. package/node_modules/ajv/lib/dot/_limitProperties.jst +10 -0
  48. package/node_modules/ajv/lib/dot/allOf.jst +34 -0
  49. package/node_modules/ajv/lib/dot/anyOf.jst +48 -0
  50. package/node_modules/ajv/lib/dot/coerce.def +61 -0
  51. package/node_modules/ajv/lib/dot/custom.jst +184 -0
  52. package/node_modules/ajv/lib/dot/defaults.def +32 -0
  53. package/node_modules/ajv/lib/dot/definitions.def +182 -0
  54. package/node_modules/ajv/lib/dot/dependencies.jst +69 -0
  55. package/node_modules/ajv/lib/dot/enum.jst +30 -0
  56. package/node_modules/ajv/lib/dot/errors.def +185 -0
  57. package/node_modules/ajv/lib/dot/format.jst +100 -0
  58. package/node_modules/ajv/lib/dot/items.jst +101 -0
  59. package/node_modules/ajv/lib/dot/missing.def +34 -0
  60. package/node_modules/ajv/lib/dot/multipleOf.jst +20 -0
  61. package/node_modules/ajv/lib/dot/not.jst +43 -0
  62. package/node_modules/ajv/lib/dot/oneOf.jst +44 -0
  63. package/node_modules/ajv/lib/dot/pattern.jst +14 -0
  64. package/node_modules/ajv/lib/dot/properties.jst +319 -0
  65. package/node_modules/ajv/lib/dot/ref.jst +86 -0
  66. package/node_modules/ajv/lib/dot/required.jst +96 -0
  67. package/node_modules/ajv/lib/dot/uniqueItems.jst +38 -0
  68. package/node_modules/ajv/lib/dot/v5/_formatLimit.jst +116 -0
  69. package/node_modules/ajv/lib/dot/v5/constant.jst +10 -0
  70. package/node_modules/ajv/lib/dot/v5/patternRequired.jst +28 -0
  71. package/node_modules/ajv/lib/dot/v5/switch.jst +73 -0
  72. package/node_modules/ajv/lib/dot/validate.jst +210 -0
  73. package/node_modules/ajv/lib/dotjs/README.md +3 -0
  74. package/node_modules/ajv/lib/dotjs/_formatLimit.js +176 -0
  75. package/node_modules/ajv/lib/dotjs/_limit.js +124 -0
  76. package/node_modules/ajv/lib/dotjs/_limitItems.js +76 -0
  77. package/node_modules/ajv/lib/dotjs/_limitLength.js +81 -0
  78. package/node_modules/ajv/lib/dotjs/_limitProperties.js +76 -0
  79. package/node_modules/ajv/lib/dotjs/allOf.js +43 -0
  80. package/node_modules/ajv/lib/dotjs/anyOf.js +65 -0
  81. package/node_modules/ajv/lib/dotjs/constant.js +52 -0
  82. package/node_modules/ajv/lib/dotjs/custom.js +220 -0
  83. package/node_modules/ajv/lib/dotjs/dependencies.js +147 -0
  84. package/node_modules/ajv/lib/dotjs/enum.js +65 -0
  85. package/node_modules/ajv/lib/dotjs/format.js +138 -0
  86. package/node_modules/ajv/lib/dotjs/items.js +144 -0
  87. package/node_modules/ajv/lib/dotjs/multipleOf.js +76 -0
  88. package/node_modules/ajv/lib/dotjs/not.js +83 -0
  89. package/node_modules/ajv/lib/dotjs/oneOf.js +76 -0
  90. package/node_modules/ajv/lib/dotjs/pattern.js +74 -0
  91. package/node_modules/ajv/lib/dotjs/patternRequired.js +51 -0
  92. package/node_modules/ajv/lib/dotjs/properties.js +445 -0
  93. package/node_modules/ajv/lib/dotjs/ref.js +119 -0
  94. package/node_modules/ajv/lib/dotjs/required.js +249 -0
  95. package/node_modules/ajv/lib/dotjs/switch.js +128 -0
  96. package/node_modules/ajv/lib/dotjs/uniqueItems.js +71 -0
  97. package/node_modules/ajv/lib/dotjs/validate.js +375 -0
  98. package/node_modules/ajv/lib/keyword.js +129 -0
  99. package/node_modules/ajv/lib/refs/json-schema-draft-04.json +150 -0
  100. package/node_modules/ajv/lib/refs/json-schema-v5.json +328 -0
  101. package/node_modules/ajv/lib/v5.js +52 -0
  102. package/node_modules/ajv/package.json +132 -0
  103. package/node_modules/ajv/scripts/.eslintrc.yml +3 -0
  104. package/node_modules/ajv/scripts/bundle.js +54 -0
  105. package/node_modules/ajv/scripts/compile-dots.js +73 -0
  106. package/node_modules/ajv/scripts/info +10 -0
  107. package/node_modules/ajv/scripts/prepare-tests +9 -0
  108. package/node_modules/ajv/scripts/travis-gh-pages +23 -0
  109. package/node_modules/ansi-regex/package.json +26 -49
  110. package/node_modules/aproba/package.json +15 -48
  111. package/node_modules/are-we-there-yet/CHANGES.md +12 -0
  112. package/node_modules/are-we-there-yet/CHANGES.md~ +27 -0
  113. package/node_modules/are-we-there-yet/README.md +4 -3
  114. package/node_modules/are-we-there-yet/package.json +28 -54
  115. package/node_modules/asn1/package.json +16 -48
  116. package/node_modules/assert-plus/package.json +15 -47
  117. package/node_modules/asynckit/package.json +15 -49
  118. package/node_modules/aws-sign2/package.json +15 -45
  119. package/node_modules/aws4/package.json +15 -50
  120. package/node_modules/balanced-match/package.json +15 -49
  121. package/node_modules/bcrypt-pbkdf/package.json +16 -62
  122. package/node_modules/block-stream/package.json +15 -49
  123. package/node_modules/boom/package.json +15 -54
  124. package/node_modules/brace-expansion/README.md +1 -0
  125. package/node_modules/brace-expansion/index.js +1 -1
  126. package/node_modules/brace-expansion/package.json +20 -56
  127. package/node_modules/buffer-shims/package.json +15 -51
  128. package/node_modules/caseless/index.js +1 -0
  129. package/node_modules/caseless/package.json +19 -58
  130. package/node_modules/caseless/test.js +27 -0
  131. package/node_modules/co/History.md +172 -0
  132. package/node_modules/{commander → co}/LICENSE +1 -1
  133. package/node_modules/co/Readme.md +212 -0
  134. package/node_modules/co/index.js +237 -0
  135. package/node_modules/co/package.json +67 -0
  136. package/node_modules/code-point-at/package.json +15 -50
  137. package/node_modules/combined-stream/package.json +15 -58
  138. package/node_modules/concat-map/package.json +13 -41
  139. package/node_modules/console-control-strings/package.json +15 -50
  140. package/node_modules/core-util-is/package.json +15 -47
  141. package/node_modules/cryptiles/package.json +15 -49
  142. package/node_modules/dashdash/node_modules/assert-plus/package.json +15 -47
  143. package/node_modules/dashdash/package.json +15 -72
  144. package/node_modules/debug/.coveralls.yml +1 -0
  145. package/node_modules/debug/.eslintrc +11 -0
  146. package/node_modules/debug/.npmignore +3 -0
  147. package/node_modules/debug/.travis.yml +14 -0
  148. package/node_modules/debug/CHANGELOG.md +357 -0
  149. package/node_modules/debug/LICENSE +19 -0
  150. package/node_modules/debug/Makefile +28 -14
  151. package/node_modules/debug/README.md +312 -0
  152. package/node_modules/debug/component.json +4 -4
  153. package/node_modules/debug/karma.conf.js +70 -0
  154. package/node_modules/debug/node.js +1 -209
  155. package/node_modules/debug/package.json +41 -58
  156. package/node_modules/debug/{browser.js → src/browser.js} +29 -12
  157. package/node_modules/debug/{debug.js → src/debug.js} +42 -37
  158. package/node_modules/debug/src/index.js +10 -0
  159. package/node_modules/debug/src/node.js +246 -0
  160. package/node_modules/deep-extend/README.md +1 -1
  161. package/node_modules/deep-extend/lib/deep-extend.js +2 -2
  162. package/node_modules/deep-extend/package.json +22 -48
  163. package/node_modules/delayed-stream/package.json +15 -49
  164. package/node_modules/delegates/package.json +15 -50
  165. package/node_modules/detect-libc/.npmignore +7 -0
  166. package/node_modules/detect-libc/LICENSE +201 -0
  167. package/node_modules/detect-libc/README.md +78 -0
  168. package/node_modules/detect-libc/bin/detect-libc.js +18 -0
  169. package/node_modules/detect-libc/lib/detect-libc.js +85 -0
  170. package/node_modules/detect-libc/package.json +71 -0
  171. package/node_modules/ecc-jsbn/package.json +21 -45
  172. package/node_modules/extend/.eslintrc +10 -185
  173. package/node_modules/extend/.jscs.json +75 -4
  174. package/node_modules/extend/.travis.yml +154 -19
  175. package/node_modules/extend/CHANGELOG.md +8 -0
  176. package/node_modules/extend/README.md +20 -1
  177. package/node_modules/extend/index.js +8 -8
  178. package/node_modules/extend/package.json +26 -56
  179. package/node_modules/extsprintf/package.json +12 -43
  180. package/node_modules/forever-agent/package.json +16 -53
  181. package/node_modules/form-data/README.md +4 -4
  182. package/node_modules/form-data/lib/form_data.js +4 -0
  183. package/node_modules/form-data/package.json +18 -64
  184. package/node_modules/fs.realpath/package.json +15 -49
  185. package/node_modules/fstream/lib/reader.js +4 -4
  186. package/node_modules/fstream/lib/writer.js +2 -2
  187. package/node_modules/fstream/package.json +19 -67
  188. package/node_modules/fstream-ignore/package.json +15 -57
  189. package/node_modules/gauge/CHANGELOG.md +5 -0
  190. package/node_modules/gauge/package.json +18 -52
  191. package/node_modules/gauge/plumbing.js +1 -0
  192. package/node_modules/getpass/node_modules/assert-plus/package.json +15 -47
  193. package/node_modules/getpass/package.json +19 -58
  194. package/node_modules/glob/glob.js +0 -2
  195. package/node_modules/glob/package.json +19 -53
  196. package/node_modules/graceful-fs/package.json +15 -49
  197. package/node_modules/har-schema/LICENSE +13 -0
  198. package/node_modules/har-schema/README.md +49 -0
  199. package/node_modules/har-schema/lib/afterRequest.json +29 -0
  200. package/node_modules/har-schema/lib/beforeRequest.json +29 -0
  201. package/node_modules/har-schema/lib/browser.json +19 -0
  202. package/node_modules/har-schema/lib/cache.json +20 -0
  203. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/content.json +1 -0
  204. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/cookie.json +1 -0
  205. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/creator.json +1 -0
  206. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/entry.json +5 -4
  207. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/har.json +2 -1
  208. package/node_modules/har-schema/lib/header.json +19 -0
  209. package/node_modules/har-schema/lib/index.js +22 -0
  210. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/log.json +5 -4
  211. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/page.json +2 -1
  212. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/pageTimings.json +1 -0
  213. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/postData.json +1 -0
  214. package/node_modules/{har-validator/lib/schemas/record.json → har-schema/lib/query.json} +1 -0
  215. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/request.json +5 -4
  216. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/response.json +4 -3
  217. package/node_modules/{har-validator/lib/schemas → har-schema/lib}/timings.json +1 -0
  218. package/node_modules/har-schema/package.json +87 -0
  219. package/node_modules/har-validator/README.md +31 -265
  220. package/node_modules/har-validator/lib/browser/async.js +96 -0
  221. package/node_modules/har-validator/lib/browser/error.js +15 -0
  222. package/node_modules/har-validator/lib/browser/promise.js +93 -0
  223. package/node_modules/har-validator/lib/node4/async.js +136 -0
  224. package/node_modules/har-validator/lib/node4/error.js +22 -0
  225. package/node_modules/har-validator/lib/node4/promise.js +132 -0
  226. package/node_modules/har-validator/lib/node6/async.js +133 -0
  227. package/node_modules/har-validator/lib/node6/error.js +22 -0
  228. package/node_modules/har-validator/lib/node6/promise.js +130 -0
  229. package/node_modules/har-validator/lib/node7/async.js +133 -0
  230. package/node_modules/har-validator/lib/node7/error.js +22 -0
  231. package/node_modules/har-validator/lib/node7/promise.js +130 -0
  232. package/node_modules/har-validator/package.json +54 -72
  233. package/node_modules/har-validator/src/async.js +96 -0
  234. package/node_modules/har-validator/src/error.js +15 -0
  235. package/node_modules/har-validator/src/promise.js +93 -0
  236. package/node_modules/has-unicode/package.json +15 -50
  237. package/node_modules/hawk/package.json +15 -45
  238. package/node_modules/hoek/package.json +15 -55
  239. package/node_modules/http-signature/package.json +15 -53
  240. package/node_modules/inflight/package.json +15 -61
  241. package/node_modules/inherits/package.json +15 -58
  242. package/node_modules/ini/package.json +15 -45
  243. package/node_modules/is-fullwidth-code-point/package.json +16 -46
  244. package/node_modules/is-typedarray/package.json +15 -45
  245. package/node_modules/isarray/package.json +15 -46
  246. package/node_modules/isstream/package.json +15 -46
  247. package/node_modules/jodid25519/package.json +16 -44
  248. package/node_modules/jsbn/package.json +16 -53
  249. package/node_modules/json-schema/package.json +13 -41
  250. package/node_modules/{generate-function → json-stable-stringify}/.npmignore +0 -0
  251. package/node_modules/{generate-object-property → json-stable-stringify}/.travis.yml +1 -0
  252. package/node_modules/{ms → json-stable-stringify}/LICENSE +1 -3
  253. package/node_modules/json-stable-stringify/example/key_cmp.js +7 -0
  254. package/node_modules/json-stable-stringify/example/nested.js +3 -0
  255. package/node_modules/json-stable-stringify/example/str.js +3 -0
  256. package/node_modules/json-stable-stringify/example/value_cmp.js +7 -0
  257. package/node_modules/json-stable-stringify/index.js +84 -0
  258. package/node_modules/json-stable-stringify/package.json +75 -0
  259. package/node_modules/json-stable-stringify/readme.markdown +130 -0
  260. package/node_modules/json-stable-stringify/test/cmp.js +11 -0
  261. package/node_modules/json-stable-stringify/test/nested.js +35 -0
  262. package/node_modules/json-stable-stringify/test/replacer.js +74 -0
  263. package/node_modules/json-stable-stringify/test/space.js +59 -0
  264. package/node_modules/json-stable-stringify/test/str.js +32 -0
  265. package/node_modules/json-stable-stringify/test/to-json.js +20 -0
  266. package/node_modules/json-stringify-safe/package.json +15 -50
  267. package/node_modules/jsonify/README.markdown +34 -0
  268. package/node_modules/jsonify/index.js +2 -0
  269. package/node_modules/jsonify/lib/parse.js +273 -0
  270. package/node_modules/jsonify/lib/stringify.js +154 -0
  271. package/node_modules/jsonify/package.json +60 -0
  272. package/node_modules/jsonify/test/parse.js +16 -0
  273. package/node_modules/jsonify/test/stringify.js +15 -0
  274. package/node_modules/jsprim/CHANGES.md +4 -0
  275. package/node_modules/jsprim/README.md +55 -0
  276. package/node_modules/jsprim/lib/jsprim.js +248 -1
  277. package/node_modules/jsprim/node_modules/assert-plus/AUTHORS +6 -0
  278. package/node_modules/jsprim/node_modules/assert-plus/CHANGES.md +14 -0
  279. package/node_modules/jsprim/node_modules/assert-plus/README.md +162 -0
  280. package/node_modules/jsprim/node_modules/assert-plus/assert.js +211 -0
  281. package/node_modules/jsprim/node_modules/assert-plus/package.json +83 -0
  282. package/node_modules/jsprim/package.json +22 -57
  283. package/node_modules/mime-db/HISTORY.md +21 -0
  284. package/node_modules/mime-db/db.json +54 -0
  285. package/node_modules/mime-db/package.json +24 -63
  286. package/node_modules/mime-types/HISTORY.md +7 -0
  287. package/node_modules/mime-types/README.md +10 -5
  288. package/node_modules/mime-types/index.js +1 -1
  289. package/node_modules/mime-types/package.json +23 -66
  290. package/node_modules/minimatch/package.json +24 -58
  291. package/node_modules/minimist/package.json +12 -41
  292. package/node_modules/mkdirp/package.json +15 -47
  293. package/node_modules/ms/index.js +50 -23
  294. package/node_modules/{graceful-readlink/LICENSE → ms/license.md} +1 -2
  295. package/node_modules/ms/package.json +49 -61
  296. package/node_modules/ms/readme.md +51 -0
  297. package/node_modules/node-pre-gyp/CHANGELOG.md +33 -0
  298. package/node_modules/node-pre-gyp/README.md +13 -1
  299. package/node_modules/node-pre-gyp/appveyor.yml +15 -9
  300. package/node_modules/node-pre-gyp/bin/node-pre-gyp +5 -2
  301. package/node_modules/node-pre-gyp/contributing.md +10 -0
  302. package/node_modules/node-pre-gyp/lib/install.js +6 -48
  303. package/node_modules/node-pre-gyp/lib/testbinary.js +8 -2
  304. package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +164 -0
  305. package/node_modules/node-pre-gyp/lib/util/versioning.js +17 -0
  306. package/node_modules/node-pre-gyp/package.json +33 -76
  307. package/node_modules/nopt/.travis.yml +3 -4
  308. package/node_modules/nopt/CHANGELOG.md +58 -0
  309. package/node_modules/nopt/README.md +28 -26
  310. package/node_modules/nopt/lib/nopt.js +50 -29
  311. package/node_modules/nopt/package.json +22 -59
  312. package/node_modules/nopt/test/basic.js +36 -6
  313. package/node_modules/npmlog/CHANGELOG.md +5 -1
  314. package/node_modules/npmlog/log.js +2 -0
  315. package/node_modules/npmlog/package.json +21 -67
  316. package/node_modules/number-is-nan/package.json +15 -50
  317. package/node_modules/oauth-sign/package.json +15 -56
  318. package/node_modules/object-assign/package.json +15 -58
  319. package/node_modules/once/package.json +15 -49
  320. package/node_modules/os-homedir/index.js +24 -0
  321. package/node_modules/{ansi-styles → os-homedir}/license +0 -0
  322. package/node_modules/os-homedir/package.json +74 -0
  323. package/node_modules/os-homedir/readme.md +31 -0
  324. package/node_modules/os-tmpdir/index.js +25 -0
  325. package/node_modules/{chalk → os-tmpdir}/license +0 -0
  326. package/node_modules/os-tmpdir/package.json +74 -0
  327. package/node_modules/os-tmpdir/readme.md +32 -0
  328. package/node_modules/osenv/.npmignore +13 -0
  329. package/node_modules/osenv/.travis.yml +9 -0
  330. package/node_modules/{tar-pack/node_modules/once → osenv}/LICENSE +0 -0
  331. package/node_modules/osenv/README.md +63 -0
  332. package/node_modules/osenv/osenv.js +72 -0
  333. package/node_modules/osenv/package.json +68 -0
  334. package/node_modules/osenv/test/unix.js +71 -0
  335. package/node_modules/osenv/test/windows.js +74 -0
  336. package/node_modules/osenv/x.tap +39 -0
  337. package/node_modules/path-is-absolute/package.json +15 -50
  338. package/node_modules/performance-now/.npmignore +1 -0
  339. package/node_modules/performance-now/.tm_properties +7 -0
  340. package/node_modules/{generate-function → performance-now}/.travis.yml +1 -0
  341. package/node_modules/performance-now/Makefile +25 -0
  342. package/node_modules/performance-now/README.md +30 -0
  343. package/node_modules/performance-now/lib/performance-now.js +32 -0
  344. package/node_modules/performance-now/license.txt +7 -0
  345. package/node_modules/performance-now/package.json +58 -0
  346. package/node_modules/performance-now/src/performance-now.coffee +15 -0
  347. package/node_modules/performance-now/test/mocha.opts +3 -0
  348. package/node_modules/performance-now/test/performance-now.coffee +38 -0
  349. package/node_modules/process-nextick-args/package.json +15 -51
  350. package/node_modules/punycode/package.json +15 -54
  351. package/node_modules/qs/.eslintrc +4 -5
  352. package/node_modules/qs/.jscs.json +176 -0
  353. package/node_modules/qs/CHANGELOG.md +19 -0
  354. package/node_modules/qs/README.md +10 -1
  355. package/node_modules/qs/dist/qs.js +24 -14
  356. package/node_modules/qs/lib/index.js +0 -0
  357. package/node_modules/qs/lib/parse.js +6 -5
  358. package/node_modules/qs/lib/stringify.js +15 -8
  359. package/node_modules/qs/lib/utils.js +3 -1
  360. package/node_modules/qs/package.json +19 -61
  361. package/node_modules/qs/test/.eslintrc +2 -1
  362. package/node_modules/qs/test/parse.js +37 -2
  363. package/node_modules/qs/test/stringify.js +29 -0
  364. package/node_modules/qs/test/utils.js +0 -0
  365. package/node_modules/rc/lib/utils.js +2 -1
  366. package/node_modules/rc/node_modules/minimist/package.json +15 -46
  367. package/node_modules/rc/package.json +18 -53
  368. package/node_modules/rc/test/nested-env-vars.js +31 -21
  369. package/node_modules/readable-stream/.travis.yml +2 -2
  370. package/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  371. package/node_modules/readable-stream/GOVERNANCE.md +136 -0
  372. package/node_modules/readable-stream/LICENSE +29 -0
  373. package/node_modules/readable-stream/README.md +20 -3
  374. package/node_modules/readable-stream/duplex-browser.js +1 -0
  375. package/node_modules/readable-stream/duplex.js +1 -1
  376. package/node_modules/readable-stream/lib/_stream_readable.js +7 -13
  377. package/node_modules/readable-stream/lib/_stream_writable.js +18 -28
  378. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  379. package/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  380. package/node_modules/readable-stream/package.json +25 -67
  381. package/node_modules/readable-stream/passthrough.js +1 -1
  382. package/node_modules/{tar-pack/node_modules/readable-stream/readable.js → readable-stream/readable-browser.js} +1 -10
  383. package/node_modules/readable-stream/readable.js +17 -14
  384. package/node_modules/readable-stream/transform.js +1 -1
  385. package/node_modules/readable-stream/writable-browser.js +1 -0
  386. package/node_modules/readable-stream/writable.js +8 -1
  387. package/node_modules/request/CHANGELOG.md +23 -11
  388. package/node_modules/request/README.md +36 -19
  389. package/node_modules/request/lib/helpers.js +2 -1
  390. package/node_modules/request/lib/multipart.js +2 -1
  391. package/node_modules/request/lib/oauth.js +2 -1
  392. package/node_modules/request/package.json +30 -74
  393. package/node_modules/request/request.js +106 -16
  394. package/node_modules/rimraf/bin.js +13 -3
  395. package/node_modules/rimraf/package.json +19 -55
  396. package/node_modules/rimraf/rimraf.js +22 -2
  397. package/node_modules/safe-buffer/.travis.yml +7 -0
  398. package/node_modules/{is-property → safe-buffer}/LICENSE +1 -2
  399. package/node_modules/safe-buffer/README.md +581 -0
  400. package/node_modules/safe-buffer/browser.js +1 -0
  401. package/node_modules/safe-buffer/index.js +58 -0
  402. package/node_modules/safe-buffer/package.json +64 -0
  403. package/node_modules/safe-buffer/test.js +99 -0
  404. package/node_modules/semver/package.json +15 -54
  405. package/node_modules/set-blocking/package.json +15 -50
  406. package/node_modules/signal-exit/package.json +15 -54
  407. package/node_modules/sntp/package.json +16 -45
  408. package/node_modules/sshpk/README.md +38 -6
  409. package/node_modules/sshpk/lib/certificate.js +88 -2
  410. package/node_modules/sshpk/lib/dhe.js +101 -2
  411. package/node_modules/sshpk/lib/formats/openssh-cert.js +34 -1
  412. package/node_modules/sshpk/lib/formats/x509.js +247 -5
  413. package/node_modules/sshpk/lib/identity.js +1 -1
  414. package/node_modules/sshpk/lib/index.js +1 -0
  415. package/node_modules/sshpk/lib/key.js +6 -2
  416. package/node_modules/sshpk/lib/private-key.js +25 -1
  417. package/node_modules/sshpk/lib/signature.js +76 -8
  418. package/node_modules/sshpk/node_modules/assert-plus/package.json +15 -47
  419. package/node_modules/sshpk/package.json +21 -53
  420. package/node_modules/string-width/package.json +15 -50
  421. package/node_modules/string_decoder/LICENSE +48 -20
  422. package/node_modules/string_decoder/README.md +25 -4
  423. package/node_modules/string_decoder/lib/string_decoder.js +272 -0
  424. package/node_modules/string_decoder/package.json +24 -55
  425. package/node_modules/stringstream/package.json +15 -48
  426. package/node_modules/strip-ansi/package.json +27 -50
  427. package/node_modules/strip-json-comments/package.json +15 -50
  428. package/node_modules/tar/package.json +15 -58
  429. package/node_modules/tar-pack/package.json +28 -79
  430. package/node_modules/tough-cookie/package.json +15 -57
  431. package/node_modules/tunnel-agent/index.js +5 -4
  432. package/node_modules/tunnel-agent/package.json +22 -66
  433. package/node_modules/tweetnacl/package.json +16 -50
  434. package/node_modules/uid-number/package.json +16 -46
  435. package/node_modules/util-deprecate/package.json +15 -48
  436. package/node_modules/uuid/package.json +15 -58
  437. package/node_modules/verror/package.json +12 -41
  438. package/node_modules/wide-align/package.json +25 -51
  439. package/node_modules/wrappy/package.json +15 -54
  440. package/package.json +8 -4
  441. package/src/methods.cc +1 -1
  442. package/node_modules/ansi-styles/index.js +0 -65
  443. package/node_modules/ansi-styles/package.json +0 -114
  444. package/node_modules/ansi-styles/readme.md +0 -86
  445. package/node_modules/are-we-there-yet/.npmignore +0 -5
  446. package/node_modules/are-we-there-yet/test/lib/test-event.js +0 -29
  447. package/node_modules/are-we-there-yet/test/tracker.js +0 -57
  448. package/node_modules/are-we-there-yet/test/trackergroup.js +0 -96
  449. package/node_modules/are-we-there-yet/test/trackerstream.js +0 -51
  450. package/node_modules/chalk/index.js +0 -116
  451. package/node_modules/chalk/package.json +0 -140
  452. package/node_modules/chalk/readme.md +0 -213
  453. package/node_modules/commander/History.md +0 -261
  454. package/node_modules/commander/Readme.md +0 -351
  455. package/node_modules/commander/index.js +0 -1110
  456. package/node_modules/commander/package.json +0 -104
  457. package/node_modules/debug/.jshintrc +0 -3
  458. package/node_modules/debug/History.md +0 -195
  459. package/node_modules/debug/Readme.md +0 -188
  460. package/node_modules/debug/bower.json +0 -28
  461. package/node_modules/escape-string-regexp/index.js +0 -11
  462. package/node_modules/escape-string-regexp/license +0 -21
  463. package/node_modules/escape-string-regexp/package.json +0 -109
  464. package/node_modules/escape-string-regexp/readme.md +0 -27
  465. package/node_modules/generate-function/README.md +0 -72
  466. package/node_modules/generate-function/example.js +0 -27
  467. package/node_modules/generate-function/index.js +0 -61
  468. package/node_modules/generate-function/package.json +0 -87
  469. package/node_modules/generate-function/test.js +0 -33
  470. package/node_modules/generate-object-property/.npmignore +0 -1
  471. package/node_modules/generate-object-property/LICENSE +0 -21
  472. package/node_modules/generate-object-property/README.md +0 -19
  473. package/node_modules/generate-object-property/index.js +0 -12
  474. package/node_modules/generate-object-property/package.json +0 -84
  475. package/node_modules/generate-object-property/test.js +0 -12
  476. package/node_modules/graceful-readlink/.npmignore +0 -3
  477. package/node_modules/graceful-readlink/.travis.yml +0 -5
  478. package/node_modules/graceful-readlink/README.md +0 -17
  479. package/node_modules/graceful-readlink/index.js +0 -12
  480. package/node_modules/graceful-readlink/package.json +0 -83
  481. package/node_modules/har-validator/bin/har-validator +0 -56
  482. package/node_modules/har-validator/lib/async.js +0 -14
  483. package/node_modules/har-validator/lib/error.js +0 -10
  484. package/node_modules/har-validator/lib/index.js +0 -22
  485. package/node_modules/har-validator/lib/runner.js +0 -29
  486. package/node_modules/har-validator/lib/schemas/cache.json +0 -13
  487. package/node_modules/har-validator/lib/schemas/cacheEntry.json +0 -31
  488. package/node_modules/har-validator/lib/schemas/index.js +0 -49
  489. package/node_modules/has-ansi/index.js +0 -4
  490. package/node_modules/has-ansi/license +0 -21
  491. package/node_modules/has-ansi/package.json +0 -118
  492. package/node_modules/has-ansi/readme.md +0 -36
  493. package/node_modules/is-my-json-valid/.npmignore +0 -2
  494. package/node_modules/is-my-json-valid/.travis.yml +0 -3
  495. package/node_modules/is-my-json-valid/README.md +0 -173
  496. package/node_modules/is-my-json-valid/example.js +0 -18
  497. package/node_modules/is-my-json-valid/formats.js +0 -14
  498. package/node_modules/is-my-json-valid/index.js +0 -594
  499. package/node_modules/is-my-json-valid/package.json +0 -116
  500. package/node_modules/is-my-json-valid/require.js +0 -12
  501. package/node_modules/is-my-json-valid/test/fixtures/cosmic.js +0 -84
  502. package/node_modules/is-my-json-valid/test/json-schema-draft4/additionalItems.json +0 -82
  503. package/node_modules/is-my-json-valid/test/json-schema-draft4/additionalProperties.json +0 -88
  504. package/node_modules/is-my-json-valid/test/json-schema-draft4/allOf.json +0 -112
  505. package/node_modules/is-my-json-valid/test/json-schema-draft4/anyOf.json +0 -68
  506. package/node_modules/is-my-json-valid/test/json-schema-draft4/bignum.json +0 -107
  507. package/node_modules/is-my-json-valid/test/json-schema-draft4/default.json +0 -49
  508. package/node_modules/is-my-json-valid/test/json-schema-draft4/definitions.json +0 -32
  509. package/node_modules/is-my-json-valid/test/json-schema-draft4/dependencies.json +0 -113
  510. package/node_modules/is-my-json-valid/test/json-schema-draft4/enum.json +0 -72
  511. package/node_modules/is-my-json-valid/test/json-schema-draft4/format.json +0 -143
  512. package/node_modules/is-my-json-valid/test/json-schema-draft4/items.json +0 -46
  513. package/node_modules/is-my-json-valid/test/json-schema-draft4/maxItems.json +0 -28
  514. package/node_modules/is-my-json-valid/test/json-schema-draft4/maxLength.json +0 -28
  515. package/node_modules/is-my-json-valid/test/json-schema-draft4/maxProperties.json +0 -28
  516. package/node_modules/is-my-json-valid/test/json-schema-draft4/maximum.json +0 -42
  517. package/node_modules/is-my-json-valid/test/json-schema-draft4/minItems.json +0 -28
  518. package/node_modules/is-my-json-valid/test/json-schema-draft4/minLength.json +0 -28
  519. package/node_modules/is-my-json-valid/test/json-schema-draft4/minProperties.json +0 -28
  520. package/node_modules/is-my-json-valid/test/json-schema-draft4/minimum.json +0 -42
  521. package/node_modules/is-my-json-valid/test/json-schema-draft4/multipleOf.json +0 -96
  522. package/node_modules/is-my-json-valid/test/json-schema-draft4/not.json +0 -96
  523. package/node_modules/is-my-json-valid/test/json-schema-draft4/nullAndFormat.json +0 -18
  524. package/node_modules/is-my-json-valid/test/json-schema-draft4/nullAndObject.json +0 -18
  525. package/node_modules/is-my-json-valid/test/json-schema-draft4/oneOf.json +0 -68
  526. package/node_modules/is-my-json-valid/test/json-schema-draft4/pattern.json +0 -23
  527. package/node_modules/is-my-json-valid/test/json-schema-draft4/patternProperties.json +0 -110
  528. package/node_modules/is-my-json-valid/test/json-schema-draft4/properties.json +0 -92
  529. package/node_modules/is-my-json-valid/test/json-schema-draft4/ref.json +0 -128
  530. package/node_modules/is-my-json-valid/test/json-schema-draft4/refRemote.json +0 -74
  531. package/node_modules/is-my-json-valid/test/json-schema-draft4/required.json +0 -39
  532. package/node_modules/is-my-json-valid/test/json-schema-draft4/type.json +0 -330
  533. package/node_modules/is-my-json-valid/test/json-schema-draft4/uniqueItems.json +0 -79
  534. package/node_modules/is-my-json-valid/test/json-schema.js +0 -23
  535. package/node_modules/is-my-json-valid/test/misc.js +0 -471
  536. package/node_modules/is-property/.npmignore +0 -17
  537. package/node_modules/is-property/README.md +0 -28
  538. package/node_modules/is-property/is-property.js +0 -5
  539. package/node_modules/is-property/package.json +0 -92
  540. package/node_modules/jsonpointer/LICENSE.md +0 -21
  541. package/node_modules/jsonpointer/README.md +0 -39
  542. package/node_modules/jsonpointer/jsonpointer.js +0 -93
  543. package/node_modules/jsonpointer/package.json +0 -112
  544. package/node_modules/ms/.npmignore +0 -5
  545. package/node_modules/ms/History.md +0 -66
  546. package/node_modules/ms/README.md +0 -35
  547. package/node_modules/pinkie/index.js +0 -292
  548. package/node_modules/pinkie/license +0 -21
  549. package/node_modules/pinkie/package.json +0 -100
  550. package/node_modules/pinkie/readme.md +0 -83
  551. package/node_modules/pinkie-promise/index.js +0 -3
  552. package/node_modules/pinkie-promise/license +0 -21
  553. package/node_modules/pinkie-promise/package.json +0 -102
  554. package/node_modules/pinkie-promise/readme.md +0 -28
  555. package/node_modules/string_decoder/index.js +0 -221
  556. package/node_modules/supports-color/index.js +0 -50
  557. package/node_modules/supports-color/license +0 -21
  558. package/node_modules/supports-color/package.json +0 -113
  559. package/node_modules/supports-color/readme.md +0 -36
  560. package/node_modules/tar-pack/node_modules/once/README.md +0 -51
  561. package/node_modules/tar-pack/node_modules/once/once.js +0 -21
  562. package/node_modules/tar-pack/node_modules/once/package.json +0 -96
  563. package/node_modules/tar-pack/node_modules/readable-stream/.npmignore +0 -8
  564. package/node_modules/tar-pack/node_modules/readable-stream/.travis.yml +0 -49
  565. package/node_modules/tar-pack/node_modules/readable-stream/LICENSE +0 -18
  566. package/node_modules/tar-pack/node_modules/readable-stream/README.md +0 -36
  567. package/node_modules/tar-pack/node_modules/readable-stream/doc/stream.md +0 -2015
  568. package/node_modules/tar-pack/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  569. package/node_modules/tar-pack/node_modules/readable-stream/duplex.js +0 -1
  570. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_duplex.js +0 -75
  571. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_passthrough.js +0 -26
  572. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_readable.js +0 -937
  573. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_transform.js +0 -180
  574. package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_writable.js +0 -526
  575. package/node_modules/tar-pack/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -64
  576. package/node_modules/tar-pack/node_modules/readable-stream/package.json +0 -125
  577. package/node_modules/tar-pack/node_modules/readable-stream/passthrough.js +0 -1
  578. package/node_modules/tar-pack/node_modules/readable-stream/transform.js +0 -1
  579. package/node_modules/tar-pack/node_modules/readable-stream/writable.js +0 -1
  580. package/node_modules/wide-align/.npmignore +0 -5
  581. package/node_modules/wide-align/test/align.js +0 -37
  582. package/node_modules/xtend/.jshintrc +0 -30
  583. package/node_modules/xtend/.npmignore +0 -1
  584. package/node_modules/xtend/LICENCE +0 -19
  585. package/node_modules/xtend/Makefile +0 -4
  586. package/node_modules/xtend/README.md +0 -32
  587. package/node_modules/xtend/immutable.js +0 -19
  588. package/node_modules/xtend/mutable.js +0 -17
  589. package/node_modules/xtend/package.json +0 -117
  590. package/node_modules/xtend/test.js +0 -83
@@ -139,6 +139,61 @@ Returns true if the given string ends with the given suffix and false
139
139
  otherwise.
140
140
 
141
141
 
142
+ ### parseInteger(str, options)
143
+
144
+ Parses the contents of `str` (a string) as an integer. On success, the integer
145
+ value is returned (as a number). On failure, an error is **returned** describing
146
+ why parsing failed.
147
+
148
+ By default, leading and trailing whitespace characters are not allowed, nor are
149
+ trailing characters that are not part of the numeric representation. This
150
+ behaviour can be toggled by using the options below. The empty string (`''`) is
151
+ not considered valid input. If the return value cannot be precisely represented
152
+ as a number (i.e., is smaller than `Number.MIN_SAFE_INTEGER` or larger than
153
+ `Number.MAX_SAFE_INTEGER`), an error is returned. Additionally, the string
154
+ `'-0'` will be parsed as the integer `0`, instead of as the IEEE floating point
155
+ value `-0`.
156
+
157
+ This function accepts both upper and lowercase characters for digits, similar to
158
+ `parseInt()`, `Number()`, and [strtol(3C)](https://illumos.org/man/3C/strtol).
159
+
160
+ The following may be specified in `options`:
161
+
162
+ Option | Type | Default | Meaning
163
+ ------------------ | ------- | ------- | ---------------------------
164
+ base | number | 10 | numeric base (radix) to use, in the range 2 to 36
165
+ allowSign | boolean | true | whether to interpret any leading `+` (positive) and `-` (negative) characters
166
+ allowImprecise | boolean | false | whether to accept values that may have lost precision (past `MAX_SAFE_INTEGER` or below `MIN_SAFE_INTEGER`)
167
+ allowPrefix | boolean | false | whether to interpret the prefixes `0b` (base 2), `0o` (base 8), `0t` (base 10), or `0x` (base 16)
168
+ allowTrailing | boolean | false | whether to ignore trailing characters
169
+ trimWhitespace | boolean | false | whether to trim any leading or trailing whitespace/line terminators
170
+ leadingZeroIsOctal | boolean | false | whether a leading zero indicates octal
171
+
172
+ Note that if `base` is unspecified, and `allowPrefix` or `leadingZeroIsOctal`
173
+ are, then the leading characters can change the default base from 10. If `base`
174
+ is explicitly specified and `allowPrefix` is true, then the prefix will only be
175
+ accepted if it matches the specified base. `base` and `leadingZeroIsOctal`
176
+ cannot be used together.
177
+
178
+ **Context:** It's tricky to parse integers with JavaScript's built-in facilities
179
+ for several reasons:
180
+
181
+ - `parseInt()` and `Number()` by default allow the base to be specified in the
182
+ input string by a prefix (e.g., `0x` for hex).
183
+ - `parseInt()` allows trailing nonnumeric characters.
184
+ - `Number(str)` returns 0 when `str` is the empty string (`''`).
185
+ - Both functions return incorrect values when the input string represents a
186
+ valid integer outside the range of integers that can be represented precisely.
187
+ Specifically, `parseInt('9007199254740993')` returns 9007199254740992.
188
+ - Both functions always accept `-` and `+` signs before the digit.
189
+ - Some older JavaScript engines always interpret a leading 0 as indicating
190
+ octal, which can be surprising when parsing input from users who expect a
191
+ leading zero to be insignificant.
192
+
193
+ While each of these may be desirable in some contexts, there are also times when
194
+ none of them are wanted. `parseInteger()` grants greater control over what
195
+ input's permissible.
196
+
142
197
  ### iso8601(date)
143
198
 
144
199
  Converts a Date object to an ISO8601 date string of the form
@@ -2,7 +2,7 @@
2
2
  * lib/jsprim.js: utilities for primitive JavaScript types
3
3
  */
4
4
 
5
- var mod_assert = require('assert');
5
+ var mod_assert = require('assert-plus');
6
6
  var mod_util = require('util');
7
7
 
8
8
  var mod_extsprintf = require('extsprintf');
@@ -29,6 +29,8 @@ exports.mergeObjects = mergeObjects;
29
29
  exports.startsWith = startsWith;
30
30
  exports.endsWith = endsWith;
31
31
 
32
+ exports.parseInteger = parseInteger;
33
+
32
34
  exports.iso8601 = iso8601;
33
35
  exports.rfc1123 = rfc1123;
34
36
  exports.parseDateTime = parseDateTime;
@@ -279,6 +281,251 @@ function parseDateTime(str)
279
281
  }
280
282
  }
281
283
 
284
+
285
+ /*
286
+ * Number.*_SAFE_INTEGER isn't present before node v0.12, so we hardcode
287
+ * the ES6 definitions here, while allowing for them to someday be higher.
288
+ */
289
+ var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
290
+ var MIN_SAFE_INTEGER = Number.MIN_SAFE_INTEGER || -9007199254740991;
291
+
292
+
293
+ /*
294
+ * Default options for parseInteger().
295
+ */
296
+ var PI_DEFAULTS = {
297
+ base: 10,
298
+ allowSign: true,
299
+ allowPrefix: false,
300
+ allowTrailing: false,
301
+ allowImprecise: false,
302
+ trimWhitespace: false,
303
+ leadingZeroIsOctal: false
304
+ };
305
+
306
+ var CP_0 = 0x30;
307
+ var CP_9 = 0x39;
308
+
309
+ var CP_A = 0x41;
310
+ var CP_B = 0x42;
311
+ var CP_O = 0x4f;
312
+ var CP_T = 0x54;
313
+ var CP_X = 0x58;
314
+ var CP_Z = 0x5a;
315
+
316
+ var CP_a = 0x61;
317
+ var CP_b = 0x62;
318
+ var CP_o = 0x6f;
319
+ var CP_t = 0x74;
320
+ var CP_x = 0x78;
321
+ var CP_z = 0x7a;
322
+
323
+ var PI_CONV_DEC = 0x30;
324
+ var PI_CONV_UC = 0x37;
325
+ var PI_CONV_LC = 0x57;
326
+
327
+
328
+ /*
329
+ * A stricter version of parseInt() that provides options for changing what
330
+ * is an acceptable string (for example, disallowing trailing characters).
331
+ */
332
+ function parseInteger(str, uopts)
333
+ {
334
+ mod_assert.string(str, 'str');
335
+ mod_assert.optionalObject(uopts, 'options');
336
+
337
+ var baseOverride = false;
338
+ var options = PI_DEFAULTS;
339
+
340
+ if (uopts) {
341
+ baseOverride = hasKey(uopts, 'base');
342
+ options = mergeObjects(options, uopts);
343
+ mod_assert.number(options.base, 'options.base');
344
+ mod_assert.ok(options.base >= 2, 'options.base >= 2');
345
+ mod_assert.ok(options.base <= 36, 'options.base <= 36');
346
+ mod_assert.bool(options.allowSign, 'options.allowSign');
347
+ mod_assert.bool(options.allowPrefix, 'options.allowPrefix');
348
+ mod_assert.bool(options.allowTrailing,
349
+ 'options.allowTrailing');
350
+ mod_assert.bool(options.allowImprecise,
351
+ 'options.allowImprecise');
352
+ mod_assert.bool(options.trimWhitespace,
353
+ 'options.trimWhitespace');
354
+ mod_assert.bool(options.leadingZeroIsOctal,
355
+ 'options.leadingZeroIsOctal');
356
+
357
+ if (options.leadingZeroIsOctal) {
358
+ mod_assert.ok(!baseOverride,
359
+ '"base" and "leadingZeroIsOctal" are ' +
360
+ 'mutually exclusive');
361
+ }
362
+ }
363
+
364
+ var c;
365
+ var pbase = -1;
366
+ var base = options.base;
367
+ var start;
368
+ var mult = 1;
369
+ var value = 0;
370
+ var idx = 0;
371
+ var len = str.length;
372
+
373
+ /* Trim any whitespace on the left side. */
374
+ if (options.trimWhitespace) {
375
+ while (idx < len && isSpace(str.charCodeAt(idx))) {
376
+ ++idx;
377
+ }
378
+ }
379
+
380
+ /* Check the number for a leading sign. */
381
+ if (options.allowSign) {
382
+ if (str[idx] === '-') {
383
+ idx += 1;
384
+ mult = -1;
385
+ } else if (str[idx] === '+') {
386
+ idx += 1;
387
+ }
388
+ }
389
+
390
+ /* Parse the base-indicating prefix if there is one. */
391
+ if (str[idx] === '0') {
392
+ if (options.allowPrefix) {
393
+ pbase = prefixToBase(str.charCodeAt(idx + 1));
394
+ if (pbase !== -1 && (!baseOverride || pbase === base)) {
395
+ base = pbase;
396
+ idx += 2;
397
+ }
398
+ }
399
+
400
+ if (pbase === -1 && options.leadingZeroIsOctal) {
401
+ base = 8;
402
+ }
403
+ }
404
+
405
+ /* Parse the actual digits. */
406
+ for (start = idx; idx < len; ++idx) {
407
+ c = translateDigit(str.charCodeAt(idx));
408
+ if (c !== -1 && c < base) {
409
+ value *= base;
410
+ value += c;
411
+ } else {
412
+ break;
413
+ }
414
+ }
415
+
416
+ /* If we didn't parse any digits, we have an invalid number. */
417
+ if (start === idx) {
418
+ return (new Error('invalid number: ' + JSON.stringify(str)));
419
+ }
420
+
421
+ /* Trim any whitespace on the right side. */
422
+ if (options.trimWhitespace) {
423
+ while (idx < len && isSpace(str.charCodeAt(idx))) {
424
+ ++idx;
425
+ }
426
+ }
427
+
428
+ /* Check for trailing characters. */
429
+ if (idx < len && !options.allowTrailing) {
430
+ return (new Error('trailing characters after number: ' +
431
+ JSON.stringify(str.slice(idx))));
432
+ }
433
+
434
+ /* If our value is 0, we return now, to avoid returning -0. */
435
+ if (value === 0) {
436
+ return (0);
437
+ }
438
+
439
+ /* Calculate our final value. */
440
+ var result = value * mult;
441
+
442
+ /*
443
+ * If the string represents a value that cannot be precisely represented
444
+ * by JavaScript, then we want to check that:
445
+ *
446
+ * - We never increased the value past MAX_SAFE_INTEGER
447
+ * - We don't make the result negative and below MIN_SAFE_INTEGER
448
+ *
449
+ * Because we only ever increment the value during parsing, there's no
450
+ * chance of moving past MAX_SAFE_INTEGER and then dropping below it
451
+ * again, losing precision in the process. This means that we only need
452
+ * to do our checks here, at the end.
453
+ */
454
+ if (!options.allowImprecise &&
455
+ (value > MAX_SAFE_INTEGER || result < MIN_SAFE_INTEGER)) {
456
+ return (new Error('number is outside of the supported range: ' +
457
+ JSON.stringify(str.slice(start, idx))));
458
+ }
459
+
460
+ return (result);
461
+ }
462
+
463
+
464
+ /*
465
+ * Interpret a character code as a base-36 digit.
466
+ */
467
+ function translateDigit(d)
468
+ {
469
+ if (d >= CP_0 && d <= CP_9) {
470
+ /* '0' to '9' -> 0 to 9 */
471
+ return (d - PI_CONV_DEC);
472
+ } else if (d >= CP_A && d <= CP_Z) {
473
+ /* 'A' - 'Z' -> 10 to 35 */
474
+ return (d - PI_CONV_UC);
475
+ } else if (d >= CP_a && d <= CP_z) {
476
+ /* 'a' - 'z' -> 10 to 35 */
477
+ return (d - PI_CONV_LC);
478
+ } else {
479
+ /* Invalid character code */
480
+ return (-1);
481
+ }
482
+ }
483
+
484
+
485
+ /*
486
+ * Test if a value matches the ECMAScript definition of trimmable whitespace.
487
+ */
488
+ function isSpace(c)
489
+ {
490
+ return (c === 0x20) ||
491
+ (c >= 0x0009 && c <= 0x000d) ||
492
+ (c === 0x00a0) ||
493
+ (c === 0x1680) ||
494
+ (c === 0x180e) ||
495
+ (c >= 0x2000 && c <= 0x200a) ||
496
+ (c === 0x2028) ||
497
+ (c === 0x2029) ||
498
+ (c === 0x202f) ||
499
+ (c === 0x205f) ||
500
+ (c === 0x3000) ||
501
+ (c === 0xfeff);
502
+ }
503
+
504
+
505
+ /*
506
+ * Determine which base a character indicates (e.g., 'x' indicates hex).
507
+ */
508
+ function prefixToBase(c)
509
+ {
510
+ if (c === CP_b || c === CP_B) {
511
+ /* 0b/0B (binary) */
512
+ return (2);
513
+ } else if (c === CP_o || c === CP_O) {
514
+ /* 0o/0O (octal) */
515
+ return (8);
516
+ } else if (c === CP_t || c === CP_T) {
517
+ /* 0t/0T (decimal) */
518
+ return (10);
519
+ } else if (c === CP_x || c === CP_X) {
520
+ /* 0x/0X (hexadecimal) */
521
+ return (16);
522
+ } else {
523
+ /* Not a meaningful character */
524
+ return (-1);
525
+ }
526
+ }
527
+
528
+
282
529
  function validateJsonObjectJS(schema, input)
283
530
  {
284
531
  var report = mod_jsonschema.validate(input, schema);
@@ -0,0 +1,6 @@
1
+ Dave Eddy <dave@daveeddy.com>
2
+ Fred Kuo <fred.kuo@joyent.com>
3
+ Lars-Magnus Skog <ralphtheninja@riseup.net>
4
+ Mark Cavage <mcavage@gmail.com>
5
+ Patrick Mooney <pmooney@pfmooney.com>
6
+ Rob Gulewich <robert.gulewich@joyent.com>
@@ -0,0 +1,14 @@
1
+ # assert-plus Changelog
2
+
3
+ ## 1.0.0
4
+
5
+ - *BREAKING* assert.number (and derivatives) now accept Infinity as valid input
6
+ - Add assert.finite check. Previous assert.number callers should use this if
7
+ they expect Infinity inputs to throw.
8
+
9
+ ## 0.2.0
10
+
11
+ - Fix `assert.object(null)` so it throws
12
+ - Fix optional/arrayOf exports for non-type-of asserts
13
+ - Add optiona/arrayOf exports for Stream/Date/Regex/uuid
14
+ - Add basic unit test coverage
@@ -0,0 +1,162 @@
1
+ # assert-plus
2
+
3
+ This library is a super small wrapper over node's assert module that has two
4
+ things: (1) the ability to disable assertions with the environment variable
5
+ NODE\_NDEBUG, and (2) some API wrappers for argument testing. Like
6
+ `assert.string(myArg, 'myArg')`. As a simple example, most of my code looks
7
+ like this:
8
+
9
+ ```javascript
10
+ var assert = require('assert-plus');
11
+
12
+ function fooAccount(options, callback) {
13
+ assert.object(options, 'options');
14
+ assert.number(options.id, 'options.id');
15
+ assert.bool(options.isManager, 'options.isManager');
16
+ assert.string(options.name, 'options.name');
17
+ assert.arrayOfString(options.email, 'options.email');
18
+ assert.func(callback, 'callback');
19
+
20
+ // Do stuff
21
+ callback(null, {});
22
+ }
23
+ ```
24
+
25
+ # API
26
+
27
+ All methods that *aren't* part of node's core assert API are simply assumed to
28
+ take an argument, and then a string 'name' that's not a message; `AssertionError`
29
+ will be thrown if the assertion fails with a message like:
30
+
31
+ AssertionError: foo (string) is required
32
+ at test (/home/mark/work/foo/foo.js:3:9)
33
+ at Object.<anonymous> (/home/mark/work/foo/foo.js:15:1)
34
+ at Module._compile (module.js:446:26)
35
+ at Object..js (module.js:464:10)
36
+ at Module.load (module.js:353:31)
37
+ at Function._load (module.js:311:12)
38
+ at Array.0 (module.js:484:10)
39
+ at EventEmitter._tickCallback (node.js:190:38)
40
+
41
+ from:
42
+
43
+ ```javascript
44
+ function test(foo) {
45
+ assert.string(foo, 'foo');
46
+ }
47
+ ```
48
+
49
+ There you go. You can check that arrays are of a homogeneous type with `Arrayof$Type`:
50
+
51
+ ```javascript
52
+ function test(foo) {
53
+ assert.arrayOfString(foo, 'foo');
54
+ }
55
+ ```
56
+
57
+ You can assert IFF an argument is not `undefined` (i.e., an optional arg):
58
+
59
+ ```javascript
60
+ assert.optionalString(foo, 'foo');
61
+ ```
62
+
63
+ Lastly, you can opt-out of assertion checking altogether by setting the
64
+ environment variable `NODE_NDEBUG=1`. This is pseudo-useful if you have
65
+ lots of assertions, and don't want to pay `typeof ()` taxes to v8 in
66
+ production. Be advised: The standard functions re-exported from `assert` are
67
+ also disabled in assert-plus if NDEBUG is specified. Using them directly from
68
+ the `assert` module avoids this behavior.
69
+
70
+ The complete list of APIs is:
71
+
72
+ * assert.array
73
+ * assert.bool
74
+ * assert.buffer
75
+ * assert.func
76
+ * assert.number
77
+ * assert.finite
78
+ * assert.object
79
+ * assert.string
80
+ * assert.stream
81
+ * assert.date
82
+ * assert.regexp
83
+ * assert.uuid
84
+ * assert.arrayOfArray
85
+ * assert.arrayOfBool
86
+ * assert.arrayOfBuffer
87
+ * assert.arrayOfFunc
88
+ * assert.arrayOfNumber
89
+ * assert.arrayOfFinite
90
+ * assert.arrayOfObject
91
+ * assert.arrayOfString
92
+ * assert.arrayOfStream
93
+ * assert.arrayOfDate
94
+ * assert.arrayOfRegexp
95
+ * assert.arrayOfUuid
96
+ * assert.optionalArray
97
+ * assert.optionalBool
98
+ * assert.optionalBuffer
99
+ * assert.optionalFunc
100
+ * assert.optionalNumber
101
+ * assert.optionalFinite
102
+ * assert.optionalObject
103
+ * assert.optionalString
104
+ * assert.optionalStream
105
+ * assert.optionalDate
106
+ * assert.optionalRegexp
107
+ * assert.optionalUuid
108
+ * assert.optionalArrayOfArray
109
+ * assert.optionalArrayOfBool
110
+ * assert.optionalArrayOfBuffer
111
+ * assert.optionalArrayOfFunc
112
+ * assert.optionalArrayOfNumber
113
+ * assert.optionalArrayOfFinite
114
+ * assert.optionalArrayOfObject
115
+ * assert.optionalArrayOfString
116
+ * assert.optionalArrayOfStream
117
+ * assert.optionalArrayOfDate
118
+ * assert.optionalArrayOfRegexp
119
+ * assert.optionalArrayOfUuid
120
+ * assert.AssertionError
121
+ * assert.fail
122
+ * assert.ok
123
+ * assert.equal
124
+ * assert.notEqual
125
+ * assert.deepEqual
126
+ * assert.notDeepEqual
127
+ * assert.strictEqual
128
+ * assert.notStrictEqual
129
+ * assert.throws
130
+ * assert.doesNotThrow
131
+ * assert.ifError
132
+
133
+ # Installation
134
+
135
+ npm install assert-plus
136
+
137
+ ## License
138
+
139
+ The MIT License (MIT)
140
+ Copyright (c) 2012 Mark Cavage
141
+
142
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
143
+ this software and associated documentation files (the "Software"), to deal in
144
+ the Software without restriction, including without limitation the rights to
145
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
146
+ the Software, and to permit persons to whom the Software is furnished to do so,
147
+ subject to the following conditions:
148
+
149
+ The above copyright notice and this permission notice shall be included in all
150
+ copies or substantial portions of the Software.
151
+
152
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
153
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
154
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
155
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
156
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
157
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
158
+ SOFTWARE.
159
+
160
+ ## Bugs
161
+
162
+ See <https://github.com/mcavage/node-assert-plus/issues>.