es6-crawler-detect 3.1.3 → 3.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.
Files changed (355) hide show
  1. package/.babelrc +18 -17
  2. package/.eslintignore +6 -0
  3. package/.eslintrc.json +30 -0
  4. package/.github/FUNDING.yml +12 -12
  5. package/.github/ISSUE_TEMPLATE/bug_report.md +41 -38
  6. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -20
  7. package/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +29 -0
  8. package/.prettierrc.json +5 -0
  9. package/CODE_OF_CONDUCT.md +76 -76
  10. package/LICENSE +21 -21
  11. package/README.md +103 -93
  12. package/dist/main.bundle.js +1 -1
  13. package/example/node/dist/crawler.min.js +1 -1
  14. package/example/node/index.html +21 -21
  15. package/example/node/node_modules/.bin/mime +15 -0
  16. package/example/node/node_modules/.bin/mime.cmd +7 -0
  17. package/example/node/node_modules/.yarn-integrity +67 -0
  18. package/example/node/node_modules/accepts/HISTORY.md +236 -0
  19. package/example/node/node_modules/accepts/LICENSE +23 -0
  20. package/example/node/node_modules/accepts/README.md +142 -0
  21. package/example/node/node_modules/accepts/index.js +238 -0
  22. package/example/node/node_modules/accepts/package.json +47 -0
  23. package/example/node/node_modules/array-flatten/LICENSE +21 -0
  24. package/example/node/node_modules/array-flatten/README.md +43 -0
  25. package/example/node/node_modules/array-flatten/array-flatten.js +64 -0
  26. package/example/node/node_modules/array-flatten/package.json +39 -0
  27. package/example/node/node_modules/body-parser/HISTORY.md +624 -0
  28. package/example/node/node_modules/body-parser/LICENSE +23 -0
  29. package/example/node/node_modules/body-parser/README.md +456 -0
  30. package/example/node/node_modules/body-parser/index.js +157 -0
  31. package/example/node/node_modules/body-parser/lib/read.js +181 -0
  32. package/example/node/node_modules/body-parser/lib/types/json.js +230 -0
  33. package/example/node/node_modules/body-parser/lib/types/raw.js +101 -0
  34. package/example/node/node_modules/body-parser/lib/types/text.js +121 -0
  35. package/example/node/node_modules/body-parser/lib/types/urlencoded.js +284 -0
  36. package/example/node/node_modules/body-parser/package.json +52 -0
  37. package/example/node/node_modules/bytes/History.md +92 -0
  38. package/example/node/node_modules/bytes/LICENSE +23 -0
  39. package/example/node/node_modules/bytes/Readme.md +152 -0
  40. package/example/node/node_modules/bytes/index.js +166 -0
  41. package/example/node/node_modules/bytes/package.json +42 -0
  42. package/example/node/node_modules/content-disposition/HISTORY.md +60 -0
  43. package/example/node/node_modules/content-disposition/LICENSE +22 -0
  44. package/example/node/node_modules/content-disposition/README.md +142 -0
  45. package/example/node/node_modules/content-disposition/index.js +458 -0
  46. package/example/node/node_modules/content-disposition/package.json +44 -0
  47. package/example/node/node_modules/content-type/HISTORY.md +24 -0
  48. package/example/node/node_modules/content-type/LICENSE +22 -0
  49. package/example/node/node_modules/content-type/README.md +92 -0
  50. package/example/node/node_modules/content-type/index.js +222 -0
  51. package/example/node/node_modules/content-type/package.json +40 -0
  52. package/example/node/node_modules/cookie/HISTORY.md +128 -0
  53. package/example/node/node_modules/cookie/LICENSE +24 -0
  54. package/example/node/node_modules/cookie/README.md +257 -0
  55. package/example/node/node_modules/cookie/index.js +202 -0
  56. package/example/node/node_modules/cookie/package.json +40 -0
  57. package/example/node/node_modules/cookie-signature/History.md +38 -0
  58. package/example/node/node_modules/cookie-signature/Readme.md +42 -0
  59. package/example/node/node_modules/cookie-signature/index.js +51 -0
  60. package/example/node/node_modules/cookie-signature/package.json +18 -0
  61. package/example/node/node_modules/debug/.coveralls.yml +1 -0
  62. package/example/node/node_modules/debug/.eslintrc +11 -0
  63. package/example/node/node_modules/debug/.travis.yml +14 -0
  64. package/example/node/node_modules/debug/CHANGELOG.md +362 -0
  65. package/example/node/node_modules/debug/LICENSE +19 -0
  66. package/example/node/node_modules/debug/Makefile +50 -0
  67. package/example/node/node_modules/debug/README.md +312 -0
  68. package/example/node/node_modules/debug/component.json +19 -0
  69. package/example/node/node_modules/debug/karma.conf.js +70 -0
  70. package/example/node/node_modules/debug/node.js +1 -0
  71. package/example/node/node_modules/debug/package.json +49 -0
  72. package/example/node/node_modules/debug/src/browser.js +185 -0
  73. package/example/node/node_modules/debug/src/debug.js +202 -0
  74. package/example/node/node_modules/debug/src/index.js +10 -0
  75. package/example/node/node_modules/debug/src/inspector-log.js +15 -0
  76. package/example/node/node_modules/debug/src/node.js +248 -0
  77. package/example/node/node_modules/depd/History.md +96 -0
  78. package/example/node/node_modules/depd/LICENSE +22 -0
  79. package/example/node/node_modules/depd/Readme.md +280 -0
  80. package/example/node/node_modules/depd/index.js +522 -0
  81. package/example/node/node_modules/depd/lib/browser/index.js +77 -0
  82. package/example/node/node_modules/depd/lib/compat/callsite-tostring.js +103 -0
  83. package/example/node/node_modules/depd/lib/compat/event-listener-count.js +22 -0
  84. package/example/node/node_modules/depd/lib/compat/index.js +79 -0
  85. package/example/node/node_modules/depd/package.json +41 -0
  86. package/example/node/node_modules/destroy/LICENSE +22 -0
  87. package/example/node/node_modules/destroy/README.md +60 -0
  88. package/example/node/node_modules/destroy/index.js +75 -0
  89. package/example/node/node_modules/destroy/package.json +37 -0
  90. package/example/node/node_modules/ee-first/LICENSE +22 -0
  91. package/example/node/node_modules/ee-first/README.md +80 -0
  92. package/example/node/node_modules/ee-first/index.js +95 -0
  93. package/example/node/node_modules/ee-first/package.json +29 -0
  94. package/example/node/node_modules/encodeurl/HISTORY.md +14 -0
  95. package/example/node/node_modules/encodeurl/LICENSE +22 -0
  96. package/example/node/node_modules/encodeurl/README.md +128 -0
  97. package/example/node/node_modules/encodeurl/index.js +60 -0
  98. package/example/node/node_modules/encodeurl/package.json +40 -0
  99. package/example/node/node_modules/escape-html/LICENSE +24 -0
  100. package/example/node/node_modules/escape-html/Readme.md +43 -0
  101. package/example/node/node_modules/escape-html/index.js +78 -0
  102. package/example/node/node_modules/escape-html/package.json +24 -0
  103. package/example/node/node_modules/etag/HISTORY.md +83 -0
  104. package/example/node/node_modules/etag/LICENSE +22 -0
  105. package/example/node/node_modules/etag/README.md +159 -0
  106. package/example/node/node_modules/etag/index.js +131 -0
  107. package/example/node/node_modules/etag/package.json +47 -0
  108. package/example/node/node_modules/express/History.md +3510 -0
  109. package/example/node/node_modules/express/LICENSE +24 -0
  110. package/example/node/node_modules/express/Readme.md +158 -0
  111. package/example/node/node_modules/express/index.js +11 -0
  112. package/example/node/node_modules/express/lib/application.js +644 -0
  113. package/example/node/node_modules/express/lib/express.js +116 -0
  114. package/example/node/node_modules/express/lib/middleware/init.js +43 -0
  115. package/example/node/node_modules/express/lib/middleware/query.js +47 -0
  116. package/example/node/node_modules/express/lib/request.js +525 -0
  117. package/example/node/node_modules/express/lib/response.js +1147 -0
  118. package/example/node/node_modules/express/lib/router/index.js +668 -0
  119. package/example/node/node_modules/express/lib/router/layer.js +181 -0
  120. package/example/node/node_modules/express/lib/router/route.js +216 -0
  121. package/example/node/node_modules/express/lib/utils.js +302 -0
  122. package/example/node/node_modules/express/lib/view.js +182 -0
  123. package/example/node/node_modules/express/package.json +99 -0
  124. package/example/node/node_modules/finalhandler/HISTORY.md +187 -0
  125. package/example/node/node_modules/finalhandler/LICENSE +22 -0
  126. package/example/node/node_modules/finalhandler/README.md +148 -0
  127. package/example/node/node_modules/finalhandler/index.js +331 -0
  128. package/example/node/node_modules/finalhandler/package.json +45 -0
  129. package/example/node/node_modules/forwarded/HISTORY.md +21 -0
  130. package/example/node/node_modules/forwarded/LICENSE +22 -0
  131. package/example/node/node_modules/forwarded/README.md +57 -0
  132. package/example/node/node_modules/forwarded/index.js +90 -0
  133. package/example/node/node_modules/forwarded/package.json +45 -0
  134. package/example/node/node_modules/fresh/HISTORY.md +70 -0
  135. package/example/node/node_modules/fresh/LICENSE +23 -0
  136. package/example/node/node_modules/fresh/README.md +119 -0
  137. package/example/node/node_modules/fresh/index.js +137 -0
  138. package/example/node/node_modules/fresh/package.json +46 -0
  139. package/example/node/node_modules/http-errors/HISTORY.md +165 -0
  140. package/example/node/node_modules/http-errors/LICENSE +23 -0
  141. package/example/node/node_modules/http-errors/README.md +169 -0
  142. package/example/node/node_modules/http-errors/index.js +299 -0
  143. package/example/node/node_modules/http-errors/package.json +49 -0
  144. package/example/node/node_modules/iconv-lite/Changelog.md +162 -0
  145. package/example/node/node_modules/iconv-lite/LICENSE +21 -0
  146. package/example/node/node_modules/iconv-lite/README.md +156 -0
  147. package/example/node/node_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
  148. package/example/node/node_modules/iconv-lite/encodings/dbcs-data.js +176 -0
  149. package/example/node/node_modules/iconv-lite/encodings/index.js +22 -0
  150. package/example/node/node_modules/iconv-lite/encodings/internal.js +188 -0
  151. package/example/node/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  152. package/example/node/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  153. package/example/node/node_modules/iconv-lite/encodings/sbcs-data.js +174 -0
  154. package/example/node/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  155. package/example/node/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  156. package/example/node/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  157. package/example/node/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  158. package/example/node/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  159. package/example/node/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  160. package/example/node/node_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
  161. package/example/node/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  162. package/example/node/node_modules/iconv-lite/encodings/utf16.js +177 -0
  163. package/example/node/node_modules/iconv-lite/encodings/utf7.js +290 -0
  164. package/example/node/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  165. package/example/node/node_modules/iconv-lite/lib/extend-node.js +217 -0
  166. package/example/node/node_modules/iconv-lite/lib/index.d.ts +24 -0
  167. package/example/node/node_modules/iconv-lite/lib/index.js +153 -0
  168. package/example/node/node_modules/iconv-lite/lib/streams.js +121 -0
  169. package/example/node/node_modules/iconv-lite/package.json +46 -0
  170. package/example/node/node_modules/inherits/LICENSE +16 -0
  171. package/example/node/node_modules/inherits/README.md +42 -0
  172. package/example/node/node_modules/inherits/inherits.js +9 -0
  173. package/example/node/node_modules/inherits/inherits_browser.js +27 -0
  174. package/example/node/node_modules/inherits/package.json +29 -0
  175. package/example/node/node_modules/ipaddr.js/LICENSE +19 -0
  176. package/example/node/node_modules/ipaddr.js/README.md +233 -0
  177. package/example/node/node_modules/ipaddr.js/ipaddr.min.js +1 -0
  178. package/example/node/node_modules/ipaddr.js/lib/ipaddr.js +673 -0
  179. package/example/node/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +68 -0
  180. package/example/node/node_modules/ipaddr.js/package.json +35 -0
  181. package/example/node/node_modules/media-typer/HISTORY.md +22 -0
  182. package/example/node/node_modules/media-typer/LICENSE +22 -0
  183. package/example/node/node_modules/media-typer/README.md +81 -0
  184. package/example/node/node_modules/media-typer/index.js +270 -0
  185. package/example/node/node_modules/media-typer/package.json +26 -0
  186. package/example/node/node_modules/merge-descriptors/HISTORY.md +21 -0
  187. package/example/node/node_modules/merge-descriptors/LICENSE +23 -0
  188. package/example/node/node_modules/merge-descriptors/README.md +48 -0
  189. package/example/node/node_modules/merge-descriptors/index.js +60 -0
  190. package/example/node/node_modules/merge-descriptors/package.json +32 -0
  191. package/example/node/node_modules/methods/HISTORY.md +29 -0
  192. package/example/node/node_modules/methods/LICENSE +24 -0
  193. package/example/node/node_modules/methods/README.md +51 -0
  194. package/example/node/node_modules/methods/index.js +69 -0
  195. package/example/node/node_modules/methods/package.json +36 -0
  196. package/example/node/node_modules/mime/CHANGELOG.md +164 -0
  197. package/example/node/node_modules/mime/LICENSE +21 -0
  198. package/example/node/node_modules/mime/README.md +90 -0
  199. package/example/node/node_modules/mime/cli.js +8 -0
  200. package/example/node/node_modules/mime/mime.js +108 -0
  201. package/example/node/node_modules/mime/package.json +44 -0
  202. package/example/node/node_modules/mime/src/build.js +53 -0
  203. package/example/node/node_modules/mime/src/test.js +60 -0
  204. package/example/node/node_modules/mime/types.json +1 -0
  205. package/example/node/node_modules/mime-db/HISTORY.md +499 -0
  206. package/example/node/node_modules/mime-db/LICENSE +22 -0
  207. package/example/node/node_modules/mime-db/README.md +100 -0
  208. package/example/node/node_modules/mime-db/db.json +8471 -0
  209. package/example/node/node_modules/mime-db/index.js +11 -0
  210. package/example/node/node_modules/mime-db/package.json +59 -0
  211. package/example/node/node_modules/mime-types/HISTORY.md +388 -0
  212. package/example/node/node_modules/mime-types/LICENSE +23 -0
  213. package/example/node/node_modules/mime-types/README.md +113 -0
  214. package/example/node/node_modules/mime-types/index.js +188 -0
  215. package/example/node/node_modules/mime-types/package.json +44 -0
  216. package/example/node/node_modules/ms/index.js +152 -0
  217. package/example/node/node_modules/ms/license.md +21 -0
  218. package/example/node/node_modules/ms/package.json +37 -0
  219. package/example/node/node_modules/ms/readme.md +51 -0
  220. package/example/node/node_modules/negotiator/HISTORY.md +103 -0
  221. package/example/node/node_modules/negotiator/LICENSE +24 -0
  222. package/example/node/node_modules/negotiator/README.md +203 -0
  223. package/example/node/node_modules/negotiator/index.js +124 -0
  224. package/example/node/node_modules/negotiator/lib/charset.js +169 -0
  225. package/example/node/node_modules/negotiator/lib/encoding.js +184 -0
  226. package/example/node/node_modules/negotiator/lib/language.js +179 -0
  227. package/example/node/node_modules/negotiator/lib/mediaType.js +294 -0
  228. package/example/node/node_modules/negotiator/package.json +42 -0
  229. package/example/node/node_modules/on-finished/HISTORY.md +88 -0
  230. package/example/node/node_modules/on-finished/LICENSE +23 -0
  231. package/example/node/node_modules/on-finished/README.md +154 -0
  232. package/example/node/node_modules/on-finished/index.js +196 -0
  233. package/example/node/node_modules/on-finished/package.json +31 -0
  234. package/example/node/node_modules/parseurl/HISTORY.md +58 -0
  235. package/example/node/node_modules/parseurl/LICENSE +24 -0
  236. package/example/node/node_modules/parseurl/README.md +133 -0
  237. package/example/node/node_modules/parseurl/index.js +158 -0
  238. package/example/node/node_modules/parseurl/package.json +40 -0
  239. package/example/node/node_modules/path-to-regexp/History.md +36 -0
  240. package/example/node/node_modules/path-to-regexp/LICENSE +21 -0
  241. package/example/node/node_modules/path-to-regexp/Readme.md +35 -0
  242. package/example/node/node_modules/path-to-regexp/index.js +129 -0
  243. package/example/node/node_modules/path-to-regexp/package.json +30 -0
  244. package/example/node/node_modules/proxy-addr/HISTORY.md +161 -0
  245. package/example/node/node_modules/proxy-addr/LICENSE +22 -0
  246. package/example/node/node_modules/proxy-addr/README.md +139 -0
  247. package/example/node/node_modules/proxy-addr/index.js +327 -0
  248. package/example/node/node_modules/proxy-addr/package.json +47 -0
  249. package/example/node/node_modules/qs/.editorconfig +39 -0
  250. package/example/node/node_modules/qs/.eslintignore +2 -0
  251. package/example/node/node_modules/qs/.eslintrc +35 -0
  252. package/example/node/node_modules/qs/.github/FUNDING.yml +12 -0
  253. package/example/node/node_modules/qs/.nycrc +13 -0
  254. package/example/node/node_modules/qs/CHANGELOG.md +359 -0
  255. package/example/node/node_modules/qs/LICENSE.md +29 -0
  256. package/example/node/node_modules/qs/README.md +604 -0
  257. package/example/node/node_modules/qs/dist/qs.js +832 -0
  258. package/example/node/node_modules/qs/lib/formats.js +23 -0
  259. package/example/node/node_modules/qs/lib/index.js +11 -0
  260. package/example/node/node_modules/qs/lib/parse.js +257 -0
  261. package/example/node/node_modules/qs/lib/stringify.js +278 -0
  262. package/example/node/node_modules/qs/lib/utils.js +251 -0
  263. package/example/node/node_modules/qs/package.json +69 -0
  264. package/example/node/node_modules/qs/test/parse.js +772 -0
  265. package/example/node/node_modules/qs/test/stringify.js +793 -0
  266. package/example/node/node_modules/qs/test/utils.js +136 -0
  267. package/example/node/node_modules/range-parser/HISTORY.md +56 -0
  268. package/example/node/node_modules/range-parser/LICENSE +23 -0
  269. package/example/node/node_modules/range-parser/README.md +84 -0
  270. package/example/node/node_modules/range-parser/index.js +162 -0
  271. package/example/node/node_modules/range-parser/package.json +44 -0
  272. package/example/node/node_modules/raw-body/HISTORY.md +284 -0
  273. package/example/node/node_modules/raw-body/LICENSE +22 -0
  274. package/example/node/node_modules/raw-body/README.md +217 -0
  275. package/example/node/node_modules/raw-body/index.d.ts +87 -0
  276. package/example/node/node_modules/raw-body/index.js +286 -0
  277. package/example/node/node_modules/raw-body/package.json +48 -0
  278. package/example/node/node_modules/safe-buffer/LICENSE +21 -0
  279. package/example/node/node_modules/safe-buffer/README.md +584 -0
  280. package/example/node/node_modules/safe-buffer/index.d.ts +187 -0
  281. package/example/node/node_modules/safe-buffer/index.js +65 -0
  282. package/example/node/node_modules/safe-buffer/package.json +51 -0
  283. package/example/node/node_modules/safer-buffer/LICENSE +21 -0
  284. package/example/node/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  285. package/example/node/node_modules/safer-buffer/Readme.md +156 -0
  286. package/example/node/node_modules/safer-buffer/dangerous.js +58 -0
  287. package/example/node/node_modules/safer-buffer/package.json +34 -0
  288. package/example/node/node_modules/safer-buffer/safer.js +77 -0
  289. package/example/node/node_modules/safer-buffer/tests.js +406 -0
  290. package/example/node/node_modules/send/HISTORY.md +506 -0
  291. package/example/node/node_modules/send/LICENSE +23 -0
  292. package/example/node/node_modules/send/README.md +327 -0
  293. package/example/node/node_modules/send/index.js +1133 -0
  294. package/example/node/node_modules/send/node_modules/.bin/mime +15 -0
  295. package/example/node/node_modules/send/node_modules/.bin/mime.cmd +7 -0
  296. package/example/node/node_modules/send/node_modules/ms/index.js +162 -0
  297. package/example/node/node_modules/send/node_modules/ms/license.md +21 -0
  298. package/example/node/node_modules/send/node_modules/ms/package.json +38 -0
  299. package/example/node/node_modules/send/node_modules/ms/readme.md +59 -0
  300. package/example/node/node_modules/send/package.json +61 -0
  301. package/example/node/node_modules/serve-static/HISTORY.md +459 -0
  302. package/example/node/node_modules/serve-static/LICENSE +25 -0
  303. package/example/node/node_modules/serve-static/README.md +257 -0
  304. package/example/node/node_modules/serve-static/index.js +210 -0
  305. package/example/node/node_modules/serve-static/package.json +42 -0
  306. package/example/node/node_modules/setprototypeof/LICENSE +13 -0
  307. package/example/node/node_modules/setprototypeof/README.md +31 -0
  308. package/example/node/node_modules/setprototypeof/index.d.ts +2 -0
  309. package/example/node/node_modules/setprototypeof/index.js +17 -0
  310. package/example/node/node_modules/setprototypeof/package.json +38 -0
  311. package/example/node/node_modules/setprototypeof/test/index.js +24 -0
  312. package/example/node/node_modules/statuses/HISTORY.md +65 -0
  313. package/example/node/node_modules/statuses/LICENSE +23 -0
  314. package/example/node/node_modules/statuses/README.md +127 -0
  315. package/example/node/node_modules/statuses/codes.json +66 -0
  316. package/example/node/node_modules/statuses/index.js +113 -0
  317. package/example/node/node_modules/statuses/package.json +48 -0
  318. package/example/node/node_modules/toidentifier/HISTORY.md +9 -0
  319. package/example/node/node_modules/toidentifier/LICENSE +21 -0
  320. package/example/node/node_modules/toidentifier/README.md +61 -0
  321. package/example/node/node_modules/toidentifier/index.js +32 -0
  322. package/example/node/node_modules/toidentifier/package.json +38 -0
  323. package/example/node/node_modules/type-is/HISTORY.md +259 -0
  324. package/example/node/node_modules/type-is/LICENSE +23 -0
  325. package/example/node/node_modules/type-is/README.md +170 -0
  326. package/example/node/node_modules/type-is/index.js +266 -0
  327. package/example/node/node_modules/type-is/package.json +45 -0
  328. package/example/node/node_modules/unpipe/HISTORY.md +4 -0
  329. package/example/node/node_modules/unpipe/LICENSE +22 -0
  330. package/example/node/node_modules/unpipe/README.md +43 -0
  331. package/example/node/node_modules/unpipe/index.js +69 -0
  332. package/example/node/node_modules/unpipe/package.json +27 -0
  333. package/example/node/node_modules/utils-merge/LICENSE +20 -0
  334. package/example/node/node_modules/utils-merge/README.md +34 -0
  335. package/example/node/node_modules/utils-merge/index.js +23 -0
  336. package/example/node/node_modules/utils-merge/package.json +40 -0
  337. package/example/node/node_modules/vary/HISTORY.md +39 -0
  338. package/example/node/node_modules/vary/LICENSE +22 -0
  339. package/example/node/node_modules/vary/README.md +101 -0
  340. package/example/node/node_modules/vary/index.js +149 -0
  341. package/example/node/node_modules/vary/package.json +43 -0
  342. package/example/node/package.json +11 -0
  343. package/example/node/server.js +21 -15
  344. package/example/node/yarn.lock +352 -0
  345. package/package.json +59 -47
  346. package/src/index.js +15 -10
  347. package/src/lib/crawler/crawlers.js +1398 -11
  348. package/src/lib/crawler/exclusions.js +55 -8
  349. package/src/lib/crawler/headers.js +18 -9
  350. package/src/lib/crawler/provider.js +6 -8
  351. package/src/lib/crawler.js +101 -90
  352. package/test/lib/crawler.test.js +43 -26
  353. package/webpack.common.js +7 -7
  354. package/webpack.dev.js +4 -4
  355. package/webpack.prod.js +8 -9
@@ -0,0 +1,359 @@
1
+ ## **6.9.6**
2
+ - [Fix] restore `dist` dir; mistakenly removed in d4f6c32
3
+
4
+ ## **6.9.5**
5
+ - [Fix] `stringify`: do not encode parens for RFC1738
6
+ - [Fix] `stringify`: fix arrayFormat comma with empty array/objects (#350)
7
+ - [Refactor] `format`: remove `util.assign` call
8
+ - [meta] add "Allow Edits" workflow; update rebase workflow
9
+ - [actions] switch Automatic Rebase workflow to `pull_request_target` event
10
+ - [Tests] `stringify`: add tests for #378
11
+ - [Tests] migrate tests to Github Actions
12
+ - [Tests] run `nyc` on all tests; use `tape` runner
13
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `browserify`, `mkdirp`, `object-inspect`, `tape`; add `aud`
14
+
15
+ ## **6.9.4**
16
+ - [Fix] `stringify`: when `arrayFormat` is `comma`, respect `serializeDate` (#364)
17
+ - [Refactor] `stringify`: reduce branching (part of #350)
18
+ - [Refactor] move `maybeMap` to `utils`
19
+ - [Dev Deps] update `browserify`, `tape`
20
+
21
+ ## **6.9.3**
22
+ - [Fix] proper comma parsing of URL-encoded commas (#361)
23
+ - [Fix] parses comma delimited array while having percent-encoded comma treated as normal text (#336)
24
+
25
+ ## **6.9.2**
26
+ - [Fix] `parse`: Fix parsing array from object with `comma` true (#359)
27
+ - [Fix] `parse`: throw a TypeError instead of an Error for bad charset (#349)
28
+ - [meta] ignore eclint transitive audit warning
29
+ - [meta] fix indentation in package.json
30
+ - [meta] add tidelift marketing copy
31
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `object-inspect`, `has-symbols`, `tape`, `mkdirp`, `iconv-lite`
32
+ - [actions] add automatic rebasing / merge commit blocking
33
+
34
+ ## **6.9.1**
35
+ - [Fix] `parse`: with comma true, handle field that holds an array of arrays (#335)
36
+ - [Fix] `parse`: with comma true, do not split non-string values (#334)
37
+ - [meta] add `funding` field
38
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`
39
+ - [Tests] use shared travis-ci config
40
+
41
+ ## **6.9.0**
42
+ - [New] `parse`/`stringify`: Pass extra key/value argument to `decoder` (#333)
43
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `evalmd`
44
+ - [Tests] `parse`: add passing `arrayFormat` tests
45
+ - [Tests] add `posttest` using `npx aud` to run `npm audit` without a lockfile
46
+ - [Tests] up to `node` `v12.10`, `v11.15`, `v10.16`, `v8.16`
47
+ - [Tests] `Buffer.from` in node v5.0-v5.9 and v4.0-v4.4 requires a TypedArray
48
+
49
+ ## **6.8.2**
50
+ - [Fix] proper comma parsing of URL-encoded commas (#361)
51
+ - [Fix] parses comma delimited array while having percent-encoded comma treated as normal text (#336)
52
+
53
+ ## **6.8.1**
54
+ - [Fix] `parse`: Fix parsing array from object with `comma` true (#359)
55
+ - [Fix] `parse`: throw a TypeError instead of an Error for bad charset (#349)
56
+ - [Fix] `parse`: with comma true, handle field that holds an array of arrays (#335)
57
+ - [fix] `parse`: with comma true, do not split non-string values (#334)
58
+ - [meta] add tidelift marketing copy
59
+ - [meta] add `funding` field
60
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape`, `safe-publish-latest`, `evalmd`, `has-symbols`, `iconv-lite`, `mkdirp`, `object-inspect`
61
+ - [Tests] `parse`: add passing `arrayFormat` tests
62
+ - [Tests] use shared travis-ci configs
63
+ - [Tests] `Buffer.from` in node v5.0-v5.9 and v4.0-v4.4 requires a TypedArray
64
+ - [actions] add automatic rebasing / merge commit blocking
65
+
66
+ ## **6.8.0**
67
+ - [New] add `depth=false` to preserve the original key; [Fix] `depth=0` should preserve the original key (#326)
68
+ - [New] [Fix] stringify symbols and bigints
69
+ - [Fix] ensure node 0.12 can stringify Symbols
70
+ - [Fix] fix for an impossible situation: when the formatter is called with a non-string value
71
+ - [Refactor] `formats`: tiny bit of cleanup.
72
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `browserify`, `safe-publish-latest`, `iconv-lite`, `tape`
73
+ - [Tests] add tests for `depth=0` and `depth=false` behavior, both current and intuitive/intended (#326)
74
+ - [Tests] use `eclint` instead of `editorconfig-tools`
75
+ - [docs] readme: add security note
76
+ - [meta] add github sponsorship
77
+ - [meta] add FUNDING.yml
78
+ - [meta] Clean up license text so it’s properly detected as BSD-3-Clause
79
+
80
+ ## **6.7.2**
81
+ - [Fix] proper comma parsing of URL-encoded commas (#361)
82
+ - [Fix] parses comma delimited array while having percent-encoded comma treated as normal text (#336)
83
+
84
+ ## **6.7.1**
85
+ - [Fix] `parse`: Fix parsing array from object with `comma` true (#359)
86
+ - [Fix] `parse`: with comma true, handle field that holds an array of arrays (#335)
87
+ - [fix] `parse`: with comma true, do not split non-string values (#334)
88
+ - [Fix] `parse`: throw a TypeError instead of an Error for bad charset (#349)
89
+ - [Fix] fix for an impossible situation: when the formatter is called with a non-string value
90
+ - [Refactor] `formats`: tiny bit of cleanup.
91
+ - readme: add security note
92
+ - [meta] add tidelift marketing copy
93
+ - [meta] add `funding` field
94
+ - [meta] add FUNDING.yml
95
+ - [meta] Clean up license text so it’s properly detected as BSD-3-Clause
96
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape`, `safe-publish-latest`, `evalmd`, `iconv-lite`, `mkdirp`, `object-inspect`, `browserify`
97
+ - [Tests] `parse`: add passing `arrayFormat` tests
98
+ - [Tests] use shared travis-ci configs
99
+ - [Tests] `Buffer.from` in node v5.0-v5.9 and v4.0-v4.4 requires a TypedArray
100
+ - [Tests] add tests for `depth=0` and `depth=false` behavior, both current and intuitive/intended
101
+ - [Tests] use `eclint` instead of `editorconfig-tools`
102
+ - [actions] add automatic rebasing / merge commit blocking
103
+
104
+ ## **6.7.0**
105
+ - [New] `stringify`/`parse`: add `comma` as an `arrayFormat` option (#276, #219)
106
+ - [Fix] correctly parse nested arrays (#212)
107
+ - [Fix] `utils.merge`: avoid a crash with a null target and a truthy non-array source, also with an array source
108
+ - [Robustness] `stringify`: cache `Object.prototype.hasOwnProperty`
109
+ - [Refactor] `utils`: `isBuffer`: small tweak; add tests
110
+ - [Refactor] use cached `Array.isArray`
111
+ - [Refactor] `parse`/`stringify`: make a function to normalize the options
112
+ - [Refactor] `utils`: reduce observable [[Get]]s
113
+ - [Refactor] `stringify`/`utils`: cache `Array.isArray`
114
+ - [Tests] always use `String(x)` over `x.toString()`
115
+ - [Tests] fix Buffer tests to work in node < 4.5 and node < 5.10
116
+ - [Tests] temporarily allow coverage to fail
117
+
118
+ ## **6.6.0**
119
+ - [New] Add support for iso-8859-1, utf8 "sentinel" and numeric entities (#268)
120
+ - [New] move two-value combine to a `utils` function (#189)
121
+ - [Fix] `stringify`: fix a crash with `strictNullHandling` and a custom `filter`/`serializeDate` (#279)
122
+ - [Fix] when `parseArrays` is false, properly handle keys ending in `[]` (#260)
123
+ - [Fix] `stringify`: do not crash in an obscure combo of `interpretNumericEntities`, a bad custom `decoder`, & `iso-8859-1`
124
+ - [Fix] `utils`: `merge`: fix crash when `source` is a truthy primitive & no options are provided
125
+ - [refactor] `stringify`: Avoid arr = arr.concat(...), push to the existing instance (#269)
126
+ - [Refactor] `parse`: only need to reassign the var once
127
+ - [Refactor] `parse`/`stringify`: clean up `charset` options checking; fix defaults
128
+ - [Refactor] add missing defaults
129
+ - [Refactor] `parse`: one less `concat` call
130
+ - [Refactor] `utils`: `compactQueue`: make it explicitly side-effecting
131
+ - [Dev Deps] update `browserify`, `eslint`, `@ljharb/eslint-config`, `iconv-lite`, `safe-publish-latest`, `tape`
132
+ - [Tests] up to `node` `v10.10`, `v9.11`, `v8.12`, `v6.14`, `v4.9`; pin included builds to LTS
133
+
134
+ ## **6.5.2**
135
+ - [Fix] use `safer-buffer` instead of `Buffer` constructor
136
+ - [Refactor] utils: `module.exports` one thing, instead of mutating `exports` (#230)
137
+ - [Dev Deps] update `browserify`, `eslint`, `iconv-lite`, `safer-buffer`, `tape`, `browserify`
138
+
139
+ ## **6.5.1**
140
+ - [Fix] Fix parsing & compacting very deep objects (#224)
141
+ - [Refactor] name utils functions
142
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape`
143
+ - [Tests] up to `node` `v8.4`; use `nvm install-latest-npm` so newer npm doesn’t break older node
144
+ - [Tests] Use precise dist for Node.js 0.6 runtime (#225)
145
+ - [Tests] make 0.6 required, now that it’s passing
146
+ - [Tests] on `node` `v8.2`; fix npm on node 0.6
147
+
148
+ ## **6.5.0**
149
+ - [New] add `utils.assign`
150
+ - [New] pass default encoder/decoder to custom encoder/decoder functions (#206)
151
+ - [New] `parse`/`stringify`: add `ignoreQueryPrefix`/`addQueryPrefix` options, respectively (#213)
152
+ - [Fix] Handle stringifying empty objects with addQueryPrefix (#217)
153
+ - [Fix] do not mutate `options` argument (#207)
154
+ - [Refactor] `parse`: cache index to reuse in else statement (#182)
155
+ - [Docs] add various badges to readme (#208)
156
+ - [Dev Deps] update `eslint`, `browserify`, `iconv-lite`, `tape`
157
+ - [Tests] up to `node` `v8.1`, `v7.10`, `v6.11`; npm v4.6 breaks on node < v1; npm v5+ breaks on node < v4
158
+ - [Tests] add `editorconfig-tools`
159
+
160
+ ## **6.4.0**
161
+ - [New] `qs.stringify`: add `encodeValuesOnly` option
162
+ - [Fix] follow `allowPrototypes` option during merge (#201, #201)
163
+ - [Fix] support keys starting with brackets (#202, #200)
164
+ - [Fix] chmod a-x
165
+ - [Dev Deps] update `eslint`
166
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
167
+ - [eslint] reduce warnings
168
+
169
+ ## **6.3.2**
170
+ - [Fix] follow `allowPrototypes` option during merge (#201, #200)
171
+ - [Dev Deps] update `eslint`
172
+ - [Fix] chmod a-x
173
+ - [Fix] support keys starting with brackets (#202, #200)
174
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
175
+
176
+ ## **6.3.1**
177
+ - [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties (thanks, @snyk!)
178
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `browserify`, `iconv-lite`, `qs-iconv`, `tape`
179
+ - [Tests] on all node minors; improve test matrix
180
+ - [Docs] document stringify option `allowDots` (#195)
181
+ - [Docs] add empty object and array values example (#195)
182
+ - [Docs] Fix minor inconsistency/typo (#192)
183
+ - [Docs] document stringify option `sort` (#191)
184
+ - [Refactor] `stringify`: throw faster with an invalid encoder
185
+ - [Refactor] remove unnecessary escapes (#184)
186
+ - Remove contributing.md, since `qs` is no longer part of `hapi` (#183)
187
+
188
+ ## **6.3.0**
189
+ - [New] Add support for RFC 1738 (#174, #173)
190
+ - [New] `stringify`: Add `serializeDate` option to customize Date serialization (#159)
191
+ - [Fix] ensure `utils.merge` handles merging two arrays
192
+ - [Refactor] only constructors should be capitalized
193
+ - [Refactor] capitalized var names are for constructors only
194
+ - [Refactor] avoid using a sparse array
195
+ - [Robustness] `formats`: cache `String#replace`
196
+ - [Dev Deps] update `browserify`, `eslint`, `@ljharb/eslint-config`; add `safe-publish-latest`
197
+ - [Tests] up to `node` `v6.8`, `v4.6`; improve test matrix
198
+ - [Tests] flesh out arrayLimit/arrayFormat tests (#107)
199
+ - [Tests] skip Object.create tests when null objects are not available
200
+ - [Tests] Turn on eslint for test files (#175)
201
+
202
+ ## **6.2.3**
203
+ - [Fix] follow `allowPrototypes` option during merge (#201, #200)
204
+ - [Fix] chmod a-x
205
+ - [Fix] support keys starting with brackets (#202, #200)
206
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
207
+
208
+ ## **6.2.2**
209
+ - [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties
210
+
211
+ ## **6.2.1**
212
+ - [Fix] ensure `key[]=x&key[]&key[]=y` results in 3, not 2, values
213
+ - [Refactor] Be explicit and use `Object.prototype.hasOwnProperty.call`
214
+ - [Tests] remove `parallelshell` since it does not reliably report failures
215
+ - [Tests] up to `node` `v6.3`, `v5.12`
216
+ - [Dev Deps] update `tape`, `eslint`, `@ljharb/eslint-config`, `qs-iconv`
217
+
218
+ ## [**6.2.0**](https://github.com/ljharb/qs/issues?milestone=36&state=closed)
219
+ - [New] pass Buffers to the encoder/decoder directly (#161)
220
+ - [New] add "encoder" and "decoder" options, for custom param encoding/decoding (#160)
221
+ - [Fix] fix compacting of nested sparse arrays (#150)
222
+
223
+ ## **6.1.2
224
+ - [Fix] follow `allowPrototypes` option during merge (#201, #200)
225
+ - [Fix] chmod a-x
226
+ - [Fix] support keys starting with brackets (#202, #200)
227
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
228
+
229
+ ## **6.1.1**
230
+ - [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties
231
+
232
+ ## [**6.1.0**](https://github.com/ljharb/qs/issues?milestone=35&state=closed)
233
+ - [New] allowDots option for `stringify` (#151)
234
+ - [Fix] "sort" option should work at a depth of 3 or more (#151)
235
+ - [Fix] Restore `dist` directory; will be removed in v7 (#148)
236
+
237
+ ## **6.0.4**
238
+ - [Fix] follow `allowPrototypes` option during merge (#201, #200)
239
+ - [Fix] chmod a-x
240
+ - [Fix] support keys starting with brackets (#202, #200)
241
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
242
+
243
+ ## **6.0.3**
244
+ - [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties
245
+ - [Fix] Restore `dist` directory; will be removed in v7 (#148)
246
+
247
+ ## [**6.0.2**](https://github.com/ljharb/qs/issues?milestone=33&state=closed)
248
+ - Revert ES6 requirement and restore support for node down to v0.8.
249
+
250
+ ## [**6.0.1**](https://github.com/ljharb/qs/issues?milestone=32&state=closed)
251
+ - [**#127**](https://github.com/ljharb/qs/pull/127) Fix engines definition in package.json
252
+
253
+ ## [**6.0.0**](https://github.com/ljharb/qs/issues?milestone=31&state=closed)
254
+ - [**#124**](https://github.com/ljharb/qs/issues/124) Use ES6 and drop support for node < v4
255
+
256
+ ## **5.2.1**
257
+ - [Fix] ensure `key[]=x&key[]&key[]=y` results in 3, not 2, values
258
+
259
+ ## [**5.2.0**](https://github.com/ljharb/qs/issues?milestone=30&state=closed)
260
+ - [**#64**](https://github.com/ljharb/qs/issues/64) Add option to sort object keys in the query string
261
+
262
+ ## [**5.1.0**](https://github.com/ljharb/qs/issues?milestone=29&state=closed)
263
+ - [**#117**](https://github.com/ljharb/qs/issues/117) make URI encoding stringified results optional
264
+ - [**#106**](https://github.com/ljharb/qs/issues/106) Add flag `skipNulls` to optionally skip null values in stringify
265
+
266
+ ## [**5.0.0**](https://github.com/ljharb/qs/issues?milestone=28&state=closed)
267
+ - [**#114**](https://github.com/ljharb/qs/issues/114) default allowDots to false
268
+ - [**#100**](https://github.com/ljharb/qs/issues/100) include dist to npm
269
+
270
+ ## [**4.0.0**](https://github.com/ljharb/qs/issues?milestone=26&state=closed)
271
+ - [**#98**](https://github.com/ljharb/qs/issues/98) make returning plain objects and allowing prototype overwriting properties optional
272
+
273
+ ## [**3.1.0**](https://github.com/ljharb/qs/issues?milestone=24&state=closed)
274
+ - [**#89**](https://github.com/ljharb/qs/issues/89) Add option to disable "Transform dot notation to bracket notation"
275
+
276
+ ## [**3.0.0**](https://github.com/ljharb/qs/issues?milestone=23&state=closed)
277
+ - [**#80**](https://github.com/ljharb/qs/issues/80) qs.parse silently drops properties
278
+ - [**#77**](https://github.com/ljharb/qs/issues/77) Perf boost
279
+ - [**#60**](https://github.com/ljharb/qs/issues/60) Add explicit option to disable array parsing
280
+ - [**#74**](https://github.com/ljharb/qs/issues/74) Bad parse when turning array into object
281
+ - [**#81**](https://github.com/ljharb/qs/issues/81) Add a `filter` option
282
+ - [**#68**](https://github.com/ljharb/qs/issues/68) Fixed issue with recursion and passing strings into objects.
283
+ - [**#66**](https://github.com/ljharb/qs/issues/66) Add mixed array and object dot notation support Closes: #47
284
+ - [**#76**](https://github.com/ljharb/qs/issues/76) RFC 3986
285
+ - [**#85**](https://github.com/ljharb/qs/issues/85) No equal sign
286
+ - [**#84**](https://github.com/ljharb/qs/issues/84) update license attribute
287
+
288
+ ## [**2.4.1**](https://github.com/ljharb/qs/issues?milestone=20&state=closed)
289
+ - [**#73**](https://github.com/ljharb/qs/issues/73) Property 'hasOwnProperty' of object #<Object> is not a function
290
+
291
+ ## [**2.4.0**](https://github.com/ljharb/qs/issues?milestone=19&state=closed)
292
+ - [**#70**](https://github.com/ljharb/qs/issues/70) Add arrayFormat option
293
+
294
+ ## [**2.3.3**](https://github.com/ljharb/qs/issues?milestone=18&state=closed)
295
+ - [**#59**](https://github.com/ljharb/qs/issues/59) make sure array indexes are >= 0, closes #57
296
+ - [**#58**](https://github.com/ljharb/qs/issues/58) make qs usable for browser loader
297
+
298
+ ## [**2.3.2**](https://github.com/ljharb/qs/issues?milestone=17&state=closed)
299
+ - [**#55**](https://github.com/ljharb/qs/issues/55) allow merging a string into an object
300
+
301
+ ## [**2.3.1**](https://github.com/ljharb/qs/issues?milestone=16&state=closed)
302
+ - [**#52**](https://github.com/ljharb/qs/issues/52) Return "undefined" and "false" instead of throwing "TypeError".
303
+
304
+ ## [**2.3.0**](https://github.com/ljharb/qs/issues?milestone=15&state=closed)
305
+ - [**#50**](https://github.com/ljharb/qs/issues/50) add option to omit array indices, closes #46
306
+
307
+ ## [**2.2.5**](https://github.com/ljharb/qs/issues?milestone=14&state=closed)
308
+ - [**#39**](https://github.com/ljharb/qs/issues/39) Is there an alternative to Buffer.isBuffer?
309
+ - [**#49**](https://github.com/ljharb/qs/issues/49) refactor utils.merge, fixes #45
310
+ - [**#41**](https://github.com/ljharb/qs/issues/41) avoid browserifying Buffer, for #39
311
+
312
+ ## [**2.2.4**](https://github.com/ljharb/qs/issues?milestone=13&state=closed)
313
+ - [**#38**](https://github.com/ljharb/qs/issues/38) how to handle object keys beginning with a number
314
+
315
+ ## [**2.2.3**](https://github.com/ljharb/qs/issues?milestone=12&state=closed)
316
+ - [**#37**](https://github.com/ljharb/qs/issues/37) parser discards first empty value in array
317
+ - [**#36**](https://github.com/ljharb/qs/issues/36) Update to lab 4.x
318
+
319
+ ## [**2.2.2**](https://github.com/ljharb/qs/issues?milestone=11&state=closed)
320
+ - [**#33**](https://github.com/ljharb/qs/issues/33) Error when plain object in a value
321
+ - [**#34**](https://github.com/ljharb/qs/issues/34) use Object.prototype.hasOwnProperty.call instead of obj.hasOwnProperty
322
+ - [**#24**](https://github.com/ljharb/qs/issues/24) Changelog? Semver?
323
+
324
+ ## [**2.2.1**](https://github.com/ljharb/qs/issues?milestone=10&state=closed)
325
+ - [**#32**](https://github.com/ljharb/qs/issues/32) account for circular references properly, closes #31
326
+ - [**#31**](https://github.com/ljharb/qs/issues/31) qs.parse stackoverflow on circular objects
327
+
328
+ ## [**2.2.0**](https://github.com/ljharb/qs/issues?milestone=9&state=closed)
329
+ - [**#26**](https://github.com/ljharb/qs/issues/26) Don't use Buffer global if it's not present
330
+ - [**#30**](https://github.com/ljharb/qs/issues/30) Bug when merging non-object values into arrays
331
+ - [**#29**](https://github.com/ljharb/qs/issues/29) Don't call Utils.clone at the top of Utils.merge
332
+ - [**#23**](https://github.com/ljharb/qs/issues/23) Ability to not limit parameters?
333
+
334
+ ## [**2.1.0**](https://github.com/ljharb/qs/issues?milestone=8&state=closed)
335
+ - [**#22**](https://github.com/ljharb/qs/issues/22) Enable using a RegExp as delimiter
336
+
337
+ ## [**2.0.0**](https://github.com/ljharb/qs/issues?milestone=7&state=closed)
338
+ - [**#18**](https://github.com/ljharb/qs/issues/18) Why is there arrayLimit?
339
+ - [**#20**](https://github.com/ljharb/qs/issues/20) Configurable parametersLimit
340
+ - [**#21**](https://github.com/ljharb/qs/issues/21) make all limits optional, for #18, for #20
341
+
342
+ ## [**1.2.2**](https://github.com/ljharb/qs/issues?milestone=6&state=closed)
343
+ - [**#19**](https://github.com/ljharb/qs/issues/19) Don't overwrite null values
344
+
345
+ ## [**1.2.1**](https://github.com/ljharb/qs/issues?milestone=5&state=closed)
346
+ - [**#16**](https://github.com/ljharb/qs/issues/16) ignore non-string delimiters
347
+ - [**#15**](https://github.com/ljharb/qs/issues/15) Close code block
348
+
349
+ ## [**1.2.0**](https://github.com/ljharb/qs/issues?milestone=4&state=closed)
350
+ - [**#12**](https://github.com/ljharb/qs/issues/12) Add optional delim argument
351
+ - [**#13**](https://github.com/ljharb/qs/issues/13) fix #11: flattened keys in array are now correctly parsed
352
+
353
+ ## [**1.1.0**](https://github.com/ljharb/qs/issues?milestone=3&state=closed)
354
+ - [**#7**](https://github.com/ljharb/qs/issues/7) Empty values of a POST array disappear after being submitted
355
+ - [**#9**](https://github.com/ljharb/qs/issues/9) Should not omit equals signs (=) when value is null
356
+ - [**#6**](https://github.com/ljharb/qs/issues/6) Minor grammar fix in README
357
+
358
+ ## [**1.0.2**](https://github.com/ljharb/qs/issues?milestone=2&state=closed)
359
+ - [**#5**](https://github.com/ljharb/qs/issues/5) array holes incorrectly copied into object on large index
@@ -0,0 +1,29 @@
1
+ BSD 3-Clause License
2
+
3
+ Copyright (c) 2014, Nathan LaFreniere and other [contributors](https://github.com/ljharb/qs/graphs/contributors)
4
+ All rights reserved.
5
+
6
+ Redistribution and use in source and binary forms, with or without
7
+ modification, are permitted provided that the following conditions are met:
8
+
9
+ 1. Redistributions of source code must retain the above copyright notice, this
10
+ list of conditions and the following disclaimer.
11
+
12
+ 2. Redistributions in binary form must reproduce the above copyright notice,
13
+ this list of conditions and the following disclaimer in the documentation
14
+ and/or other materials provided with the distribution.
15
+
16
+ 3. Neither the name of the copyright holder nor the names of its
17
+ contributors may be used to endorse or promote products derived from
18
+ this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.