@st-gr/sail-proxy 0.9.2 → 0.9.3

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 (213) hide show
  1. package/bundled/gateway/node_modules/.package-lock.json +132 -83
  2. package/bundled/gateway/node_modules/axios/CHANGELOG.md +0 -42
  3. package/bundled/gateway/node_modules/axios/README.md +237 -237
  4. package/bundled/gateway/node_modules/axios/dist/axios.js +21 -113
  5. package/bundled/gateway/node_modules/axios/dist/axios.js.map +1 -0
  6. package/bundled/gateway/node_modules/axios/dist/axios.min.js +2 -2
  7. package/bundled/gateway/node_modules/axios/dist/axios.min.js.map +1 -1
  8. package/bundled/gateway/node_modules/axios/dist/browser/axios.cjs +15 -121
  9. package/bundled/gateway/node_modules/axios/dist/browser/axios.cjs.map +1 -0
  10. package/bundled/gateway/node_modules/axios/dist/esm/axios.js +15 -121
  11. package/bundled/gateway/node_modules/axios/dist/esm/axios.js.map +1 -0
  12. package/bundled/gateway/node_modules/axios/dist/esm/axios.min.js +2 -2
  13. package/bundled/gateway/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  14. package/bundled/gateway/node_modules/axios/dist/node/axios.cjs +107 -249
  15. package/bundled/gateway/node_modules/axios/dist/node/axios.cjs.map +1 -0
  16. package/bundled/gateway/node_modules/axios/index.d.cts +3 -8
  17. package/bundled/gateway/node_modules/axios/index.d.ts +1 -4
  18. package/bundled/gateway/node_modules/axios/lib/adapters/fetch.js +0 -79
  19. package/bundled/gateway/node_modules/axios/lib/adapters/http.js +118 -62
  20. package/bundled/gateway/node_modules/axios/lib/core/Axios.js +0 -1
  21. package/bundled/gateway/node_modules/axios/lib/core/AxiosHeaders.js +2 -2
  22. package/bundled/gateway/node_modules/axios/lib/defaults/transitional.js +0 -1
  23. package/bundled/gateway/node_modules/axios/lib/env/data.js +1 -1
  24. package/bundled/gateway/node_modules/axios/lib/helpers/buildURL.js +1 -1
  25. package/bundled/gateway/node_modules/axios/lib/helpers/formDataToStream.js +2 -2
  26. package/bundled/gateway/node_modules/axios/lib/helpers/resolveConfig.js +6 -12
  27. package/bundled/gateway/node_modules/axios/lib/helpers/toFormData.js +1 -1
  28. package/bundled/gateway/node_modules/axios/lib/utils.js +2 -23
  29. package/bundled/gateway/node_modules/axios/package.json +13 -29
  30. package/bundled/gateway/node_modules/body-parser/HISTORY.md +0 -14
  31. package/bundled/gateway/node_modules/body-parser/SECURITY.md +25 -0
  32. package/bundled/gateway/node_modules/body-parser/lib/types/json.js +5 -1
  33. package/bundled/gateway/node_modules/body-parser/lib/types/urlencoded.js +15 -7
  34. package/bundled/gateway/node_modules/body-parser/node_modules/qs/.editorconfig +46 -0
  35. package/bundled/gateway/node_modules/body-parser/node_modules/qs/.eslintrc +38 -0
  36. package/bundled/gateway/node_modules/body-parser/node_modules/qs/.github/FUNDING.yml +12 -0
  37. package/bundled/gateway/node_modules/body-parser/node_modules/qs/.nycrc +13 -0
  38. package/bundled/gateway/node_modules/body-parser/node_modules/qs/CHANGELOG.md +600 -0
  39. package/bundled/gateway/node_modules/body-parser/node_modules/qs/LICENSE.md +29 -0
  40. package/bundled/gateway/node_modules/body-parser/node_modules/qs/README.md +709 -0
  41. package/bundled/gateway/node_modules/body-parser/node_modules/qs/dist/qs.js +90 -0
  42. package/bundled/gateway/node_modules/body-parser/node_modules/qs/lib/formats.js +23 -0
  43. package/bundled/gateway/node_modules/body-parser/node_modules/qs/lib/index.js +11 -0
  44. package/bundled/gateway/node_modules/body-parser/node_modules/qs/lib/parse.js +296 -0
  45. package/bundled/gateway/node_modules/body-parser/node_modules/qs/lib/stringify.js +351 -0
  46. package/bundled/gateway/node_modules/body-parser/node_modules/qs/lib/utils.js +265 -0
  47. package/bundled/gateway/node_modules/body-parser/node_modules/qs/package.json +91 -0
  48. package/bundled/gateway/node_modules/body-parser/node_modules/qs/test/empty-keys-cases.js +267 -0
  49. package/bundled/gateway/node_modules/body-parser/node_modules/qs/test/parse.js +1170 -0
  50. package/bundled/gateway/node_modules/body-parser/node_modules/qs/test/stringify.js +1298 -0
  51. package/bundled/gateway/node_modules/body-parser/node_modules/qs/test/utils.js +136 -0
  52. package/bundled/gateway/node_modules/body-parser/package.json +10 -9
  53. package/bundled/gateway/node_modules/cookie/index.js +35 -24
  54. package/bundled/gateway/node_modules/cookie/package.json +1 -1
  55. package/bundled/gateway/node_modules/cookie-signature/History.md +1 -5
  56. package/bundled/gateway/node_modules/cookie-signature/index.js +6 -6
  57. package/bundled/gateway/node_modules/cookie-signature/package.json +2 -2
  58. package/bundled/gateway/node_modules/express/History.md +0 -43
  59. package/bundled/gateway/node_modules/express/lib/response.js +0 -1
  60. package/bundled/gateway/node_modules/express/lib/utils.js +1 -2
  61. package/bundled/gateway/node_modules/express/node_modules/qs/.editorconfig +43 -0
  62. package/bundled/gateway/node_modules/express/node_modules/qs/.eslintrc +38 -0
  63. package/bundled/gateway/node_modules/express/node_modules/qs/.github/FUNDING.yml +12 -0
  64. package/bundled/gateway/node_modules/express/node_modules/qs/.nycrc +13 -0
  65. package/bundled/gateway/node_modules/express/node_modules/qs/CHANGELOG.md +546 -0
  66. package/bundled/gateway/node_modules/express/node_modules/qs/LICENSE.md +29 -0
  67. package/bundled/gateway/node_modules/express/node_modules/qs/README.md +625 -0
  68. package/bundled/gateway/node_modules/express/node_modules/qs/dist/qs.js +2054 -0
  69. package/bundled/gateway/node_modules/express/node_modules/qs/lib/formats.js +23 -0
  70. package/bundled/gateway/node_modules/express/node_modules/qs/lib/index.js +11 -0
  71. package/bundled/gateway/node_modules/express/node_modules/qs/lib/parse.js +263 -0
  72. package/bundled/gateway/node_modules/express/node_modules/qs/lib/stringify.js +326 -0
  73. package/bundled/gateway/node_modules/express/node_modules/qs/lib/utils.js +252 -0
  74. package/bundled/gateway/node_modules/express/node_modules/qs/package.json +77 -0
  75. package/bundled/gateway/node_modules/express/node_modules/qs/test/parse.js +855 -0
  76. package/bundled/gateway/node_modules/express/node_modules/qs/test/stringify.js +909 -0
  77. package/bundled/gateway/node_modules/express/node_modules/qs/test/utils.js +136 -0
  78. package/bundled/gateway/node_modules/express/package.json +17 -21
  79. package/bundled/gateway/node_modules/finalhandler/HISTORY.md +0 -21
  80. package/bundled/gateway/node_modules/finalhandler/README.md +2 -2
  81. package/bundled/gateway/node_modules/finalhandler/index.js +2 -7
  82. package/bundled/gateway/node_modules/finalhandler/node_modules/encodeurl/HISTORY.md +14 -0
  83. package/bundled/gateway/node_modules/finalhandler/node_modules/encodeurl/LICENSE +22 -0
  84. package/bundled/gateway/node_modules/finalhandler/node_modules/encodeurl/README.md +128 -0
  85. package/bundled/gateway/node_modules/finalhandler/node_modules/encodeurl/index.js +60 -0
  86. package/bundled/gateway/node_modules/finalhandler/node_modules/encodeurl/package.json +40 -0
  87. package/bundled/gateway/node_modules/finalhandler/package.json +9 -10
  88. package/bundled/gateway/node_modules/http-errors/HISTORY.md +0 -6
  89. package/bundled/gateway/node_modules/http-errors/index.js +3 -4
  90. package/bundled/gateway/node_modules/http-errors/package.json +8 -12
  91. package/bundled/gateway/node_modules/qs/CHANGELOG.md +0 -16
  92. package/bundled/gateway/node_modules/qs/README.md +1 -1
  93. package/bundled/gateway/node_modules/qs/dist/qs.js +15 -15
  94. package/bundled/gateway/node_modules/qs/eslint.config.mjs +0 -1
  95. package/bundled/gateway/node_modules/qs/lib/parse.js +24 -54
  96. package/bundled/gateway/node_modules/qs/lib/stringify.js +4 -11
  97. package/bundled/gateway/node_modules/qs/package.json +3 -3
  98. package/bundled/gateway/node_modules/qs/test/parse.js +0 -135
  99. package/bundled/gateway/node_modules/qs/test/stringify.js +0 -138
  100. package/bundled/gateway/node_modules/qs/test/utils.js +3 -31
  101. package/bundled/gateway/node_modules/raw-body/HISTORY.md +308 -0
  102. package/bundled/gateway/node_modules/raw-body/SECURITY.md +24 -0
  103. package/bundled/gateway/node_modules/raw-body/package.json +7 -5
  104. package/bundled/gateway/node_modules/send/HISTORY.md +7 -19
  105. package/bundled/gateway/node_modules/send/node_modules/encodeurl/HISTORY.md +14 -0
  106. package/bundled/gateway/node_modules/send/node_modules/encodeurl/LICENSE +22 -0
  107. package/bundled/gateway/node_modules/send/node_modules/encodeurl/README.md +128 -0
  108. package/bundled/gateway/node_modules/send/node_modules/encodeurl/index.js +60 -0
  109. package/bundled/gateway/node_modules/send/node_modules/encodeurl/package.json +40 -0
  110. package/bundled/gateway/node_modules/send/package.json +6 -6
  111. package/bundled/gateway/node_modules/serve-static/HISTORY.md +0 -16
  112. package/bundled/gateway/node_modules/serve-static/node_modules/encodeurl/HISTORY.md +14 -0
  113. package/bundled/gateway/node_modules/serve-static/node_modules/encodeurl/LICENSE +22 -0
  114. package/bundled/gateway/node_modules/serve-static/node_modules/encodeurl/README.md +128 -0
  115. package/bundled/gateway/node_modules/serve-static/node_modules/encodeurl/index.js +60 -0
  116. package/bundled/gateway/node_modules/serve-static/node_modules/encodeurl/package.json +40 -0
  117. package/bundled/gateway/node_modules/serve-static/package.json +3 -3
  118. package/bundled/gateway/node_modules/statuses/HISTORY.md +0 -5
  119. package/bundled/gateway/node_modules/statuses/README.md +0 -3
  120. package/bundled/gateway/node_modules/statuses/package.json +7 -7
  121. package/bundled/gateway/package-lock.json +137 -88
  122. package/bundled/gateway/package.json +23 -5
  123. package/bundled/ollama/node_modules/.package-lock.json +104 -85
  124. package/bundled/ollama/node_modules/axios/CHANGELOG.md +0 -42
  125. package/bundled/ollama/node_modules/axios/README.md +237 -237
  126. package/bundled/ollama/node_modules/axios/dist/axios.js +21 -113
  127. package/bundled/ollama/node_modules/axios/dist/axios.js.map +1 -0
  128. package/bundled/ollama/node_modules/axios/dist/axios.min.js +2 -2
  129. package/bundled/ollama/node_modules/axios/dist/axios.min.js.map +1 -1
  130. package/bundled/ollama/node_modules/axios/dist/browser/axios.cjs +15 -121
  131. package/bundled/ollama/node_modules/axios/dist/browser/axios.cjs.map +1 -0
  132. package/bundled/ollama/node_modules/axios/dist/esm/axios.js +15 -121
  133. package/bundled/ollama/node_modules/axios/dist/esm/axios.js.map +1 -0
  134. package/bundled/ollama/node_modules/axios/dist/esm/axios.min.js +2 -2
  135. package/bundled/ollama/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  136. package/bundled/ollama/node_modules/axios/dist/node/axios.cjs +107 -249
  137. package/bundled/ollama/node_modules/axios/dist/node/axios.cjs.map +1 -0
  138. package/bundled/ollama/node_modules/axios/index.d.cts +3 -8
  139. package/bundled/ollama/node_modules/axios/index.d.ts +1 -4
  140. package/bundled/ollama/node_modules/axios/lib/adapters/fetch.js +0 -79
  141. package/bundled/ollama/node_modules/axios/lib/adapters/http.js +118 -62
  142. package/bundled/ollama/node_modules/axios/lib/core/Axios.js +0 -1
  143. package/bundled/ollama/node_modules/axios/lib/core/AxiosHeaders.js +2 -2
  144. package/bundled/ollama/node_modules/axios/lib/defaults/transitional.js +0 -1
  145. package/bundled/ollama/node_modules/axios/lib/env/data.js +1 -1
  146. package/bundled/ollama/node_modules/axios/lib/helpers/buildURL.js +1 -1
  147. package/bundled/ollama/node_modules/axios/lib/helpers/formDataToStream.js +2 -2
  148. package/bundled/ollama/node_modules/axios/lib/helpers/resolveConfig.js +6 -12
  149. package/bundled/ollama/node_modules/axios/lib/helpers/toFormData.js +1 -1
  150. package/bundled/ollama/node_modules/axios/lib/utils.js +2 -23
  151. package/bundled/ollama/node_modules/axios/package.json +13 -29
  152. package/bundled/ollama/node_modules/body-parser/HISTORY.md +0 -14
  153. package/bundled/ollama/node_modules/body-parser/SECURITY.md +25 -0
  154. package/bundled/ollama/node_modules/body-parser/lib/types/json.js +5 -1
  155. package/bundled/ollama/node_modules/body-parser/lib/types/urlencoded.js +15 -7
  156. package/bundled/ollama/node_modules/body-parser/package.json +10 -9
  157. package/bundled/ollama/node_modules/cookie/index.js +35 -24
  158. package/bundled/ollama/node_modules/cookie/package.json +1 -1
  159. package/bundled/ollama/node_modules/cookie-signature/History.md +1 -5
  160. package/bundled/ollama/node_modules/cookie-signature/index.js +6 -6
  161. package/bundled/ollama/node_modules/cookie-signature/package.json +2 -2
  162. package/bundled/ollama/node_modules/express/History.md +0 -43
  163. package/bundled/ollama/node_modules/express/lib/response.js +0 -1
  164. package/bundled/ollama/node_modules/express/lib/utils.js +1 -2
  165. package/bundled/ollama/node_modules/express/package.json +17 -21
  166. package/bundled/ollama/node_modules/finalhandler/HISTORY.md +0 -21
  167. package/bundled/ollama/node_modules/finalhandler/README.md +2 -2
  168. package/bundled/ollama/node_modules/finalhandler/index.js +2 -7
  169. package/bundled/ollama/node_modules/finalhandler/node_modules/encodeurl/HISTORY.md +14 -0
  170. package/bundled/ollama/node_modules/finalhandler/node_modules/encodeurl/LICENSE +22 -0
  171. package/bundled/ollama/node_modules/finalhandler/node_modules/encodeurl/README.md +128 -0
  172. package/bundled/ollama/node_modules/finalhandler/node_modules/encodeurl/index.js +60 -0
  173. package/bundled/ollama/node_modules/finalhandler/node_modules/encodeurl/package.json +40 -0
  174. package/bundled/ollama/node_modules/finalhandler/package.json +9 -10
  175. package/bundled/ollama/node_modules/http-errors/HISTORY.md +0 -6
  176. package/bundled/ollama/node_modules/http-errors/index.js +3 -4
  177. package/bundled/ollama/node_modules/http-errors/package.json +8 -12
  178. package/bundled/ollama/node_modules/qs/CHANGELOG.md +0 -16
  179. package/bundled/ollama/node_modules/qs/README.md +1 -1
  180. package/bundled/ollama/node_modules/qs/dist/qs.js +15 -15
  181. package/bundled/ollama/node_modules/qs/eslint.config.mjs +0 -1
  182. package/bundled/ollama/node_modules/qs/lib/parse.js +24 -54
  183. package/bundled/ollama/node_modules/qs/lib/stringify.js +4 -11
  184. package/bundled/ollama/node_modules/qs/package.json +3 -3
  185. package/bundled/ollama/node_modules/qs/test/parse.js +0 -135
  186. package/bundled/ollama/node_modules/qs/test/stringify.js +0 -138
  187. package/bundled/ollama/node_modules/qs/test/utils.js +3 -31
  188. package/bundled/ollama/node_modules/raw-body/HISTORY.md +308 -0
  189. package/bundled/ollama/node_modules/raw-body/SECURITY.md +24 -0
  190. package/bundled/ollama/node_modules/raw-body/package.json +7 -5
  191. package/bundled/ollama/node_modules/send/HISTORY.md +7 -19
  192. package/bundled/ollama/node_modules/send/node_modules/encodeurl/HISTORY.md +14 -0
  193. package/bundled/ollama/node_modules/send/node_modules/encodeurl/LICENSE +22 -0
  194. package/bundled/ollama/node_modules/send/node_modules/encodeurl/README.md +128 -0
  195. package/bundled/ollama/node_modules/send/node_modules/encodeurl/index.js +60 -0
  196. package/bundled/ollama/node_modules/send/node_modules/encodeurl/package.json +40 -0
  197. package/bundled/ollama/node_modules/send/package.json +6 -6
  198. package/bundled/ollama/node_modules/serve-static/HISTORY.md +0 -16
  199. package/bundled/ollama/node_modules/serve-static/node_modules/encodeurl/HISTORY.md +14 -0
  200. package/bundled/ollama/node_modules/serve-static/node_modules/encodeurl/LICENSE +22 -0
  201. package/bundled/ollama/node_modules/serve-static/node_modules/encodeurl/README.md +128 -0
  202. package/bundled/ollama/node_modules/serve-static/node_modules/encodeurl/index.js +60 -0
  203. package/bundled/ollama/node_modules/serve-static/node_modules/encodeurl/package.json +40 -0
  204. package/bundled/ollama/node_modules/serve-static/package.json +3 -3
  205. package/bundled/ollama/node_modules/statuses/HISTORY.md +0 -5
  206. package/bundled/ollama/node_modules/statuses/README.md +0 -3
  207. package/bundled/ollama/node_modules/statuses/package.json +7 -7
  208. package/bundled/ollama/package-lock.json +107 -88
  209. package/bundled/ollama/package.json +24 -4
  210. package/node_modules/@sap-llm-gateway/service-key-parser/package.json +1 -1
  211. package/package.json +2 -2
  212. package/bundled/gateway/node_modules/axios/lib/helpers/Http2Sessions.js +0 -119
  213. package/bundled/ollama/node_modules/axios/lib/helpers/Http2Sessions.js +0 -119
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "axios",
3
- "version": "1.17.0",
3
+ "version": "1.16.1",
4
4
  "description": "Promise based HTTP client for the browser and node.js",
5
5
  "main": "./dist/node/axios.cjs",
6
6
  "module": "./index.js",
@@ -86,8 +86,8 @@
86
86
  "Justin Beckwith (https://github.com/JustinBeckwith)",
87
87
  "Martti Laine (https://github.com/codeclown)",
88
88
  "Xianming Zhong (https://github.com/chinesedfan)",
89
- "Shaan Majid (https://github.com/shaanmajid)",
90
89
  "Willian Agostini (https://github.com/WillianAgostini)",
90
+ "Shaan Majid (https://github.com/shaanmajid)",
91
91
  "Remco Haszing (https://github.com/remcohaszing)",
92
92
  "Rikki Gibson (https://github.com/RikkiGibson)"
93
93
  ],
@@ -97,22 +97,6 @@
97
97
  "url": "https://github.com/axios/axios/issues"
98
98
  },
99
99
  "homepage": "https://axios-http.com",
100
- "files": [
101
- "index.js",
102
- "index.d.ts",
103
- "index.d.cts",
104
- "CHANGELOG.md",
105
- "MIGRATION_GUIDE.md",
106
- "lib/",
107
- "dist/axios.js",
108
- "dist/axios.min.js",
109
- "dist/axios.min.js.map",
110
- "dist/esm/axios.js",
111
- "dist/esm/axios.min.js",
112
- "dist/esm/axios.min.js.map",
113
- "dist/browser/axios.cjs",
114
- "dist/node/axios.cjs"
115
- ],
116
100
  "scripts": {
117
101
  "build": "gulp clear && cross-env NODE_ENV=production rollup -c -m",
118
102
  "version": "npm run build && git add package.json",
@@ -144,9 +128,9 @@
144
128
  },
145
129
  "devDependencies": {
146
130
  "@babel/core": "^7.29.0",
147
- "@babel/preset-env": "^7.29.5",
148
- "@commitlint/cli": "^21.0.1",
149
- "@commitlint/config-conventional": "^21.0.1",
131
+ "@babel/preset-env": "^7.29.2",
132
+ "@commitlint/cli": "^20.5.0",
133
+ "@commitlint/config-conventional": "^20.5.0",
150
134
  "@eslint/js": "^10.0.1",
151
135
  "@rollup/plugin-alias": "^6.0.0",
152
136
  "@rollup/plugin-babel": "^7.0.0",
@@ -154,34 +138,34 @@
154
138
  "@rollup/plugin-json": "^6.1.0",
155
139
  "@rollup/plugin-node-resolve": "^16.0.3",
156
140
  "@rollup/plugin-terser": "^1.0.0",
157
- "@vitest/browser": "^4.1.7",
158
- "@vitest/browser-playwright": "^4.1.7",
141
+ "@vitest/browser": "^4.1.5",
142
+ "@vitest/browser-playwright": "^4.1.5",
159
143
  "abortcontroller-polyfill": "^1.7.8",
160
144
  "acorn": "^8.16.0",
161
145
  "body-parser": "^2.2.2",
162
146
  "chalk": "^5.6.2",
163
147
  "cross-env": "^10.1.0",
164
148
  "dev-null": "^0.1.1",
165
- "eslint": "^10.4.0",
149
+ "eslint": "^10.2.1",
166
150
  "express": "^5.2.1",
167
151
  "formdata-node": "^6.0.3",
168
152
  "formidable": "^3.5.4",
169
153
  "fs-extra": "^11.3.4",
170
154
  "get-stream": "^9.0.1",
171
- "globals": "^17.6.0",
155
+ "globals": "^17.5.0",
172
156
  "gulp": "^5.0.1",
173
157
  "husky": "^9.1.7",
174
- "lint-staged": "^17.0.5",
158
+ "lint-staged": "^16.4.0",
175
159
  "minimist": "^1.2.8",
176
160
  "multer": "^2.1.1",
177
- "playwright": "^1.60.0",
161
+ "playwright": "^1.59.1",
178
162
  "prettier": "^3.8.3",
179
- "rollup": "^4.60.4",
163
+ "rollup": "^4.60.2",
180
164
  "rollup-plugin-bundle-size": "^1.0.3",
181
165
  "selfsigned": "^5.5.0",
182
166
  "stream-throttle": "^0.1.3",
183
167
  "typescript": "^5.9.3",
184
- "vitest": "^4.1.7"
168
+ "vitest": "^4.1.5"
185
169
  },
186
170
  "commitlint": {
187
171
  "rules": {
@@ -1,17 +1,3 @@
1
- 1.20.5 / 2026-04-24
2
- ===================
3
- * refactor(json): simplify strict mode error string construction
4
- * fix: extended urlencoded parsing of arrays with >100 elements (#716)
5
- * deps: qs@~6.15.1
6
-
7
- 1.20.4 / 2025-12-01
8
- ===================
9
-
10
- * deps: qs@~6.14.0
11
- * deps: use tilde notation for dependencies
12
- * deps: http-errors@~2.0.1
13
- * deps: raw-body@~2.5.3
14
-
15
1
  1.20.3 / 2024-09-10
16
2
  ===================
17
3
 
@@ -0,0 +1,25 @@
1
+ # Security Policies and Procedures
2
+
3
+ ## Reporting a Bug
4
+
5
+ The Express team and community take all security bugs seriously. Thank you
6
+ for improving the security of Express. We appreciate your efforts and
7
+ responsible disclosure and will make every effort to acknowledge your
8
+ contributions.
9
+
10
+ Report security bugs by emailing the current owner(s) of `body-parser`. This
11
+ information can be found in the npm registry using the command
12
+ `npm owner ls body-parser`.
13
+ If unsure or unable to get the information from the above, open an issue
14
+ in the [project issue tracker](https://github.com/expressjs/body-parser/issues)
15
+ asking for the current contact information.
16
+
17
+ To ensure the timely response to your report, please ensure that the entirety
18
+ of the report is contained within the email body and not solely behind a web
19
+ link or an attachment.
20
+
21
+ At least one owner will acknowledge your email within 48 hours, and will send a
22
+ more detailed response within 48 hours indicating the next steps in handling
23
+ your report. After the initial reply to your report, the owners will
24
+ endeavor to keep you informed of the progress towards a fix and full
25
+ announcement, and may ask for additional information or guidance.
@@ -158,7 +158,11 @@ function createStrictSyntaxError (str, char) {
158
158
  var partial = ''
159
159
 
160
160
  if (index !== -1) {
161
- partial = str.substring(0, index) + new Array(str.length - index + 1).join(JSON_SYNTAX_CHAR)
161
+ partial = str.substring(0, index) + JSON_SYNTAX_CHAR
162
+
163
+ for (var i = index + 1; i < str.length; i++) {
164
+ partial += JSON_SYNTAX_CHAR
165
+ }
162
166
  }
163
167
 
164
168
  try {
@@ -55,6 +55,9 @@ function urlencoded (options) {
55
55
  : opts.limit
56
56
  var type = opts.type || 'application/x-www-form-urlencoded'
57
57
  var verify = opts.verify || false
58
+ var depth = typeof opts.depth !== 'number'
59
+ ? Number(opts.depth || 32)
60
+ : opts.depth
58
61
 
59
62
  if (verify !== false && typeof verify !== 'function') {
60
63
  throw new TypeError('option verify must be function')
@@ -118,7 +121,8 @@ function urlencoded (options) {
118
121
  encoding: charset,
119
122
  inflate: inflate,
120
123
  limit: limit,
121
- verify: verify
124
+ verify: verify,
125
+ depth: depth
122
126
  })
123
127
  }
124
128
  }
@@ -133,7 +137,10 @@ function extendedparser (options) {
133
137
  var parameterLimit = options.parameterLimit !== undefined
134
138
  ? options.parameterLimit
135
139
  : 1000
136
- var depth = options.depth !== undefined ? options.depth : 32
140
+
141
+ var depth = typeof options.depth !== 'number'
142
+ ? Number(options.depth || 32)
143
+ : options.depth
137
144
  var parse = parser('qs')
138
145
 
139
146
  if (isNaN(parameterLimit) || parameterLimit < 1) {
@@ -206,15 +213,16 @@ function getCharset (req) {
206
213
 
207
214
  function parameterCount (body, limit) {
208
215
  var count = 0
209
- var index = -1
216
+ var index = 0
210
217
 
211
- do {
218
+ while ((index = body.indexOf('&', index)) !== -1) {
212
219
  count++
213
- if (count > limit) {
220
+ index++
221
+
222
+ if (count === limit) {
214
223
  return undefined
215
224
  }
216
- index = body.indexOf('&', index + 1)
217
- } while (index !== -1)
225
+ }
218
226
 
219
227
  return count
220
228
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "body-parser",
3
3
  "description": "Node.js body parsing middleware",
4
- "version": "1.20.5",
4
+ "version": "1.20.3",
5
5
  "contributors": [
6
6
  "Douglas Christopher Wilson <doug@somethingdoug.com>",
7
7
  "Jonathan Ong <me@jongleberry.com> (http://jongleberry.com)"
@@ -9,18 +9,18 @@
9
9
  "license": "MIT",
10
10
  "repository": "expressjs/body-parser",
11
11
  "dependencies": {
12
- "bytes": "~3.1.2",
12
+ "bytes": "3.1.2",
13
13
  "content-type": "~1.0.5",
14
14
  "debug": "2.6.9",
15
15
  "depd": "2.0.0",
16
- "destroy": "~1.2.0",
17
- "http-errors": "~2.0.1",
18
- "iconv-lite": "~0.4.24",
19
- "on-finished": "~2.4.1",
20
- "qs": "~6.15.1",
21
- "raw-body": "~2.5.3",
16
+ "destroy": "1.2.0",
17
+ "http-errors": "2.0.0",
18
+ "iconv-lite": "0.4.24",
19
+ "on-finished": "2.4.1",
20
+ "qs": "6.13.0",
21
+ "raw-body": "2.5.2",
22
22
  "type-is": "~1.6.18",
23
- "unpipe": "~1.0.0"
23
+ "unpipe": "1.0.0"
24
24
  },
25
25
  "devDependencies": {
26
26
  "eslint": "8.34.0",
@@ -40,6 +40,7 @@
40
40
  "lib/",
41
41
  "LICENSE",
42
42
  "HISTORY.md",
43
+ "SECURITY.md",
43
44
  "index.js"
44
45
  ],
45
46
  "engines": {
@@ -21,7 +21,6 @@ exports.serialize = serialize;
21
21
  */
22
22
 
23
23
  var __toString = Object.prototype.toString
24
- var __hasOwnProperty = Object.prototype.hasOwnProperty
25
24
 
26
25
  /**
27
26
  * RegExp to match cookie-name in RFC 6265 sec 4.1.1
@@ -65,15 +64,9 @@ var cookieValueRegExp = /^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u00
65
64
  * <letter> = any one of the 52 alphabetic characters A through Z in
66
65
  * upper case and a through z in lower case
67
66
  * <digit> = any one of the ten digits 0 through 9
68
- *
69
- * Keep support for leading dot: https://github.com/jshttp/cookie/issues/173
70
- *
71
- * > (Note that a leading %x2E ("."), if present, is ignored even though that
72
- * character is not permitted, but a trailing %x2E ("."), if present, will
73
- * cause the user agent to ignore the attribute.)
74
67
  */
75
68
 
76
- var domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;
69
+ var domainValueRegExp = /^([a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;
77
70
 
78
71
  /**
79
72
  * RegExp to match path-value in RFC 6265 sec 4.1.1
@@ -92,12 +85,12 @@ var pathValueRegExp = /^[\u0020-\u003A\u003D-\u007E]*$/;
92
85
  * The object has the various cookies as keys(names) => values
93
86
  *
94
87
  * @param {string} str
95
- * @param {object} [opt]
88
+ * @param {object} [options]
96
89
  * @return {object}
97
90
  * @public
98
91
  */
99
92
 
100
- function parse(str, opt) {
93
+ function parse(str, options) {
101
94
  if (typeof str !== 'string') {
102
95
  throw new TypeError('argument str must be a string');
103
96
  }
@@ -105,16 +98,21 @@ function parse(str, opt) {
105
98
  var obj = {};
106
99
  var len = str.length;
107
100
  // RFC 6265 sec 4.1.1, RFC 2616 2.2 defines a cookie name consists of one char minimum, plus '='.
108
- if (len < 2) return obj;
101
+ var max = len - 2;
102
+ if (max < 0) return obj;
109
103
 
110
- var dec = (opt && opt.decode) || decode;
104
+ var dec = (options && options.decode) || decode;
111
105
  var index = 0;
112
106
  var eqIdx = 0;
113
107
  var endIdx = 0;
114
108
 
115
109
  do {
116
110
  eqIdx = str.indexOf('=', index);
117
- if (eqIdx === -1) break; // No more cookie pairs.
111
+
112
+ // no more cookie pairs
113
+ if (eqIdx === -1) {
114
+ break;
115
+ }
118
116
 
119
117
  endIdx = str.indexOf(';', index);
120
118
 
@@ -131,7 +129,7 @@ function parse(str, opt) {
131
129
  var key = str.slice(keyStartIdx, keyEndIdx);
132
130
 
133
131
  // only assign once
134
- if (!__hasOwnProperty.call(obj, key)) {
132
+ if (undefined === obj[key]) {
135
133
  var valStartIdx = startIndex(str, eqIdx + 1, endIdx);
136
134
  var valEndIdx = endIndex(str, endIdx, valStartIdx);
137
135
 
@@ -145,7 +143,7 @@ function parse(str, opt) {
145
143
  }
146
144
 
147
145
  index = endIdx + 1
148
- } while (index < len);
146
+ } while (index < max);
149
147
 
150
148
  return obj;
151
149
  }
@@ -177,13 +175,14 @@ function endIndex(str, index, min) {
177
175
  *
178
176
  * @param {string} name
179
177
  * @param {string} val
180
- * @param {object} [opt]
178
+ * @param {object} [options]
181
179
  * @return {string}
182
180
  * @public
183
181
  */
184
182
 
185
- function serialize(name, val, opt) {
186
- var enc = (opt && opt.encode) || encodeURIComponent;
183
+ function serialize(name, val, options) {
184
+ var opt = options || {};
185
+ var enc = opt.encode || encode;
187
186
 
188
187
  if (typeof enc !== 'function') {
189
188
  throw new TypeError('option encode is invalid');
@@ -195,21 +194,20 @@ function serialize(name, val, opt) {
195
194
 
196
195
  var value = enc(val);
197
196
 
198
- if (!cookieValueRegExp.test(value)) {
197
+ if (value && !cookieValueRegExp.test(value)) {
199
198
  throw new TypeError('argument val is invalid');
200
199
  }
201
200
 
202
201
  var str = name + '=' + value;
203
- if (!opt) return str;
204
202
 
205
203
  if (null != opt.maxAge) {
206
- var maxAge = Math.floor(opt.maxAge);
204
+ var maxAge = opt.maxAge - 0;
207
205
 
208
206
  if (!isFinite(maxAge)) {
209
207
  throw new TypeError('option maxAge is invalid')
210
208
  }
211
209
 
212
- str += '; Max-Age=' + maxAge;
210
+ str += '; Max-Age=' + Math.floor(maxAge);
213
211
  }
214
212
 
215
213
  if (opt.domain) {
@@ -252,7 +250,8 @@ function serialize(name, val, opt) {
252
250
 
253
251
  if (opt.priority) {
254
252
  var priority = typeof opt.priority === 'string'
255
- ? opt.priority.toLowerCase() : opt.priority;
253
+ ? opt.priority.toLowerCase()
254
+ : opt.priority
256
255
 
257
256
  switch (priority) {
258
257
  case 'low':
@@ -307,6 +306,17 @@ function decode (str) {
307
306
  : str
308
307
  }
309
308
 
309
+ /**
310
+ * URL-encode value.
311
+ *
312
+ * @param {string} val
313
+ * @returns {string}
314
+ */
315
+
316
+ function encode (val) {
317
+ return encodeURIComponent(val)
318
+ }
319
+
310
320
  /**
311
321
  * Determine if value is a Date.
312
322
  *
@@ -315,7 +325,8 @@ function decode (str) {
315
325
  */
316
326
 
317
327
  function isDate (val) {
318
- return __toString.call(val) === '[object Date]';
328
+ return __toString.call(val) === '[object Date]' ||
329
+ val instanceof Date
319
330
  }
320
331
 
321
332
  /**
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "cookie",
3
3
  "description": "HTTP server cookie parsing and serialization",
4
- "version": "0.7.2",
4
+ "version": "0.7.0",
5
5
  "author": "Roman Shtylman <shtylman@gmail.com>",
6
6
  "contributors": [
7
7
  "Douglas Christopher Wilson <doug@somethingdoug.com>"
@@ -1,14 +1,10 @@
1
- 1.0.7 / 2023-04-12
2
- ==================
3
-
4
- * backport the buffer support from the 1.2.x release branch (thanks @FadhiliNjagi!)
5
-
6
1
  1.0.6 / 2015-02-03
7
2
  ==================
8
3
 
9
4
  * use `npm test` instead of `make test` to run tests
10
5
  * clearer assertion messages when checking input
11
6
 
7
+
12
8
  1.0.5 / 2014-09-05
13
9
  ==================
14
10
 
@@ -8,14 +8,14 @@ var crypto = require('crypto');
8
8
  * Sign the given `val` with `secret`.
9
9
  *
10
10
  * @param {String} val
11
- * @param {String|NodeJS.ArrayBufferView|crypto.KeyObject} secret
11
+ * @param {String} secret
12
12
  * @return {String}
13
13
  * @api private
14
14
  */
15
15
 
16
16
  exports.sign = function(val, secret){
17
- if ('string' !== typeof val) throw new TypeError("Cookie value must be provided as a string.");
18
- if (null == secret) throw new TypeError("Secret key must be provided.");
17
+ if ('string' != typeof val) throw new TypeError("Cookie value must be provided as a string.");
18
+ if ('string' != typeof secret) throw new TypeError("Secret string must be provided.");
19
19
  return val + '.' + crypto
20
20
  .createHmac('sha256', secret)
21
21
  .update(val)
@@ -28,14 +28,14 @@ exports.sign = function(val, secret){
28
28
  * returning `false` if the signature is invalid.
29
29
  *
30
30
  * @param {String} val
31
- * @param {String|NodeJS.ArrayBufferView|crypto.KeyObject} secret
31
+ * @param {String} secret
32
32
  * @return {String|Boolean}
33
33
  * @api private
34
34
  */
35
35
 
36
36
  exports.unsign = function(val, secret){
37
- if ('string' !== typeof val) throw new TypeError("Signed cookie string must be provided.");
38
- if (null == secret) throw new TypeError("Secret key must be provided.");
37
+ if ('string' != typeof val) throw new TypeError("Signed cookie string must be provided.");
38
+ if ('string' != typeof secret) throw new TypeError("Secret string must be provided.");
39
39
  var str = val.slice(0, val.lastIndexOf('.'))
40
40
  , mac = exports.sign(str, secret);
41
41
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cookie-signature",
3
- "version": "1.0.7",
3
+ "version": "1.0.6",
4
4
  "description": "Sign and unsign cookies",
5
5
  "keywords": ["cookie", "sign", "unsign"],
6
6
  "author": "TJ Holowaychuk <tj@learnboost.com>",
@@ -15,4 +15,4 @@
15
15
  "test": "mocha --require should --reporter spec"
16
16
  },
17
17
  "main": "index"
18
- }
18
+ }
@@ -1,46 +1,3 @@
1
- 4.22.2 / 2026-05-011
2
- ==========
3
-
4
- * fix: restore >20 array parsing for `req.query` repeated keys ([`8d09bfe6`](https://github.com/expressjs/express/commit/8d09bfe6d88983da5c3e12cfdd54782c4dc675db))
5
- * This also unifies array-cap behavior across notations. Indexed notation (`a[0]=...`) was historically capped at qs's default `arrayLimit` of 20 even in older qs versions; after this change it also allows up to 1000 items.
6
- * deps: qs@~6.15.1
7
- * deps: body-parser@~1.20.5
8
-
9
- 4.22.1 / 2025-12-01
10
- ==========
11
-
12
- * Revert security fix for [CVE-2024-51999](https://www.cve.org/CVERecord?id=CVE-2024-51999) ([GHSA-pj86-cfqh-vqx6](https://github.com/expressjs/express/security/advisories/GHSA-pj86-cfqh-vqx6))
13
- * The prior release (4.22.0) included an erroneous breaking change related to the extended query parser. There is no actual security vulnerability associated with this behavior (CVE-2024-51999 has been rejected). The change has been fully reverted in this release.
14
-
15
- 4.22.0 / 2025-12-01
16
- ==========
17
- * Security fix for [CVE-2024-51999](https://www.cve.org/CVERecord?id=CVE-2024-51999) ([GHSA-pj86-cfqh-vqx6](https://github.com/expressjs/express/security/advisories/GHSA-pj86-cfqh-vqx6))
18
- * deps: use tilde notation for dependencies
19
- * deps: qs@6.14.0
20
-
21
- 4.21.2 / 2024-11-06
22
- ==========
23
-
24
- * deps: path-to-regexp@0.1.12
25
- - Fix backtracking protection
26
- * deps: path-to-regexp@0.1.11
27
- - Throws an error on invalid path values
28
-
29
- 4.21.1 / 2024-10-08
30
- ==========
31
-
32
- * Backported a fix for [CVE-2024-47764](https://nvd.nist.gov/vuln/detail/CVE-2024-47764)
33
-
34
-
35
- 4.21.0 / 2024-09-11
36
- ==========
37
-
38
- * Deprecate `res.location("back")` and `res.redirect("back")` magic string
39
- * deps: serve-static@1.16.2
40
- * includes send@0.19.0
41
- * deps: finalhandler@1.3.1
42
- * deps: qs@6.13.0
43
-
44
1
  4.20.0 / 2024-09-10
45
2
  ==========
46
3
  * deps: serve-static@0.16.0
@@ -916,7 +916,6 @@ res.location = function location(url) {
916
916
 
917
917
  // "back" is an alias for the referrer
918
918
  if (url === 'back') {
919
- deprecate('res.location("back"): use res.location(req.get("Referrer") || "/") and refer to https://dub.sh/security-redirect for best practices');
920
919
  loc = this.req.get('Referrer') || '/';
921
920
  } else {
922
921
  loc = String(url);
@@ -287,8 +287,7 @@ function createETagGenerator (options) {
287
287
 
288
288
  function parseExtendedQueryString(str) {
289
289
  return qs.parse(str, {
290
- allowPrototypes: true,
291
- arrayLimit: 1000
290
+ allowPrototypes: true
292
291
  });
293
292
  }
294
293
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "express",
3
3
  "description": "Fast, unopinionated, minimalist web framework",
4
- "version": "4.22.2",
4
+ "version": "4.20.0",
5
5
  "author": "TJ Holowaychuk <tj@vision-media.ca>",
6
6
  "contributors": [
7
7
  "Aaron Heckmann <aaron.heckmann+github@gmail.com>",
@@ -15,10 +15,6 @@
15
15
  "license": "MIT",
16
16
  "repository": "expressjs/express",
17
17
  "homepage": "http://expressjs.com/",
18
- "funding": {
19
- "type": "opencollective",
20
- "url": "https://opencollective.com/express"
21
- },
22
18
  "keywords": [
23
19
  "express",
24
20
  "framework",
@@ -34,32 +30,32 @@
34
30
  "dependencies": {
35
31
  "accepts": "~1.3.8",
36
32
  "array-flatten": "1.1.1",
37
- "body-parser": "~1.20.5",
38
- "content-disposition": "~0.5.4",
33
+ "body-parser": "1.20.3",
34
+ "content-disposition": "0.5.4",
39
35
  "content-type": "~1.0.4",
40
- "cookie": "~0.7.1",
41
- "cookie-signature": "~1.0.6",
36
+ "cookie": "0.6.0",
37
+ "cookie-signature": "1.0.6",
42
38
  "debug": "2.6.9",
43
39
  "depd": "2.0.0",
44
40
  "encodeurl": "~2.0.0",
45
41
  "escape-html": "~1.0.3",
46
42
  "etag": "~1.8.1",
47
- "finalhandler": "~1.3.1",
48
- "fresh": "~0.5.2",
49
- "http-errors": "~2.0.0",
43
+ "finalhandler": "1.2.0",
44
+ "fresh": "0.5.2",
45
+ "http-errors": "2.0.0",
50
46
  "merge-descriptors": "1.0.3",
51
47
  "methods": "~1.1.2",
52
- "on-finished": "~2.4.1",
48
+ "on-finished": "2.4.1",
53
49
  "parseurl": "~1.3.3",
54
- "path-to-regexp": "~0.1.12",
50
+ "path-to-regexp": "0.1.10",
55
51
  "proxy-addr": "~2.0.7",
56
- "qs": "~6.15.1",
52
+ "qs": "6.11.0",
57
53
  "range-parser": "~1.2.1",
58
54
  "safe-buffer": "5.2.1",
59
- "send": "~0.19.0",
60
- "serve-static": "~1.16.2",
55
+ "send": "0.19.0",
56
+ "serve-static": "1.16.0",
61
57
  "setprototypeof": "1.2.0",
62
- "statuses": "~2.0.1",
58
+ "statuses": "2.0.1",
63
59
  "type-is": "~1.6.18",
64
60
  "utils-merge": "1.0.1",
65
61
  "vary": "~1.1.2"
@@ -75,11 +71,11 @@
75
71
  "hbs": "4.2.0",
76
72
  "marked": "0.7.0",
77
73
  "method-override": "3.0.0",
78
- "mocha": "^6.2.2",
74
+ "mocha": "10.2.0",
79
75
  "morgan": "1.10.0",
80
- "nyc": "^14.1.1",
76
+ "nyc": "15.1.0",
81
77
  "pbkdf2-password": "1.2.1",
82
- "supertest": "^6.1.6",
78
+ "supertest": "6.3.0",
83
79
  "vhost": "~3.0.2"
84
80
  },
85
81
  "engines": {
@@ -1,24 +1,3 @@
1
- v1.3.2 / 2025-12-01
2
- ==================
3
-
4
- * deps: use tilde notation for dependencies
5
- * deps: statuses@~2.0.2
6
-
7
- v1.3.1 / 2024-09-11
8
- ==================
9
-
10
- * deps: encodeurl@~2.0.0
11
-
12
- v1.3.0 / 2024-09-03
13
- ==================
14
-
15
- * ignore status message for HTTP/2 (#53)
16
-
17
- v1.2.1 / 2024-09-02
18
- ==================
19
-
20
- * Gracefully handle when handling an error and socket is null
21
-
22
1
  1.2.0 / 2022-03-22
23
2
  ==================
24
3