expressed-core 1.0.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 (561) hide show
  1. package/README-es.md +42 -0
  2. package/README-es.md.backup +44 -0
  3. package/README.md +41 -0
  4. package/README.md.backup +43 -0
  5. package/hooked/LICENSE +204 -0
  6. package/hooked/README.es.md +238 -0
  7. package/hooked/README.md +238 -0
  8. package/hooked/advanced-example.js +240 -0
  9. package/hooked/express-hooked.js +206 -0
  10. package/hooked/hooks.js +584 -0
  11. package/hooked/package.json +30 -0
  12. package/index.js +25 -0
  13. package/package.json +36 -0
  14. package/queued/LICENSE +201 -0
  15. package/queued/QueueSystem.js +451 -0
  16. package/queued/README.es.md +335 -0
  17. package/queued/README.md +335 -0
  18. package/queued/express-example.js +143 -0
  19. package/queued/express-integration.js +115 -0
  20. package/queued/package.json +33 -0
  21. package/router/ExpressRouter.js +247 -0
  22. package/router/ExpressRouterIntegration.js +129 -0
  23. package/router/LICENSE +201 -0
  24. package/router/README.es.md +142 -0
  25. package/router/README.md +142 -0
  26. package/router/RouteDirectoryLoader.js +299 -0
  27. package/router/RouteLoader.js +245 -0
  28. package/router/RouteMatcher.js +361 -0
  29. package/router/node_modules/.package-lock.json +876 -0
  30. package/router/node_modules/accepts/HISTORY.md +243 -0
  31. package/router/node_modules/accepts/LICENSE +23 -0
  32. package/router/node_modules/accepts/README.md +140 -0
  33. package/router/node_modules/accepts/index.js +238 -0
  34. package/router/node_modules/accepts/package.json +47 -0
  35. package/router/node_modules/array-flatten/LICENSE +21 -0
  36. package/router/node_modules/array-flatten/README.md +43 -0
  37. package/router/node_modules/array-flatten/array-flatten.js +64 -0
  38. package/router/node_modules/array-flatten/package.json +39 -0
  39. package/router/node_modules/body-parser/HISTORY.md +680 -0
  40. package/router/node_modules/body-parser/LICENSE +23 -0
  41. package/router/node_modules/body-parser/README.md +476 -0
  42. package/router/node_modules/body-parser/index.js +156 -0
  43. package/router/node_modules/body-parser/lib/read.js +205 -0
  44. package/router/node_modules/body-parser/lib/types/json.js +247 -0
  45. package/router/node_modules/body-parser/lib/types/raw.js +101 -0
  46. package/router/node_modules/body-parser/lib/types/text.js +121 -0
  47. package/router/node_modules/body-parser/lib/types/urlencoded.js +300 -0
  48. package/router/node_modules/body-parser/package.json +55 -0
  49. package/router/node_modules/bytes/History.md +97 -0
  50. package/router/node_modules/bytes/LICENSE +23 -0
  51. package/router/node_modules/bytes/Readme.md +152 -0
  52. package/router/node_modules/bytes/index.js +170 -0
  53. package/router/node_modules/bytes/package.json +42 -0
  54. package/router/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +12 -0
  55. package/router/node_modules/call-bind-apply-helpers/CHANGELOG.md +30 -0
  56. package/router/node_modules/call-bind-apply-helpers/LICENSE +21 -0
  57. package/router/node_modules/call-bind-apply-helpers/README.md +62 -0
  58. package/router/node_modules/call-bind-apply-helpers/actualApply.d.ts +1 -0
  59. package/router/node_modules/call-bind-apply-helpers/actualApply.js +10 -0
  60. package/router/node_modules/call-bind-apply-helpers/applyBind.d.ts +19 -0
  61. package/router/node_modules/call-bind-apply-helpers/applyBind.js +10 -0
  62. package/router/node_modules/call-bind-apply-helpers/functionApply.d.ts +1 -0
  63. package/router/node_modules/call-bind-apply-helpers/functionApply.js +4 -0
  64. package/router/node_modules/call-bind-apply-helpers/functionCall.d.ts +1 -0
  65. package/router/node_modules/call-bind-apply-helpers/functionCall.js +4 -0
  66. package/router/node_modules/call-bind-apply-helpers/index.d.ts +64 -0
  67. package/router/node_modules/call-bind-apply-helpers/index.js +15 -0
  68. package/router/node_modules/call-bind-apply-helpers/package.json +85 -0
  69. package/router/node_modules/call-bind-apply-helpers/reflectApply.d.ts +3 -0
  70. package/router/node_modules/call-bind-apply-helpers/reflectApply.js +4 -0
  71. package/router/node_modules/call-bind-apply-helpers/tsconfig.json +9 -0
  72. package/router/node_modules/call-bound/.github/FUNDING.yml +12 -0
  73. package/router/node_modules/call-bound/CHANGELOG.md +42 -0
  74. package/router/node_modules/call-bound/LICENSE +21 -0
  75. package/router/node_modules/call-bound/README.md +53 -0
  76. package/router/node_modules/call-bound/index.d.ts +94 -0
  77. package/router/node_modules/call-bound/index.js +19 -0
  78. package/router/node_modules/call-bound/package.json +99 -0
  79. package/router/node_modules/call-bound/tsconfig.json +10 -0
  80. package/router/node_modules/content-disposition/HISTORY.md +60 -0
  81. package/router/node_modules/content-disposition/LICENSE +22 -0
  82. package/router/node_modules/content-disposition/README.md +142 -0
  83. package/router/node_modules/content-disposition/index.js +458 -0
  84. package/router/node_modules/content-disposition/package.json +44 -0
  85. package/router/node_modules/content-type/HISTORY.md +29 -0
  86. package/router/node_modules/content-type/LICENSE +22 -0
  87. package/router/node_modules/content-type/README.md +94 -0
  88. package/router/node_modules/content-type/index.js +225 -0
  89. package/router/node_modules/content-type/package.json +42 -0
  90. package/router/node_modules/cookie/LICENSE +24 -0
  91. package/router/node_modules/cookie/README.md +317 -0
  92. package/router/node_modules/cookie/SECURITY.md +25 -0
  93. package/router/node_modules/cookie/index.js +335 -0
  94. package/router/node_modules/cookie/package.json +44 -0
  95. package/router/node_modules/cookie-signature/History.md +42 -0
  96. package/router/node_modules/cookie-signature/Readme.md +42 -0
  97. package/router/node_modules/cookie-signature/index.js +51 -0
  98. package/router/node_modules/cookie-signature/package.json +18 -0
  99. package/router/node_modules/debug/.coveralls.yml +1 -0
  100. package/router/node_modules/debug/CHANGELOG.md +362 -0
  101. package/router/node_modules/debug/LICENSE +19 -0
  102. package/router/node_modules/debug/Makefile +50 -0
  103. package/router/node_modules/debug/README.md +312 -0
  104. package/router/node_modules/debug/component.json +19 -0
  105. package/router/node_modules/debug/karma.conf.js +70 -0
  106. package/router/node_modules/debug/node.js +1 -0
  107. package/router/node_modules/debug/package.json +49 -0
  108. package/router/node_modules/debug/src/browser.js +185 -0
  109. package/router/node_modules/debug/src/debug.js +202 -0
  110. package/router/node_modules/debug/src/index.js +10 -0
  111. package/router/node_modules/debug/src/inspector-log.js +15 -0
  112. package/router/node_modules/debug/src/node.js +248 -0
  113. package/router/node_modules/depd/History.md +103 -0
  114. package/router/node_modules/depd/LICENSE +22 -0
  115. package/router/node_modules/depd/Readme.md +280 -0
  116. package/router/node_modules/depd/index.js +538 -0
  117. package/router/node_modules/depd/lib/browser/index.js +77 -0
  118. package/router/node_modules/depd/package.json +45 -0
  119. package/router/node_modules/destroy/LICENSE +23 -0
  120. package/router/node_modules/destroy/README.md +63 -0
  121. package/router/node_modules/destroy/index.js +209 -0
  122. package/router/node_modules/destroy/package.json +48 -0
  123. package/router/node_modules/dunder-proto/.github/FUNDING.yml +12 -0
  124. package/router/node_modules/dunder-proto/CHANGELOG.md +24 -0
  125. package/router/node_modules/dunder-proto/LICENSE +21 -0
  126. package/router/node_modules/dunder-proto/README.md +54 -0
  127. package/router/node_modules/dunder-proto/get.d.ts +5 -0
  128. package/router/node_modules/dunder-proto/get.js +30 -0
  129. package/router/node_modules/dunder-proto/package.json +76 -0
  130. package/router/node_modules/dunder-proto/set.d.ts +5 -0
  131. package/router/node_modules/dunder-proto/set.js +35 -0
  132. package/router/node_modules/dunder-proto/tsconfig.json +9 -0
  133. package/router/node_modules/ee-first/LICENSE +22 -0
  134. package/router/node_modules/ee-first/README.md +80 -0
  135. package/router/node_modules/ee-first/index.js +95 -0
  136. package/router/node_modules/ee-first/package.json +29 -0
  137. package/router/node_modules/encodeurl/LICENSE +22 -0
  138. package/router/node_modules/encodeurl/README.md +109 -0
  139. package/router/node_modules/encodeurl/index.js +60 -0
  140. package/router/node_modules/encodeurl/package.json +40 -0
  141. package/router/node_modules/es-define-property/.github/FUNDING.yml +12 -0
  142. package/router/node_modules/es-define-property/CHANGELOG.md +29 -0
  143. package/router/node_modules/es-define-property/LICENSE +21 -0
  144. package/router/node_modules/es-define-property/README.md +49 -0
  145. package/router/node_modules/es-define-property/index.d.ts +3 -0
  146. package/router/node_modules/es-define-property/index.js +14 -0
  147. package/router/node_modules/es-define-property/package.json +81 -0
  148. package/router/node_modules/es-define-property/tsconfig.json +10 -0
  149. package/router/node_modules/es-errors/.github/FUNDING.yml +12 -0
  150. package/router/node_modules/es-errors/CHANGELOG.md +40 -0
  151. package/router/node_modules/es-errors/LICENSE +21 -0
  152. package/router/node_modules/es-errors/README.md +55 -0
  153. package/router/node_modules/es-errors/eval.d.ts +3 -0
  154. package/router/node_modules/es-errors/eval.js +4 -0
  155. package/router/node_modules/es-errors/index.d.ts +3 -0
  156. package/router/node_modules/es-errors/index.js +4 -0
  157. package/router/node_modules/es-errors/package.json +80 -0
  158. package/router/node_modules/es-errors/range.d.ts +3 -0
  159. package/router/node_modules/es-errors/range.js +4 -0
  160. package/router/node_modules/es-errors/ref.d.ts +3 -0
  161. package/router/node_modules/es-errors/ref.js +4 -0
  162. package/router/node_modules/es-errors/syntax.d.ts +3 -0
  163. package/router/node_modules/es-errors/syntax.js +4 -0
  164. package/router/node_modules/es-errors/tsconfig.json +49 -0
  165. package/router/node_modules/es-errors/type.d.ts +3 -0
  166. package/router/node_modules/es-errors/type.js +4 -0
  167. package/router/node_modules/es-errors/uri.d.ts +3 -0
  168. package/router/node_modules/es-errors/uri.js +4 -0
  169. package/router/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  170. package/router/node_modules/es-object-atoms/CHANGELOG.md +37 -0
  171. package/router/node_modules/es-object-atoms/LICENSE +21 -0
  172. package/router/node_modules/es-object-atoms/README.md +63 -0
  173. package/router/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
  174. package/router/node_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
  175. package/router/node_modules/es-object-atoms/ToObject.d.ts +7 -0
  176. package/router/node_modules/es-object-atoms/ToObject.js +10 -0
  177. package/router/node_modules/es-object-atoms/index.d.ts +3 -0
  178. package/router/node_modules/es-object-atoms/index.js +4 -0
  179. package/router/node_modules/es-object-atoms/isObject.d.ts +3 -0
  180. package/router/node_modules/es-object-atoms/isObject.js +6 -0
  181. package/router/node_modules/es-object-atoms/package.json +80 -0
  182. package/router/node_modules/es-object-atoms/tsconfig.json +6 -0
  183. package/router/node_modules/escape-html/LICENSE +24 -0
  184. package/router/node_modules/escape-html/Readme.md +43 -0
  185. package/router/node_modules/escape-html/index.js +78 -0
  186. package/router/node_modules/escape-html/package.json +24 -0
  187. package/router/node_modules/etag/HISTORY.md +83 -0
  188. package/router/node_modules/etag/LICENSE +22 -0
  189. package/router/node_modules/etag/README.md +159 -0
  190. package/router/node_modules/etag/index.js +131 -0
  191. package/router/node_modules/etag/package.json +47 -0
  192. package/router/node_modules/express/History.md +3667 -0
  193. package/router/node_modules/express/LICENSE +24 -0
  194. package/router/node_modules/express/Readme.md +260 -0
  195. package/router/node_modules/express/index.js +11 -0
  196. package/router/node_modules/express/lib/application.js +661 -0
  197. package/router/node_modules/express/lib/express.js +116 -0
  198. package/router/node_modules/express/lib/middleware/init.js +43 -0
  199. package/router/node_modules/express/lib/middleware/query.js +47 -0
  200. package/router/node_modules/express/lib/request.js +525 -0
  201. package/router/node_modules/express/lib/response.js +1179 -0
  202. package/router/node_modules/express/lib/router/index.js +673 -0
  203. package/router/node_modules/express/lib/router/layer.js +181 -0
  204. package/router/node_modules/express/lib/router/route.js +230 -0
  205. package/router/node_modules/express/lib/utils.js +303 -0
  206. package/router/node_modules/express/lib/view.js +182 -0
  207. package/router/node_modules/express/package.json +102 -0
  208. package/router/node_modules/express-hooked/LICENSE +204 -0
  209. package/router/node_modules/express-hooked/README.es.md +123 -0
  210. package/router/node_modules/express-hooked/README.md +123 -0
  211. package/router/node_modules/express-hooked/express-hooked.js +206 -0
  212. package/router/node_modules/express-hooked/hooks.js +584 -0
  213. package/router/node_modules/express-hooked/package.json +30 -0
  214. package/router/node_modules/finalhandler/HISTORY.md +216 -0
  215. package/router/node_modules/finalhandler/LICENSE +22 -0
  216. package/router/node_modules/finalhandler/README.md +147 -0
  217. package/router/node_modules/finalhandler/SECURITY.md +25 -0
  218. package/router/node_modules/finalhandler/index.js +341 -0
  219. package/router/node_modules/finalhandler/package.json +47 -0
  220. package/router/node_modules/forwarded/HISTORY.md +21 -0
  221. package/router/node_modules/forwarded/LICENSE +22 -0
  222. package/router/node_modules/forwarded/README.md +57 -0
  223. package/router/node_modules/forwarded/index.js +90 -0
  224. package/router/node_modules/forwarded/package.json +45 -0
  225. package/router/node_modules/fresh/HISTORY.md +70 -0
  226. package/router/node_modules/fresh/LICENSE +23 -0
  227. package/router/node_modules/fresh/README.md +119 -0
  228. package/router/node_modules/fresh/index.js +137 -0
  229. package/router/node_modules/fresh/package.json +46 -0
  230. package/router/node_modules/function-bind/.github/FUNDING.yml +12 -0
  231. package/router/node_modules/function-bind/.github/SECURITY.md +3 -0
  232. package/router/node_modules/function-bind/CHANGELOG.md +136 -0
  233. package/router/node_modules/function-bind/LICENSE +20 -0
  234. package/router/node_modules/function-bind/README.md +46 -0
  235. package/router/node_modules/function-bind/implementation.js +84 -0
  236. package/router/node_modules/function-bind/index.js +5 -0
  237. package/router/node_modules/function-bind/package.json +87 -0
  238. package/router/node_modules/get-intrinsic/.github/FUNDING.yml +12 -0
  239. package/router/node_modules/get-intrinsic/CHANGELOG.md +186 -0
  240. package/router/node_modules/get-intrinsic/LICENSE +21 -0
  241. package/router/node_modules/get-intrinsic/README.md +71 -0
  242. package/router/node_modules/get-intrinsic/index.js +378 -0
  243. package/router/node_modules/get-intrinsic/package.json +97 -0
  244. package/router/node_modules/get-proto/.github/FUNDING.yml +12 -0
  245. package/router/node_modules/get-proto/CHANGELOG.md +21 -0
  246. package/router/node_modules/get-proto/LICENSE +21 -0
  247. package/router/node_modules/get-proto/Object.getPrototypeOf.d.ts +5 -0
  248. package/router/node_modules/get-proto/Object.getPrototypeOf.js +6 -0
  249. package/router/node_modules/get-proto/README.md +50 -0
  250. package/router/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +3 -0
  251. package/router/node_modules/get-proto/Reflect.getPrototypeOf.js +4 -0
  252. package/router/node_modules/get-proto/index.d.ts +5 -0
  253. package/router/node_modules/get-proto/index.js +27 -0
  254. package/router/node_modules/get-proto/package.json +81 -0
  255. package/router/node_modules/get-proto/tsconfig.json +9 -0
  256. package/router/node_modules/gopd/.github/FUNDING.yml +12 -0
  257. package/router/node_modules/gopd/CHANGELOG.md +45 -0
  258. package/router/node_modules/gopd/LICENSE +21 -0
  259. package/router/node_modules/gopd/README.md +40 -0
  260. package/router/node_modules/gopd/gOPD.d.ts +1 -0
  261. package/router/node_modules/gopd/gOPD.js +4 -0
  262. package/router/node_modules/gopd/index.d.ts +5 -0
  263. package/router/node_modules/gopd/index.js +15 -0
  264. package/router/node_modules/gopd/package.json +77 -0
  265. package/router/node_modules/gopd/tsconfig.json +9 -0
  266. package/router/node_modules/has-symbols/.github/FUNDING.yml +12 -0
  267. package/router/node_modules/has-symbols/CHANGELOG.md +91 -0
  268. package/router/node_modules/has-symbols/LICENSE +21 -0
  269. package/router/node_modules/has-symbols/README.md +46 -0
  270. package/router/node_modules/has-symbols/index.d.ts +3 -0
  271. package/router/node_modules/has-symbols/index.js +14 -0
  272. package/router/node_modules/has-symbols/package.json +111 -0
  273. package/router/node_modules/has-symbols/shams.d.ts +3 -0
  274. package/router/node_modules/has-symbols/shams.js +45 -0
  275. package/router/node_modules/has-symbols/tsconfig.json +10 -0
  276. package/router/node_modules/hasown/.github/FUNDING.yml +12 -0
  277. package/router/node_modules/hasown/CHANGELOG.md +40 -0
  278. package/router/node_modules/hasown/LICENSE +21 -0
  279. package/router/node_modules/hasown/README.md +40 -0
  280. package/router/node_modules/hasown/index.d.ts +3 -0
  281. package/router/node_modules/hasown/index.js +8 -0
  282. package/router/node_modules/hasown/package.json +92 -0
  283. package/router/node_modules/hasown/tsconfig.json +6 -0
  284. package/router/node_modules/http-errors/HISTORY.md +186 -0
  285. package/router/node_modules/http-errors/LICENSE +23 -0
  286. package/router/node_modules/http-errors/README.md +169 -0
  287. package/router/node_modules/http-errors/index.js +290 -0
  288. package/router/node_modules/http-errors/package.json +54 -0
  289. package/router/node_modules/iconv-lite/Changelog.md +162 -0
  290. package/router/node_modules/iconv-lite/LICENSE +21 -0
  291. package/router/node_modules/iconv-lite/README.md +156 -0
  292. package/router/node_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
  293. package/router/node_modules/iconv-lite/encodings/dbcs-data.js +176 -0
  294. package/router/node_modules/iconv-lite/encodings/index.js +22 -0
  295. package/router/node_modules/iconv-lite/encodings/internal.js +188 -0
  296. package/router/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  297. package/router/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  298. package/router/node_modules/iconv-lite/encodings/sbcs-data.js +174 -0
  299. package/router/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  300. package/router/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  301. package/router/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  302. package/router/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  303. package/router/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  304. package/router/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  305. package/router/node_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
  306. package/router/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  307. package/router/node_modules/iconv-lite/encodings/utf16.js +177 -0
  308. package/router/node_modules/iconv-lite/encodings/utf7.js +290 -0
  309. package/router/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  310. package/router/node_modules/iconv-lite/lib/extend-node.js +217 -0
  311. package/router/node_modules/iconv-lite/lib/index.d.ts +24 -0
  312. package/router/node_modules/iconv-lite/lib/index.js +153 -0
  313. package/router/node_modules/iconv-lite/lib/streams.js +121 -0
  314. package/router/node_modules/iconv-lite/package.json +46 -0
  315. package/router/node_modules/inherits/LICENSE +16 -0
  316. package/router/node_modules/inherits/README.md +42 -0
  317. package/router/node_modules/inherits/inherits.js +9 -0
  318. package/router/node_modules/inherits/inherits_browser.js +27 -0
  319. package/router/node_modules/inherits/package.json +29 -0
  320. package/router/node_modules/ipaddr.js/LICENSE +19 -0
  321. package/router/node_modules/ipaddr.js/README.md +233 -0
  322. package/router/node_modules/ipaddr.js/ipaddr.min.js +1 -0
  323. package/router/node_modules/ipaddr.js/lib/ipaddr.js +673 -0
  324. package/router/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +68 -0
  325. package/router/node_modules/ipaddr.js/package.json +35 -0
  326. package/router/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  327. package/router/node_modules/math-intrinsics/CHANGELOG.md +24 -0
  328. package/router/node_modules/math-intrinsics/LICENSE +21 -0
  329. package/router/node_modules/math-intrinsics/README.md +50 -0
  330. package/router/node_modules/math-intrinsics/abs.d.ts +1 -0
  331. package/router/node_modules/math-intrinsics/abs.js +4 -0
  332. package/router/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
  333. package/router/node_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
  334. package/router/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
  335. package/router/node_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
  336. package/router/node_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
  337. package/router/node_modules/math-intrinsics/constants/maxValue.js +5 -0
  338. package/router/node_modules/math-intrinsics/floor.d.ts +1 -0
  339. package/router/node_modules/math-intrinsics/floor.js +4 -0
  340. package/router/node_modules/math-intrinsics/isFinite.d.ts +3 -0
  341. package/router/node_modules/math-intrinsics/isFinite.js +12 -0
  342. package/router/node_modules/math-intrinsics/isInteger.d.ts +3 -0
  343. package/router/node_modules/math-intrinsics/isInteger.js +16 -0
  344. package/router/node_modules/math-intrinsics/isNaN.d.ts +1 -0
  345. package/router/node_modules/math-intrinsics/isNaN.js +6 -0
  346. package/router/node_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
  347. package/router/node_modules/math-intrinsics/isNegativeZero.js +6 -0
  348. package/router/node_modules/math-intrinsics/max.d.ts +1 -0
  349. package/router/node_modules/math-intrinsics/max.js +4 -0
  350. package/router/node_modules/math-intrinsics/min.d.ts +1 -0
  351. package/router/node_modules/math-intrinsics/min.js +4 -0
  352. package/router/node_modules/math-intrinsics/mod.d.ts +3 -0
  353. package/router/node_modules/math-intrinsics/mod.js +9 -0
  354. package/router/node_modules/math-intrinsics/package.json +86 -0
  355. package/router/node_modules/math-intrinsics/pow.d.ts +1 -0
  356. package/router/node_modules/math-intrinsics/pow.js +4 -0
  357. package/router/node_modules/math-intrinsics/round.d.ts +1 -0
  358. package/router/node_modules/math-intrinsics/round.js +4 -0
  359. package/router/node_modules/math-intrinsics/sign.d.ts +3 -0
  360. package/router/node_modules/math-intrinsics/sign.js +11 -0
  361. package/router/node_modules/math-intrinsics/tsconfig.json +3 -0
  362. package/router/node_modules/media-typer/HISTORY.md +22 -0
  363. package/router/node_modules/media-typer/LICENSE +22 -0
  364. package/router/node_modules/media-typer/README.md +81 -0
  365. package/router/node_modules/media-typer/index.js +270 -0
  366. package/router/node_modules/media-typer/package.json +26 -0
  367. package/router/node_modules/merge-descriptors/HISTORY.md +21 -0
  368. package/router/node_modules/merge-descriptors/LICENSE +23 -0
  369. package/router/node_modules/merge-descriptors/README.md +49 -0
  370. package/router/node_modules/merge-descriptors/index.js +60 -0
  371. package/router/node_modules/merge-descriptors/package.json +39 -0
  372. package/router/node_modules/methods/HISTORY.md +29 -0
  373. package/router/node_modules/methods/LICENSE +24 -0
  374. package/router/node_modules/methods/README.md +51 -0
  375. package/router/node_modules/methods/index.js +69 -0
  376. package/router/node_modules/methods/package.json +36 -0
  377. package/router/node_modules/mime/CHANGELOG.md +164 -0
  378. package/router/node_modules/mime/LICENSE +21 -0
  379. package/router/node_modules/mime/README.md +90 -0
  380. package/router/node_modules/mime/cli.js +8 -0
  381. package/router/node_modules/mime/mime.js +108 -0
  382. package/router/node_modules/mime/package.json +44 -0
  383. package/router/node_modules/mime/src/build.js +53 -0
  384. package/router/node_modules/mime/src/test.js +60 -0
  385. package/router/node_modules/mime/types.json +1 -0
  386. package/router/node_modules/mime-db/HISTORY.md +507 -0
  387. package/router/node_modules/mime-db/LICENSE +23 -0
  388. package/router/node_modules/mime-db/README.md +100 -0
  389. package/router/node_modules/mime-db/db.json +8519 -0
  390. package/router/node_modules/mime-db/index.js +12 -0
  391. package/router/node_modules/mime-db/package.json +60 -0
  392. package/router/node_modules/mime-types/HISTORY.md +397 -0
  393. package/router/node_modules/mime-types/LICENSE +23 -0
  394. package/router/node_modules/mime-types/README.md +113 -0
  395. package/router/node_modules/mime-types/index.js +188 -0
  396. package/router/node_modules/mime-types/package.json +44 -0
  397. package/router/node_modules/ms/index.js +152 -0
  398. package/router/node_modules/ms/license.md +21 -0
  399. package/router/node_modules/ms/package.json +37 -0
  400. package/router/node_modules/ms/readme.md +51 -0
  401. package/router/node_modules/negotiator/HISTORY.md +108 -0
  402. package/router/node_modules/negotiator/LICENSE +24 -0
  403. package/router/node_modules/negotiator/README.md +203 -0
  404. package/router/node_modules/negotiator/index.js +82 -0
  405. package/router/node_modules/negotiator/lib/charset.js +169 -0
  406. package/router/node_modules/negotiator/lib/encoding.js +184 -0
  407. package/router/node_modules/negotiator/lib/language.js +179 -0
  408. package/router/node_modules/negotiator/lib/mediaType.js +294 -0
  409. package/router/node_modules/negotiator/package.json +42 -0
  410. package/router/node_modules/object-inspect/.github/FUNDING.yml +12 -0
  411. package/router/node_modules/object-inspect/CHANGELOG.md +424 -0
  412. package/router/node_modules/object-inspect/LICENSE +21 -0
  413. package/router/node_modules/object-inspect/example/all.js +23 -0
  414. package/router/node_modules/object-inspect/example/circular.js +6 -0
  415. package/router/node_modules/object-inspect/example/fn.js +5 -0
  416. package/router/node_modules/object-inspect/example/inspect.js +10 -0
  417. package/router/node_modules/object-inspect/index.js +544 -0
  418. package/router/node_modules/object-inspect/package-support.json +20 -0
  419. package/router/node_modules/object-inspect/package.json +105 -0
  420. package/router/node_modules/object-inspect/readme.markdown +84 -0
  421. package/router/node_modules/object-inspect/test-core-js.js +26 -0
  422. package/router/node_modules/object-inspect/util.inspect.js +1 -0
  423. package/router/node_modules/on-finished/HISTORY.md +98 -0
  424. package/router/node_modules/on-finished/LICENSE +23 -0
  425. package/router/node_modules/on-finished/README.md +162 -0
  426. package/router/node_modules/on-finished/index.js +234 -0
  427. package/router/node_modules/on-finished/package.json +39 -0
  428. package/router/node_modules/parseurl/HISTORY.md +58 -0
  429. package/router/node_modules/parseurl/LICENSE +24 -0
  430. package/router/node_modules/parseurl/README.md +133 -0
  431. package/router/node_modules/parseurl/index.js +158 -0
  432. package/router/node_modules/parseurl/package.json +40 -0
  433. package/router/node_modules/path-to-regexp/LICENSE +21 -0
  434. package/router/node_modules/path-to-regexp/Readme.md +35 -0
  435. package/router/node_modules/path-to-regexp/index.js +156 -0
  436. package/router/node_modules/path-to-regexp/package.json +30 -0
  437. package/router/node_modules/proxy-addr/HISTORY.md +161 -0
  438. package/router/node_modules/proxy-addr/LICENSE +22 -0
  439. package/router/node_modules/proxy-addr/README.md +139 -0
  440. package/router/node_modules/proxy-addr/index.js +327 -0
  441. package/router/node_modules/proxy-addr/package.json +47 -0
  442. package/router/node_modules/qs/.github/FUNDING.yml +12 -0
  443. package/router/node_modules/qs/.github/SECURITY.md +11 -0
  444. package/router/node_modules/qs/.github/THREAT_MODEL.md +78 -0
  445. package/router/node_modules/qs/CHANGELOG.md +644 -0
  446. package/router/node_modules/qs/LICENSE.md +29 -0
  447. package/router/node_modules/qs/README.md +740 -0
  448. package/router/node_modules/qs/dist/qs.js +141 -0
  449. package/router/node_modules/qs/eslint.config.mjs +56 -0
  450. package/router/node_modules/qs/lib/formats.js +23 -0
  451. package/router/node_modules/qs/lib/index.js +11 -0
  452. package/router/node_modules/qs/lib/parse.js +371 -0
  453. package/router/node_modules/qs/lib/stringify.js +356 -0
  454. package/router/node_modules/qs/lib/utils.js +340 -0
  455. package/router/node_modules/qs/package.json +94 -0
  456. package/router/node_modules/range-parser/HISTORY.md +56 -0
  457. package/router/node_modules/range-parser/LICENSE +23 -0
  458. package/router/node_modules/range-parser/README.md +84 -0
  459. package/router/node_modules/range-parser/index.js +162 -0
  460. package/router/node_modules/range-parser/package.json +44 -0
  461. package/router/node_modules/raw-body/LICENSE +22 -0
  462. package/router/node_modules/raw-body/README.md +223 -0
  463. package/router/node_modules/raw-body/index.d.ts +87 -0
  464. package/router/node_modules/raw-body/index.js +336 -0
  465. package/router/node_modules/raw-body/package.json +47 -0
  466. package/router/node_modules/safe-buffer/LICENSE +21 -0
  467. package/router/node_modules/safe-buffer/README.md +584 -0
  468. package/router/node_modules/safe-buffer/index.d.ts +187 -0
  469. package/router/node_modules/safe-buffer/index.js +65 -0
  470. package/router/node_modules/safe-buffer/package.json +51 -0
  471. package/router/node_modules/safer-buffer/LICENSE +21 -0
  472. package/router/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  473. package/router/node_modules/safer-buffer/Readme.md +156 -0
  474. package/router/node_modules/safer-buffer/dangerous.js +58 -0
  475. package/router/node_modules/safer-buffer/package.json +34 -0
  476. package/router/node_modules/safer-buffer/safer.js +77 -0
  477. package/router/node_modules/safer-buffer/tests.js +406 -0
  478. package/router/node_modules/send/HISTORY.md +538 -0
  479. package/router/node_modules/send/LICENSE +23 -0
  480. package/router/node_modules/send/README.md +327 -0
  481. package/router/node_modules/send/SECURITY.md +24 -0
  482. package/router/node_modules/send/index.js +1142 -0
  483. package/router/node_modules/send/node_modules/ms/index.js +162 -0
  484. package/router/node_modules/send/node_modules/ms/license.md +21 -0
  485. package/router/node_modules/send/node_modules/ms/package.json +38 -0
  486. package/router/node_modules/send/node_modules/ms/readme.md +59 -0
  487. package/router/node_modules/send/package.json +62 -0
  488. package/router/node_modules/serve-static/HISTORY.md +493 -0
  489. package/router/node_modules/serve-static/LICENSE +25 -0
  490. package/router/node_modules/serve-static/README.md +257 -0
  491. package/router/node_modules/serve-static/index.js +209 -0
  492. package/router/node_modules/serve-static/package.json +42 -0
  493. package/router/node_modules/setprototypeof/LICENSE +13 -0
  494. package/router/node_modules/setprototypeof/README.md +31 -0
  495. package/router/node_modules/setprototypeof/index.d.ts +2 -0
  496. package/router/node_modules/setprototypeof/index.js +17 -0
  497. package/router/node_modules/setprototypeof/package.json +38 -0
  498. package/router/node_modules/side-channel/.github/FUNDING.yml +12 -0
  499. package/router/node_modules/side-channel/CHANGELOG.md +110 -0
  500. package/router/node_modules/side-channel/LICENSE +21 -0
  501. package/router/node_modules/side-channel/README.md +61 -0
  502. package/router/node_modules/side-channel/index.d.ts +14 -0
  503. package/router/node_modules/side-channel/index.js +43 -0
  504. package/router/node_modules/side-channel/package.json +85 -0
  505. package/router/node_modules/side-channel/tsconfig.json +9 -0
  506. package/router/node_modules/side-channel-list/.github/FUNDING.yml +12 -0
  507. package/router/node_modules/side-channel-list/CHANGELOG.md +15 -0
  508. package/router/node_modules/side-channel-list/LICENSE +21 -0
  509. package/router/node_modules/side-channel-list/README.md +62 -0
  510. package/router/node_modules/side-channel-list/index.d.ts +13 -0
  511. package/router/node_modules/side-channel-list/index.js +113 -0
  512. package/router/node_modules/side-channel-list/list.d.ts +14 -0
  513. package/router/node_modules/side-channel-list/package.json +77 -0
  514. package/router/node_modules/side-channel-list/tsconfig.json +9 -0
  515. package/router/node_modules/side-channel-map/.github/FUNDING.yml +12 -0
  516. package/router/node_modules/side-channel-map/CHANGELOG.md +22 -0
  517. package/router/node_modules/side-channel-map/LICENSE +21 -0
  518. package/router/node_modules/side-channel-map/README.md +62 -0
  519. package/router/node_modules/side-channel-map/index.d.ts +15 -0
  520. package/router/node_modules/side-channel-map/index.js +68 -0
  521. package/router/node_modules/side-channel-map/package.json +80 -0
  522. package/router/node_modules/side-channel-map/tsconfig.json +9 -0
  523. package/router/node_modules/side-channel-weakmap/.github/FUNDING.yml +12 -0
  524. package/router/node_modules/side-channel-weakmap/CHANGELOG.md +28 -0
  525. package/router/node_modules/side-channel-weakmap/LICENSE +21 -0
  526. package/router/node_modules/side-channel-weakmap/README.md +62 -0
  527. package/router/node_modules/side-channel-weakmap/index.d.ts +15 -0
  528. package/router/node_modules/side-channel-weakmap/index.js +84 -0
  529. package/router/node_modules/side-channel-weakmap/package.json +87 -0
  530. package/router/node_modules/side-channel-weakmap/tsconfig.json +9 -0
  531. package/router/node_modules/statuses/HISTORY.md +87 -0
  532. package/router/node_modules/statuses/LICENSE +23 -0
  533. package/router/node_modules/statuses/README.md +139 -0
  534. package/router/node_modules/statuses/codes.json +65 -0
  535. package/router/node_modules/statuses/index.js +146 -0
  536. package/router/node_modules/statuses/package.json +49 -0
  537. package/router/node_modules/toidentifier/HISTORY.md +9 -0
  538. package/router/node_modules/toidentifier/LICENSE +21 -0
  539. package/router/node_modules/toidentifier/README.md +61 -0
  540. package/router/node_modules/toidentifier/index.js +32 -0
  541. package/router/node_modules/toidentifier/package.json +38 -0
  542. package/router/node_modules/type-is/HISTORY.md +259 -0
  543. package/router/node_modules/type-is/LICENSE +23 -0
  544. package/router/node_modules/type-is/README.md +170 -0
  545. package/router/node_modules/type-is/index.js +266 -0
  546. package/router/node_modules/type-is/package.json +45 -0
  547. package/router/node_modules/unpipe/HISTORY.md +4 -0
  548. package/router/node_modules/unpipe/LICENSE +22 -0
  549. package/router/node_modules/unpipe/README.md +43 -0
  550. package/router/node_modules/unpipe/index.js +69 -0
  551. package/router/node_modules/unpipe/package.json +27 -0
  552. package/router/node_modules/utils-merge/LICENSE +20 -0
  553. package/router/node_modules/utils-merge/README.md +34 -0
  554. package/router/node_modules/utils-merge/index.js +23 -0
  555. package/router/node_modules/utils-merge/package.json +40 -0
  556. package/router/node_modules/vary/HISTORY.md +39 -0
  557. package/router/node_modules/vary/LICENSE +22 -0
  558. package/router/node_modules/vary/README.md +101 -0
  559. package/router/node_modules/vary/index.js +149 -0
  560. package/router/node_modules/vary/package.json +43 -0
  561. package/router/package.json +36 -0
@@ -0,0 +1,644 @@
1
+ ## **6.14.2**
2
+ - [Fix] `parse`: mark overflow objects for indexed notation exceeding `arrayLimit` (#546)
3
+ - [Fix] `arrayLimit` means max count, not max index, in `combine`/`merge`/`parseArrayValue`
4
+ - [Fix] `parse`: throw on `arrayLimit` exceeded with indexed notation when `throwOnLimitExceeded` is true (#529)
5
+ - [Fix] `parse`: enforce `arrayLimit` on `comma`-parsed values
6
+ - [Fix] `parse`: fix error message to reflect arrayLimit as max index; remove extraneous comments (#545)
7
+ - [Robustness] avoid `.push`, use `void`
8
+ - [readme] document that `addQueryPrefix` does not add `?` to empty output (#418)
9
+ - [readme] clarify `parseArrays` and `arrayLimit` documentation (#543)
10
+ - [readme] replace runkit CI badge with shields.io check-runs badge
11
+ - [meta] fix changelog typo (`arrayLength` → `arrayLimit`)
12
+ - [actions] fix rebase workflow permissions
13
+
14
+ ## **6.14.1**
15
+ - [Fix] ensure `arrayLimit` applies to `[]` notation as well
16
+ - [Fix] `parse`: when a custom decoder returns `null` for a key, ignore that key
17
+ - [Refactor] `parse`: extract key segment splitting helper
18
+ - [meta] add threat model
19
+ - [actions] add workflow permissions
20
+ - [Tests] `stringify`: increase coverage
21
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `npmignore`, `es-value-fixtures`, `for-each`, `object-inspect`
22
+
23
+ ## **6.14.0**
24
+ - [New] `parse`: add `throwOnParameterLimitExceeded` option (#517)
25
+ - [Refactor] `parse`: use `utils.combine` more
26
+ - [patch] `parse`: add explicit `throwOnLimitExceeded` default
27
+ - [actions] use shared action; re-add finishers
28
+ - [meta] Fix changelog formatting bug
29
+ - [Deps] update `side-channel`
30
+ - [Dev Deps] update `es-value-fixtures`, `has-bigints`, `has-proto`, `has-symbols`
31
+ - [Tests] increase coverage
32
+
33
+ ## **6.13.1**
34
+ - [Fix] `stringify`: avoid a crash when a `filter` key is `null`
35
+ - [Fix] `utils.merge`: functions should not be stringified into keys
36
+ - [Fix] `parse`: avoid a crash with interpretNumericEntities: true, comma: true, and iso charset
37
+ - [Fix] `stringify`: ensure a non-string `filter` does not crash
38
+ - [Refactor] use `__proto__` syntax instead of `Object.create` for null objects
39
+ - [Refactor] misc cleanup
40
+ - [Tests] `utils.merge`: add some coverage
41
+ - [Tests] fix a test case
42
+ - [actions] split out node 10-20, and 20+
43
+ - [Dev Deps] update `es-value-fixtures`, `mock-property`, `object-inspect`, `tape`
44
+
45
+ ## **6.13.0**
46
+ - [New] `parse`: add `strictDepth` option (#511)
47
+ - [Tests] use `npm audit` instead of `aud`
48
+
49
+ ## **6.12.3**
50
+ - [Fix] `parse`: properly account for `strictNullHandling` when `allowEmptyArrays`
51
+ - [meta] fix changelog indentation
52
+
53
+ ## **6.12.2**
54
+ - [Fix] `parse`: parse encoded square brackets (#506)
55
+ - [readme] add CII best practices badge
56
+
57
+ ## **6.12.1**
58
+ - [Fix] `parse`: Disable `decodeDotInKeys` by default to restore previous behavior (#501)
59
+ - [Performance] `utils`: Optimize performance under large data volumes, reduce memory usage, and speed up processing (#502)
60
+ - [Refactor] `utils`: use `+=`
61
+ - [Tests] increase coverage
62
+
63
+ ## **6.12.0**
64
+
65
+ - [New] `parse`/`stringify`: add `decodeDotInKeys`/`encodeDotKeys` options (#488)
66
+ - [New] `parse`: add `duplicates` option
67
+ - [New] `parse`/`stringify`: add `allowEmptyArrays` option to allow [] in object values (#487)
68
+ - [Refactor] `parse`/`stringify`: move allowDots config logic to its own variable
69
+ - [Refactor] `stringify`: move option-handling code into `normalizeStringifyOptions`
70
+ - [readme] update readme, add logos (#484)
71
+ - [readme] `stringify`: clarify default `arrayFormat` behavior
72
+ - [readme] fix line wrapping
73
+ - [readme] remove dead badges
74
+ - [Deps] update `side-channel`
75
+ - [meta] make the dist build 50% smaller
76
+ - [meta] add `sideEffects` flag
77
+ - [meta] run build in prepack, not prepublish
78
+ - [Tests] `parse`: remove useless tests; add coverage
79
+ - [Tests] `stringify`: increase coverage
80
+ - [Tests] use `mock-property`
81
+ - [Tests] `stringify`: improve coverage
82
+ - [Dev Deps] update `@ljharb/eslint-config `, `aud`, `has-override-mistake`, `has-property-descriptors`, `mock-property`, `npmignore`, `object-inspect`, `tape`
83
+ - [Dev Deps] pin `glob`, since v10.3.8+ requires a broken `jackspeak`
84
+ - [Dev Deps] pin `jackspeak` since 2.1.2+ depends on npm aliases, which kill the install process in npm < 6
85
+
86
+ ## **6.11.2**
87
+ - [Fix] `parse`: Fix parsing when the global Object prototype is frozen (#473)
88
+ - [Tests] add passing test cases with empty keys (#473)
89
+
90
+ ## **6.11.1**
91
+ - [Fix] `stringify`: encode comma values more consistently (#463)
92
+ - [readme] add usage of `filter` option for injecting custom serialization, i.e. of custom types (#447)
93
+ - [meta] remove extraneous code backticks (#457)
94
+ - [meta] fix changelog markdown
95
+ - [actions] update checkout action
96
+ - [actions] restrict action permissions
97
+ - [Dev Deps] update `@ljharb/eslint-config`, `aud`, `object-inspect`, `tape`
98
+
99
+ ## **6.11.0**
100
+ - [New] [Fix] `stringify`: revert 0e903c0; add `commaRoundTrip` option (#442)
101
+ - [readme] fix version badge
102
+
103
+ ## **6.10.5**
104
+ - [Fix] `stringify`: with `arrayFormat: comma`, properly include an explicit `[]` on a single-item array (#434)
105
+
106
+ ## **6.10.4**
107
+ - [Fix] `stringify`: with `arrayFormat: comma`, include an explicit `[]` on a single-item array (#441)
108
+ - [meta] use `npmignore` to autogenerate an npmignore file
109
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `aud`, `has-symbol`, `object-inspect`, `tape`
110
+
111
+ ## **6.10.3**
112
+ - [Fix] `parse`: ignore `__proto__` keys (#428)
113
+ - [Robustness] `stringify`: avoid relying on a global `undefined` (#427)
114
+ - [actions] reuse common workflows
115
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `object-inspect`, `tape`
116
+
117
+ ## **6.10.2**
118
+ - [Fix] `stringify`: actually fix cyclic references (#426)
119
+ - [Fix] `stringify`: avoid encoding arrayformat comma when `encodeValuesOnly = true` (#424)
120
+ - [readme] remove travis badge; add github actions/codecov badges; update URLs
121
+ - [Docs] add note and links for coercing primitive values (#408)
122
+ - [actions] update codecov uploader
123
+ - [actions] update workflows
124
+ - [Tests] clean up stringify tests slightly
125
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `aud`, `object-inspect`, `safe-publish-latest`, `tape`
126
+
127
+ ## **6.10.1**
128
+ - [Fix] `stringify`: avoid exception on repeated object values (#402)
129
+
130
+ ## **6.10.0**
131
+ - [New] `stringify`: throw on cycles, instead of an infinite loop (#395, #394, #393)
132
+ - [New] `parse`: add `allowSparse` option for collapsing arrays with missing indices (#312)
133
+ - [meta] fix README.md (#399)
134
+ - [meta] only run `npm run dist` in publish, not install
135
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `aud`, `has-symbols`, `tape`
136
+ - [Tests] fix tests on node v0.6
137
+ - [Tests] use `ljharb/actions/node/install` instead of `ljharb/actions/node/run`
138
+ - [Tests] Revert "[meta] ignore eclint transitive audit warning"
139
+
140
+ ## **6.9.7**
141
+ - [Fix] `parse`: ignore `__proto__` keys (#428)
142
+ - [Fix] `stringify`: avoid encoding arrayformat comma when `encodeValuesOnly = true` (#424)
143
+ - [Robustness] `stringify`: avoid relying on a global `undefined` (#427)
144
+ - [readme] remove travis badge; add github actions/codecov badges; update URLs
145
+ - [Docs] add note and links for coercing primitive values (#408)
146
+ - [Tests] clean up stringify tests slightly
147
+ - [meta] fix README.md (#399)
148
+ - Revert "[meta] ignore eclint transitive audit warning"
149
+ - [actions] backport actions from main
150
+ - [Dev Deps] backport updates from main
151
+
152
+ ## **6.9.6**
153
+ - [Fix] restore `dist` dir; mistakenly removed in d4f6c32
154
+
155
+ ## **6.9.5**
156
+ - [Fix] `stringify`: do not encode parens for RFC1738
157
+ - [Fix] `stringify`: fix arrayFormat comma with empty array/objects (#350)
158
+ - [Refactor] `format`: remove `util.assign` call
159
+ - [meta] add "Allow Edits" workflow; update rebase workflow
160
+ - [actions] switch Automatic Rebase workflow to `pull_request_target` event
161
+ - [Tests] `stringify`: add tests for #378
162
+ - [Tests] migrate tests to Github Actions
163
+ - [Tests] run `nyc` on all tests; use `tape` runner
164
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `browserify`, `mkdirp`, `object-inspect`, `tape`; add `aud`
165
+
166
+ ## **6.9.4**
167
+ - [Fix] `stringify`: when `arrayFormat` is `comma`, respect `serializeDate` (#364)
168
+ - [Refactor] `stringify`: reduce branching (part of #350)
169
+ - [Refactor] move `maybeMap` to `utils`
170
+ - [Dev Deps] update `browserify`, `tape`
171
+
172
+ ## **6.9.3**
173
+ - [Fix] proper comma parsing of URL-encoded commas (#361)
174
+ - [Fix] parses comma delimited array while having percent-encoded comma treated as normal text (#336)
175
+
176
+ ## **6.9.2**
177
+ - [Fix] `parse`: Fix parsing array from object with `comma` true (#359)
178
+ - [Fix] `parse`: throw a TypeError instead of an Error for bad charset (#349)
179
+ - [meta] ignore eclint transitive audit warning
180
+ - [meta] fix indentation in package.json
181
+ - [meta] add tidelift marketing copy
182
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `object-inspect`, `has-symbols`, `tape`, `mkdirp`, `iconv-lite`
183
+ - [actions] add automatic rebasing / merge commit blocking
184
+
185
+ ## **6.9.1**
186
+ - [Fix] `parse`: with comma true, handle field that holds an array of arrays (#335)
187
+ - [Fix] `parse`: with comma true, do not split non-string values (#334)
188
+ - [meta] add `funding` field
189
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`
190
+ - [Tests] use shared travis-ci config
191
+
192
+ ## **6.9.0**
193
+ - [New] `parse`/`stringify`: Pass extra key/value argument to `decoder` (#333)
194
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `evalmd`
195
+ - [Tests] `parse`: add passing `arrayFormat` tests
196
+ - [Tests] add `posttest` using `npx aud` to run `npm audit` without a lockfile
197
+ - [Tests] up to `node` `v12.10`, `v11.15`, `v10.16`, `v8.16`
198
+ - [Tests] `Buffer.from` in node v5.0-v5.9 and v4.0-v4.4 requires a TypedArray
199
+
200
+ ## **6.8.3**
201
+ - [Fix] `parse`: ignore `__proto__` keys (#428)
202
+ - [Robustness] `stringify`: avoid relying on a global `undefined` (#427)
203
+ - [Fix] `stringify`: avoid encoding arrayformat comma when `encodeValuesOnly = true` (#424)
204
+ - [readme] remove travis badge; add github actions/codecov badges; update URLs
205
+ - [Tests] clean up stringify tests slightly
206
+ - [Docs] add note and links for coercing primitive values (#408)
207
+ - [meta] fix README.md (#399)
208
+ - [actions] backport actions from main
209
+ - [Dev Deps] backport updates from main
210
+ - [Refactor] `stringify`: reduce branching
211
+ - [meta] do not publish workflow files
212
+
213
+ ## **6.8.2**
214
+ - [Fix] proper comma parsing of URL-encoded commas (#361)
215
+ - [Fix] parses comma delimited array while having percent-encoded comma treated as normal text (#336)
216
+
217
+ ## **6.8.1**
218
+ - [Fix] `parse`: Fix parsing array from object with `comma` true (#359)
219
+ - [Fix] `parse`: throw a TypeError instead of an Error for bad charset (#349)
220
+ - [Fix] `parse`: with comma true, handle field that holds an array of arrays (#335)
221
+ - [fix] `parse`: with comma true, do not split non-string values (#334)
222
+ - [meta] add tidelift marketing copy
223
+ - [meta] add `funding` field
224
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape`, `safe-publish-latest`, `evalmd`, `has-symbols`, `iconv-lite`, `mkdirp`, `object-inspect`
225
+ - [Tests] `parse`: add passing `arrayFormat` tests
226
+ - [Tests] use shared travis-ci configs
227
+ - [Tests] `Buffer.from` in node v5.0-v5.9 and v4.0-v4.4 requires a TypedArray
228
+ - [actions] add automatic rebasing / merge commit blocking
229
+
230
+ ## **6.8.0**
231
+ - [New] add `depth=false` to preserve the original key; [Fix] `depth=0` should preserve the original key (#326)
232
+ - [New] [Fix] stringify symbols and bigints
233
+ - [Fix] ensure node 0.12 can stringify Symbols
234
+ - [Fix] fix for an impossible situation: when the formatter is called with a non-string value
235
+ - [Refactor] `formats`: tiny bit of cleanup.
236
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `browserify`, `safe-publish-latest`, `iconv-lite`, `tape`
237
+ - [Tests] add tests for `depth=0` and `depth=false` behavior, both current and intuitive/intended (#326)
238
+ - [Tests] use `eclint` instead of `editorconfig-tools`
239
+ - [docs] readme: add security note
240
+ - [meta] add github sponsorship
241
+ - [meta] add FUNDING.yml
242
+ - [meta] Clean up license text so it’s properly detected as BSD-3-Clause
243
+
244
+ ## **6.7.3**
245
+ - [Fix] `parse`: ignore `__proto__` keys (#428)
246
+ - [Fix] `stringify`: avoid encoding arrayformat comma when `encodeValuesOnly = true` (#424)
247
+ - [Robustness] `stringify`: avoid relying on a global `undefined` (#427)
248
+ - [readme] remove travis badge; add github actions/codecov badges; update URLs
249
+ - [Docs] add note and links for coercing primitive values (#408)
250
+ - [meta] fix README.md (#399)
251
+ - [meta] do not publish workflow files
252
+ - [actions] backport actions from main
253
+ - [Dev Deps] backport updates from main
254
+ - [Tests] use `nyc` for coverage
255
+ - [Tests] clean up stringify tests slightly
256
+
257
+ ## **6.7.2**
258
+ - [Fix] proper comma parsing of URL-encoded commas (#361)
259
+ - [Fix] parses comma delimited array while having percent-encoded comma treated as normal text (#336)
260
+
261
+ ## **6.7.1**
262
+ - [Fix] `parse`: Fix parsing array from object with `comma` true (#359)
263
+ - [Fix] `parse`: with comma true, handle field that holds an array of arrays (#335)
264
+ - [fix] `parse`: with comma true, do not split non-string values (#334)
265
+ - [Fix] `parse`: throw a TypeError instead of an Error for bad charset (#349)
266
+ - [Fix] fix for an impossible situation: when the formatter is called with a non-string value
267
+ - [Refactor] `formats`: tiny bit of cleanup.
268
+ - readme: add security note
269
+ - [meta] add tidelift marketing copy
270
+ - [meta] add `funding` field
271
+ - [meta] add FUNDING.yml
272
+ - [meta] Clean up license text so it’s properly detected as BSD-3-Clause
273
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape`, `safe-publish-latest`, `evalmd`, `iconv-lite`, `mkdirp`, `object-inspect`, `browserify`
274
+ - [Tests] `parse`: add passing `arrayFormat` tests
275
+ - [Tests] use shared travis-ci configs
276
+ - [Tests] `Buffer.from` in node v5.0-v5.9 and v4.0-v4.4 requires a TypedArray
277
+ - [Tests] add tests for `depth=0` and `depth=false` behavior, both current and intuitive/intended
278
+ - [Tests] use `eclint` instead of `editorconfig-tools`
279
+ - [actions] add automatic rebasing / merge commit blocking
280
+
281
+ ## **6.7.0**
282
+ - [New] `stringify`/`parse`: add `comma` as an `arrayFormat` option (#276, #219)
283
+ - [Fix] correctly parse nested arrays (#212)
284
+ - [Fix] `utils.merge`: avoid a crash with a null target and a truthy non-array source, also with an array source
285
+ - [Robustness] `stringify`: cache `Object.prototype.hasOwnProperty`
286
+ - [Refactor] `utils`: `isBuffer`: small tweak; add tests
287
+ - [Refactor] use cached `Array.isArray`
288
+ - [Refactor] `parse`/`stringify`: make a function to normalize the options
289
+ - [Refactor] `utils`: reduce observable [[Get]]s
290
+ - [Refactor] `stringify`/`utils`: cache `Array.isArray`
291
+ - [Tests] always use `String(x)` over `x.toString()`
292
+ - [Tests] fix Buffer tests to work in node < 4.5 and node < 5.10
293
+ - [Tests] temporarily allow coverage to fail
294
+
295
+ ## **6.6.1**
296
+ - [Fix] `parse`: ignore `__proto__` keys (#428)
297
+ - [Fix] fix for an impossible situation: when the formatter is called with a non-string value
298
+ - [Fix] `utils.merge`: avoid a crash with a null target and an array source
299
+ - [Fix] `utils.merge`: avoid a crash with a null target and a truthy non-array source
300
+ - [Fix] correctly parse nested arrays
301
+ - [Robustness] `stringify`: avoid relying on a global `undefined` (#427)
302
+ - [Robustness] `stringify`: cache `Object.prototype.hasOwnProperty`
303
+ - [Refactor] `formats`: tiny bit of cleanup.
304
+ - [Refactor] `utils`: `isBuffer`: small tweak; add tests
305
+ - [Refactor]: `stringify`/`utils`: cache `Array.isArray`
306
+ - [Refactor] `utils`: reduce observable [[Get]]s
307
+ - [Refactor] use cached `Array.isArray`
308
+ - [Refactor] `parse`/`stringify`: make a function to normalize the options
309
+ - [readme] remove travis badge; add github actions/codecov badges; update URLs
310
+ - [Docs] Clarify the need for "arrayLimit" option
311
+ - [meta] fix README.md (#399)
312
+ - [meta] do not publish workflow files
313
+ - [meta] Clean up license text so it’s properly detected as BSD-3-Clause
314
+ - [meta] add FUNDING.yml
315
+ - [meta] Fixes typo in CHANGELOG.md
316
+ - [actions] backport actions from main
317
+ - [Tests] fix Buffer tests to work in node < 4.5 and node < 5.10
318
+ - [Tests] always use `String(x)` over `x.toString()`
319
+ - [Dev Deps] backport from main
320
+
321
+ ## **6.6.0**
322
+ - [New] Add support for iso-8859-1, utf8 "sentinel" and numeric entities (#268)
323
+ - [New] move two-value combine to a `utils` function (#189)
324
+ - [Fix] `stringify`: fix a crash with `strictNullHandling` and a custom `filter`/`serializeDate` (#279)
325
+ - [Fix] when `parseArrays` is false, properly handle keys ending in `[]` (#260)
326
+ - [Fix] `stringify`: do not crash in an obscure combo of `interpretNumericEntities`, a bad custom `decoder`, & `iso-8859-1`
327
+ - [Fix] `utils`: `merge`: fix crash when `source` is a truthy primitive & no options are provided
328
+ - [refactor] `stringify`: Avoid arr = arr.concat(...), push to the existing instance (#269)
329
+ - [Refactor] `parse`: only need to reassign the var once
330
+ - [Refactor] `parse`/`stringify`: clean up `charset` options checking; fix defaults
331
+ - [Refactor] add missing defaults
332
+ - [Refactor] `parse`: one less `concat` call
333
+ - [Refactor] `utils`: `compactQueue`: make it explicitly side-effecting
334
+ - [Dev Deps] update `browserify`, `eslint`, `@ljharb/eslint-config`, `iconv-lite`, `safe-publish-latest`, `tape`
335
+ - [Tests] up to `node` `v10.10`, `v9.11`, `v8.12`, `v6.14`, `v4.9`; pin included builds to LTS
336
+
337
+ ## **6.5.3**
338
+ - [Fix] `parse`: ignore `__proto__` keys (#428)
339
+ - [Fix] `utils.merge`: avoid a crash with a null target and a truthy non-array source
340
+ - [Fix] correctly parse nested arrays
341
+ - [Fix] `stringify`: fix a crash with `strictNullHandling` and a custom `filter`/`serializeDate` (#279)
342
+ - [Fix] `utils`: `merge`: fix crash when `source` is a truthy primitive & no options are provided
343
+ - [Fix] when `parseArrays` is false, properly handle keys ending in `[]`
344
+ - [Fix] fix for an impossible situation: when the formatter is called with a non-string value
345
+ - [Fix] `utils.merge`: avoid a crash with a null target and an array source
346
+ - [Refactor] `utils`: reduce observable [[Get]]s
347
+ - [Refactor] use cached `Array.isArray`
348
+ - [Refactor] `stringify`: Avoid arr = arr.concat(...), push to the existing instance (#269)
349
+ - [Refactor] `parse`: only need to reassign the var once
350
+ - [Robustness] `stringify`: avoid relying on a global `undefined` (#427)
351
+ - [readme] remove travis badge; add github actions/codecov badges; update URLs
352
+ - [Docs] Clean up license text so it’s properly detected as BSD-3-Clause
353
+ - [Docs] Clarify the need for "arrayLimit" option
354
+ - [meta] fix README.md (#399)
355
+ - [meta] add FUNDING.yml
356
+ - [actions] backport actions from main
357
+ - [Tests] always use `String(x)` over `x.toString()`
358
+ - [Tests] remove nonexistent tape option
359
+ - [Dev Deps] backport from main
360
+
361
+ ## **6.5.2**
362
+ - [Fix] use `safer-buffer` instead of `Buffer` constructor
363
+ - [Refactor] utils: `module.exports` one thing, instead of mutating `exports` (#230)
364
+ - [Dev Deps] update `browserify`, `eslint`, `iconv-lite`, `safer-buffer`, `tape`, `browserify`
365
+
366
+ ## **6.5.1**
367
+ - [Fix] Fix parsing & compacting very deep objects (#224)
368
+ - [Refactor] name utils functions
369
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape`
370
+ - [Tests] up to `node` `v8.4`; use `nvm install-latest-npm` so newer npm doesn’t break older node
371
+ - [Tests] Use precise dist for Node.js 0.6 runtime (#225)
372
+ - [Tests] make 0.6 required, now that it’s passing
373
+ - [Tests] on `node` `v8.2`; fix npm on node 0.6
374
+
375
+ ## **6.5.0**
376
+ - [New] add `utils.assign`
377
+ - [New] pass default encoder/decoder to custom encoder/decoder functions (#206)
378
+ - [New] `parse`/`stringify`: add `ignoreQueryPrefix`/`addQueryPrefix` options, respectively (#213)
379
+ - [Fix] Handle stringifying empty objects with addQueryPrefix (#217)
380
+ - [Fix] do not mutate `options` argument (#207)
381
+ - [Refactor] `parse`: cache index to reuse in else statement (#182)
382
+ - [Docs] add various badges to readme (#208)
383
+ - [Dev Deps] update `eslint`, `browserify`, `iconv-lite`, `tape`
384
+ - [Tests] up to `node` `v8.1`, `v7.10`, `v6.11`; npm v4.6 breaks on node < v1; npm v5+ breaks on node < v4
385
+ - [Tests] add `editorconfig-tools`
386
+
387
+ ## **6.4.1**
388
+ - [Fix] `parse`: ignore `__proto__` keys (#428)
389
+ - [Fix] fix for an impossible situation: when the formatter is called with a non-string value
390
+ - [Fix] use `safer-buffer` instead of `Buffer` constructor
391
+ - [Fix] `utils.merge`: avoid a crash with a null target and an array source
392
+ - [Fix] `utils.merge`: avoid a crash with a null target and a truthy non-array source
393
+ - [Fix] `stringify`: fix a crash with `strictNullHandling` and a custom `filter`/`serializeDate` (#279)
394
+ - [Fix] `utils`: `merge`: fix crash when `source` is a truthy primitive & no options are provided
395
+ - [Fix] when `parseArrays` is false, properly handle keys ending in `[]`
396
+ - [Robustness] `stringify`: avoid relying on a global `undefined` (#427)
397
+ - [Refactor] use cached `Array.isArray`
398
+ - [Refactor] `stringify`: Avoid arr = arr.concat(...), push to the existing instance (#269)
399
+ - [readme] remove travis badge; add github actions/codecov badges; update URLs
400
+ - [Docs] Clarify the need for "arrayLimit" option
401
+ - [meta] fix README.md (#399)
402
+ - [meta] Clean up license text so it’s properly detected as BSD-3-Clause
403
+ - [meta] add FUNDING.yml
404
+ - [actions] backport actions from main
405
+ - [Tests] remove nonexistent tape option
406
+ - [Dev Deps] backport from main
407
+
408
+ ## **6.4.0**
409
+ - [New] `qs.stringify`: add `encodeValuesOnly` option
410
+ - [Fix] follow `allowPrototypes` option during merge (#201, #201)
411
+ - [Fix] support keys starting with brackets (#202, #200)
412
+ - [Fix] chmod a-x
413
+ - [Dev Deps] update `eslint`
414
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
415
+ - [eslint] reduce warnings
416
+
417
+ ## **6.3.3**
418
+ - [Fix] `parse`: ignore `__proto__` keys (#428)
419
+ - [Fix] fix for an impossible situation: when the formatter is called with a non-string value
420
+ - [Fix] `utils.merge`: avoid a crash with a null target and an array source
421
+ - [Fix] `utils.merge`: avoid a crash with a null target and a truthy non-array source
422
+ - [Fix] `stringify`: fix a crash with `strictNullHandling` and a custom `filter`/`serializeDate` (#279)
423
+ - [Fix] `utils`: `merge`: fix crash when `source` is a truthy primitive & no options are provided
424
+ - [Fix] when `parseArrays` is false, properly handle keys ending in `[]`
425
+ - [Robustness] `stringify`: avoid relying on a global `undefined` (#427)
426
+ - [Refactor] use cached `Array.isArray`
427
+ - [Refactor] `stringify`: Avoid arr = arr.concat(...), push to the existing instance (#269)
428
+ - [Docs] Clarify the need for "arrayLimit" option
429
+ - [meta] fix README.md (#399)
430
+ - [meta] Clean up license text so it’s properly detected as BSD-3-Clause
431
+ - [meta] add FUNDING.yml
432
+ - [actions] backport actions from main
433
+ - [Tests] use `safer-buffer` instead of `Buffer` constructor
434
+ - [Tests] remove nonexistent tape option
435
+ - [Dev Deps] backport from main
436
+
437
+ ## **6.3.2**
438
+ - [Fix] follow `allowPrototypes` option during merge (#201, #200)
439
+ - [Dev Deps] update `eslint`
440
+ - [Fix] chmod a-x
441
+ - [Fix] support keys starting with brackets (#202, #200)
442
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
443
+
444
+ ## **6.3.1**
445
+ - [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties (thanks, @snyk!)
446
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `browserify`, `iconv-lite`, `qs-iconv`, `tape`
447
+ - [Tests] on all node minors; improve test matrix
448
+ - [Docs] document stringify option `allowDots` (#195)
449
+ - [Docs] add empty object and array values example (#195)
450
+ - [Docs] Fix minor inconsistency/typo (#192)
451
+ - [Docs] document stringify option `sort` (#191)
452
+ - [Refactor] `stringify`: throw faster with an invalid encoder
453
+ - [Refactor] remove unnecessary escapes (#184)
454
+ - Remove contributing.md, since `qs` is no longer part of `hapi` (#183)
455
+
456
+ ## **6.3.0**
457
+ - [New] Add support for RFC 1738 (#174, #173)
458
+ - [New] `stringify`: Add `serializeDate` option to customize Date serialization (#159)
459
+ - [Fix] ensure `utils.merge` handles merging two arrays
460
+ - [Refactor] only constructors should be capitalized
461
+ - [Refactor] capitalized var names are for constructors only
462
+ - [Refactor] avoid using a sparse array
463
+ - [Robustness] `formats`: cache `String#replace`
464
+ - [Dev Deps] update `browserify`, `eslint`, `@ljharb/eslint-config`; add `safe-publish-latest`
465
+ - [Tests] up to `node` `v6.8`, `v4.6`; improve test matrix
466
+ - [Tests] flesh out arrayLimit/arrayFormat tests (#107)
467
+ - [Tests] skip Object.create tests when null objects are not available
468
+ - [Tests] Turn on eslint for test files (#175)
469
+
470
+ ## **6.2.4**
471
+ - [Fix] `parse`: ignore `__proto__` keys (#428)
472
+ - [Fix] `utils.merge`: avoid a crash with a null target and an array source
473
+ - [Fix] `utils.merge`: avoid a crash with a null target and a truthy non-array source
474
+ - [Fix] `utils`: `merge`: fix crash when `source` is a truthy primitive & no options are provided
475
+ - [Fix] when `parseArrays` is false, properly handle keys ending in `[]`
476
+ - [Robustness] `stringify`: avoid relying on a global `undefined` (#427)
477
+ - [Refactor] use cached `Array.isArray`
478
+ - [Docs] Clarify the need for "arrayLimit" option
479
+ - [meta] fix README.md (#399)
480
+ - [meta] Clean up license text so it’s properly detected as BSD-3-Clause
481
+ - [meta] add FUNDING.yml
482
+ - [actions] backport actions from main
483
+ - [Tests] use `safer-buffer` instead of `Buffer` constructor
484
+ - [Tests] remove nonexistent tape option
485
+ - [Dev Deps] backport from main
486
+
487
+ ## **6.2.3**
488
+ - [Fix] follow `allowPrototypes` option during merge (#201, #200)
489
+ - [Fix] chmod a-x
490
+ - [Fix] support keys starting with brackets (#202, #200)
491
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
492
+
493
+ ## **6.2.2**
494
+ - [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties
495
+
496
+ ## **6.2.1**
497
+ - [Fix] ensure `key[]=x&key[]&key[]=y` results in 3, not 2, values
498
+ - [Refactor] Be explicit and use `Object.prototype.hasOwnProperty.call`
499
+ - [Tests] remove `parallelshell` since it does not reliably report failures
500
+ - [Tests] up to `node` `v6.3`, `v5.12`
501
+ - [Dev Deps] update `tape`, `eslint`, `@ljharb/eslint-config`, `qs-iconv`
502
+
503
+ ## [**6.2.0**](https://github.com/ljharb/qs/issues?milestone=36&state=closed)
504
+ - [New] pass Buffers to the encoder/decoder directly (#161)
505
+ - [New] add "encoder" and "decoder" options, for custom param encoding/decoding (#160)
506
+ - [Fix] fix compacting of nested sparse arrays (#150)
507
+
508
+ ## **6.1.2**
509
+ - [Fix] follow `allowPrototypes` option during merge (#201, #200)
510
+ - [Fix] chmod a-x
511
+ - [Fix] support keys starting with brackets (#202, #200)
512
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
513
+
514
+ ## **6.1.1**
515
+ - [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties
516
+
517
+ ## [**6.1.0**](https://github.com/ljharb/qs/issues?milestone=35&state=closed)
518
+ - [New] allowDots option for `stringify` (#151)
519
+ - [Fix] "sort" option should work at a depth of 3 or more (#151)
520
+ - [Fix] Restore `dist` directory; will be removed in v7 (#148)
521
+
522
+ ## **6.0.4**
523
+ - [Fix] follow `allowPrototypes` option during merge (#201, #200)
524
+ - [Fix] chmod a-x
525
+ - [Fix] support keys starting with brackets (#202, #200)
526
+ - [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds
527
+
528
+ ## **6.0.3**
529
+ - [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties
530
+ - [Fix] Restore `dist` directory; will be removed in v7 (#148)
531
+
532
+ ## [**6.0.2**](https://github.com/ljharb/qs/issues?milestone=33&state=closed)
533
+ - Revert ES6 requirement and restore support for node down to v0.8.
534
+
535
+ ## [**6.0.1**](https://github.com/ljharb/qs/issues?milestone=32&state=closed)
536
+ - [**#127**](https://github.com/ljharb/qs/pull/127) Fix engines definition in package.json
537
+
538
+ ## [**6.0.0**](https://github.com/ljharb/qs/issues?milestone=31&state=closed)
539
+ - [**#124**](https://github.com/ljharb/qs/issues/124) Use ES6 and drop support for node < v4
540
+
541
+ ## **5.2.1**
542
+ - [Fix] ensure `key[]=x&key[]&key[]=y` results in 3, not 2, values
543
+
544
+ ## [**5.2.0**](https://github.com/ljharb/qs/issues?milestone=30&state=closed)
545
+ - [**#64**](https://github.com/ljharb/qs/issues/64) Add option to sort object keys in the query string
546
+
547
+ ## [**5.1.0**](https://github.com/ljharb/qs/issues?milestone=29&state=closed)
548
+ - [**#117**](https://github.com/ljharb/qs/issues/117) make URI encoding stringified results optional
549
+ - [**#106**](https://github.com/ljharb/qs/issues/106) Add flag `skipNulls` to optionally skip null values in stringify
550
+
551
+ ## [**5.0.0**](https://github.com/ljharb/qs/issues?milestone=28&state=closed)
552
+ - [**#114**](https://github.com/ljharb/qs/issues/114) default allowDots to false
553
+ - [**#100**](https://github.com/ljharb/qs/issues/100) include dist to npm
554
+
555
+ ## [**4.0.0**](https://github.com/ljharb/qs/issues?milestone=26&state=closed)
556
+ - [**#98**](https://github.com/ljharb/qs/issues/98) make returning plain objects and allowing prototype overwriting properties optional
557
+
558
+ ## [**3.1.0**](https://github.com/ljharb/qs/issues?milestone=24&state=closed)
559
+ - [**#89**](https://github.com/ljharb/qs/issues/89) Add option to disable "Transform dot notation to bracket notation"
560
+
561
+ ## [**3.0.0**](https://github.com/ljharb/qs/issues?milestone=23&state=closed)
562
+ - [**#80**](https://github.com/ljharb/qs/issues/80) qs.parse silently drops properties
563
+ - [**#77**](https://github.com/ljharb/qs/issues/77) Perf boost
564
+ - [**#60**](https://github.com/ljharb/qs/issues/60) Add explicit option to disable array parsing
565
+ - [**#74**](https://github.com/ljharb/qs/issues/74) Bad parse when turning array into object
566
+ - [**#81**](https://github.com/ljharb/qs/issues/81) Add a `filter` option
567
+ - [**#68**](https://github.com/ljharb/qs/issues/68) Fixed issue with recursion and passing strings into objects.
568
+ - [**#66**](https://github.com/ljharb/qs/issues/66) Add mixed array and object dot notation support Closes: #47
569
+ - [**#76**](https://github.com/ljharb/qs/issues/76) RFC 3986
570
+ - [**#85**](https://github.com/ljharb/qs/issues/85) No equal sign
571
+ - [**#84**](https://github.com/ljharb/qs/issues/84) update license attribute
572
+
573
+ ## [**2.4.1**](https://github.com/ljharb/qs/issues?milestone=20&state=closed)
574
+ - [**#73**](https://github.com/ljharb/qs/issues/73) Property 'hasOwnProperty' of object #<Object> is not a function
575
+
576
+ ## [**2.4.0**](https://github.com/ljharb/qs/issues?milestone=19&state=closed)
577
+ - [**#70**](https://github.com/ljharb/qs/issues/70) Add arrayFormat option
578
+
579
+ ## [**2.3.3**](https://github.com/ljharb/qs/issues?milestone=18&state=closed)
580
+ - [**#59**](https://github.com/ljharb/qs/issues/59) make sure array indexes are >= 0, closes #57
581
+ - [**#58**](https://github.com/ljharb/qs/issues/58) make qs usable for browser loader
582
+
583
+ ## [**2.3.2**](https://github.com/ljharb/qs/issues?milestone=17&state=closed)
584
+ - [**#55**](https://github.com/ljharb/qs/issues/55) allow merging a string into an object
585
+
586
+ ## [**2.3.1**](https://github.com/ljharb/qs/issues?milestone=16&state=closed)
587
+ - [**#52**](https://github.com/ljharb/qs/issues/52) Return "undefined" and "false" instead of throwing "TypeError".
588
+
589
+ ## [**2.3.0**](https://github.com/ljharb/qs/issues?milestone=15&state=closed)
590
+ - [**#50**](https://github.com/ljharb/qs/issues/50) add option to omit array indices, closes #46
591
+
592
+ ## [**2.2.5**](https://github.com/ljharb/qs/issues?milestone=14&state=closed)
593
+ - [**#39**](https://github.com/ljharb/qs/issues/39) Is there an alternative to Buffer.isBuffer?
594
+ - [**#49**](https://github.com/ljharb/qs/issues/49) refactor utils.merge, fixes #45
595
+ - [**#41**](https://github.com/ljharb/qs/issues/41) avoid browserifying Buffer, for #39
596
+
597
+ ## [**2.2.4**](https://github.com/ljharb/qs/issues?milestone=13&state=closed)
598
+ - [**#38**](https://github.com/ljharb/qs/issues/38) how to handle object keys beginning with a number
599
+
600
+ ## [**2.2.3**](https://github.com/ljharb/qs/issues?milestone=12&state=closed)
601
+ - [**#37**](https://github.com/ljharb/qs/issues/37) parser discards first empty value in array
602
+ - [**#36**](https://github.com/ljharb/qs/issues/36) Update to lab 4.x
603
+
604
+ ## [**2.2.2**](https://github.com/ljharb/qs/issues?milestone=11&state=closed)
605
+ - [**#33**](https://github.com/ljharb/qs/issues/33) Error when plain object in a value
606
+ - [**#34**](https://github.com/ljharb/qs/issues/34) use Object.prototype.hasOwnProperty.call instead of obj.hasOwnProperty
607
+ - [**#24**](https://github.com/ljharb/qs/issues/24) Changelog? Semver?
608
+
609
+ ## [**2.2.1**](https://github.com/ljharb/qs/issues?milestone=10&state=closed)
610
+ - [**#32**](https://github.com/ljharb/qs/issues/32) account for circular references properly, closes #31
611
+ - [**#31**](https://github.com/ljharb/qs/issues/31) qs.parse stackoverflow on circular objects
612
+
613
+ ## [**2.2.0**](https://github.com/ljharb/qs/issues?milestone=9&state=closed)
614
+ - [**#26**](https://github.com/ljharb/qs/issues/26) Don't use Buffer global if it's not present
615
+ - [**#30**](https://github.com/ljharb/qs/issues/30) Bug when merging non-object values into arrays
616
+ - [**#29**](https://github.com/ljharb/qs/issues/29) Don't call Utils.clone at the top of Utils.merge
617
+ - [**#23**](https://github.com/ljharb/qs/issues/23) Ability to not limit parameters?
618
+
619
+ ## [**2.1.0**](https://github.com/ljharb/qs/issues?milestone=8&state=closed)
620
+ - [**#22**](https://github.com/ljharb/qs/issues/22) Enable using a RegExp as delimiter
621
+
622
+ ## [**2.0.0**](https://github.com/ljharb/qs/issues?milestone=7&state=closed)
623
+ - [**#18**](https://github.com/ljharb/qs/issues/18) Why is there arrayLimit?
624
+ - [**#20**](https://github.com/ljharb/qs/issues/20) Configurable parametersLimit
625
+ - [**#21**](https://github.com/ljharb/qs/issues/21) make all limits optional, for #18, for #20
626
+
627
+ ## [**1.2.2**](https://github.com/ljharb/qs/issues?milestone=6&state=closed)
628
+ - [**#19**](https://github.com/ljharb/qs/issues/19) Don't overwrite null values
629
+
630
+ ## [**1.2.1**](https://github.com/ljharb/qs/issues?milestone=5&state=closed)
631
+ - [**#16**](https://github.com/ljharb/qs/issues/16) ignore non-string delimiters
632
+ - [**#15**](https://github.com/ljharb/qs/issues/15) Close code block
633
+
634
+ ## [**1.2.0**](https://github.com/ljharb/qs/issues?milestone=4&state=closed)
635
+ - [**#12**](https://github.com/ljharb/qs/issues/12) Add optional delim argument
636
+ - [**#13**](https://github.com/ljharb/qs/issues/13) fix #11: flattened keys in array are now correctly parsed
637
+
638
+ ## [**1.1.0**](https://github.com/ljharb/qs/issues?milestone=3&state=closed)
639
+ - [**#7**](https://github.com/ljharb/qs/issues/7) Empty values of a POST array disappear after being submitted
640
+ - [**#9**](https://github.com/ljharb/qs/issues/9) Should not omit equals signs (=) when value is null
641
+ - [**#6**](https://github.com/ljharb/qs/issues/6) Minor grammar fix in README
642
+
643
+ ## [**1.0.2**](https://github.com/ljharb/qs/issues?milestone=2&state=closed)
644
+ - [**#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.