@contrast/agent-bundle 5.42.0 → 5.46.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 (484) hide show
  1. package/README.md +1 -10
  2. package/node_modules/@contrast/agent/README.md +1 -10
  3. package/node_modules/@contrast/agent/package.json +12 -12
  4. package/node_modules/@contrast/agent-swc-plugin/package.json +3 -3
  5. package/node_modules/@contrast/agentify/lib/rewrite-hooks.js +3 -3
  6. package/node_modules/@contrast/agentify/lib/utils.js +13 -7
  7. package/node_modules/@contrast/agentify/package.json +17 -17
  8. package/node_modules/@contrast/architecture-components/package.json +6 -6
  9. package/node_modules/@contrast/assess/lib/dataflow/propagation/install/ejs/template.js +1 -1
  10. package/node_modules/@contrast/assess/lib/dataflow/propagation/install/pug/index.js +1 -1
  11. package/node_modules/@contrast/assess/lib/dataflow/sinks/install/http/server-response.js +1 -12
  12. package/node_modules/@contrast/assess/lib/dataflow/sinks/install/restify.js +1 -1
  13. package/node_modules/@contrast/assess/lib/dataflow/sources/handler.js +21 -24
  14. package/node_modules/@contrast/assess/lib/dataflow/sources/install/http.js +1 -1
  15. package/node_modules/@contrast/assess/lib/dataflow/tracker.js +1 -1
  16. package/node_modules/@contrast/assess/lib/get-source-context.js +11 -22
  17. package/node_modules/@contrast/assess/lib/index.js +1 -1
  18. package/node_modules/@contrast/assess/lib/make-source-context.js +5 -10
  19. package/node_modules/@contrast/assess/lib/policy.js +400 -0
  20. package/node_modules/@contrast/assess/lib/response-scanning/handlers/index.js +10 -14
  21. package/node_modules/@contrast/assess/lib/response-scanning/install/http.js +0 -12
  22. package/node_modules/@contrast/assess/lib/session-configuration/handlers.js +1 -1
  23. package/node_modules/@contrast/assess/package.json +14 -14
  24. package/node_modules/@contrast/code-events/binding.gyp +1 -1
  25. package/node_modules/@contrast/code-events/package.json +11 -9
  26. package/node_modules/@contrast/code-events/prebuilds/darwin-x64+arm64/@contrast+code-events.abi108.node +0 -0
  27. package/node_modules/@contrast/code-events/prebuilds/darwin-x64+arm64/@contrast+code-events.abi115.node +0 -0
  28. package/node_modules/@contrast/code-events/prebuilds/darwin-x64+arm64/@contrast+code-events.abi127.node +0 -0
  29. package/node_modules/@contrast/code-events/prebuilds/darwin-x64+arm64/{@contrast+code-events.abi93.node → @contrast+code-events.abi137.node} +0 -0
  30. package/node_modules/@contrast/code-events/prebuilds/linux-arm64/@contrast+code-events.abi108.armv8.node +0 -0
  31. package/node_modules/@contrast/code-events/prebuilds/linux-arm64/@contrast+code-events.abi115.armv8.node +0 -0
  32. package/node_modules/@contrast/code-events/prebuilds/linux-arm64/@contrast+code-events.abi127.armv8.node +0 -0
  33. package/node_modules/@contrast/code-events/prebuilds/linux-arm64/@contrast+code-events.abi137.armv8.node +0 -0
  34. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi108.glibc.node +0 -0
  35. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi108.musl.node +0 -0
  36. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi115.glibc.node +0 -0
  37. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi115.musl.node +0 -0
  38. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi127.glibc.node +0 -0
  39. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi127.musl.node +0 -0
  40. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi137.glibc.node +0 -0
  41. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi137.musl.node +0 -0
  42. package/node_modules/@contrast/code-events/prebuilds/win32-x64/@contrast+code-events.abi108.node +0 -0
  43. package/node_modules/@contrast/code-events/prebuilds/win32-x64/@contrast+code-events.abi115.node +0 -0
  44. package/node_modules/@contrast/code-events/prebuilds/win32-x64/@contrast+code-events.abi127.node +0 -0
  45. package/node_modules/@contrast/code-events/prebuilds/win32-x64/@contrast+code-events.abi137.node +0 -0
  46. package/node_modules/@contrast/common/lib/constants.d.ts +1 -1
  47. package/node_modules/@contrast/common/lib/constants.js +1 -1
  48. package/node_modules/@contrast/common/lib/index.js +15 -15
  49. package/node_modules/@contrast/common/lib/primordials.d.ts +22 -20
  50. package/node_modules/@contrast/common/lib/types.d.ts +18 -6
  51. package/node_modules/@contrast/common/package.json +2 -2
  52. package/node_modules/@contrast/config/lib/options.js +37 -4
  53. package/node_modules/@contrast/config/package.json +4 -4
  54. package/node_modules/@contrast/core/lib/app-info.js +53 -74
  55. package/node_modules/@contrast/core/lib/index.d.ts +17 -1
  56. package/node_modules/@contrast/core/lib/sensitive-data-masking/index.js +33 -5
  57. package/node_modules/@contrast/core/package.json +10 -9
  58. package/node_modules/@contrast/deadzones/package.json +6 -6
  59. package/node_modules/@contrast/dep-hooks/lib/export-handler-registry.d.ts +17 -13
  60. package/node_modules/@contrast/dep-hooks/lib/export-handler-registry.js +16 -4
  61. package/node_modules/@contrast/dep-hooks/lib/export-hook-descriptor.d.ts +2 -2
  62. package/node_modules/@contrast/dep-hooks/lib/export-hook-descriptor.js +2 -3
  63. package/node_modules/@contrast/dep-hooks/lib/handler-invoker.d.ts +6 -6
  64. package/node_modules/@contrast/dep-hooks/lib/handler-invoker.js +0 -1
  65. package/node_modules/@contrast/dep-hooks/lib/helpers.d.ts +0 -7
  66. package/node_modules/@contrast/dep-hooks/lib/helpers.js +2 -18
  67. package/node_modules/@contrast/dep-hooks/lib/index.d.ts +17 -12
  68. package/node_modules/@contrast/dep-hooks/lib/index.js +5 -3
  69. package/node_modules/@contrast/dep-hooks/lib/package-finder.d.ts +2 -1
  70. package/node_modules/@contrast/dep-hooks/lib/package-finder.js +6 -6
  71. package/node_modules/@contrast/dep-hooks/package.json +4 -3
  72. package/node_modules/@contrast/distringuish/package.json +7 -6
  73. package/node_modules/@contrast/distringuish/prebuilds/darwin-x64+arm64/@contrast+distringuish.abi108.node +0 -0
  74. package/node_modules/@contrast/distringuish/prebuilds/darwin-x64+arm64/@contrast+distringuish.abi115.node +0 -0
  75. package/node_modules/@contrast/distringuish/prebuilds/darwin-x64+arm64/@contrast+distringuish.abi127.node +0 -0
  76. package/node_modules/@contrast/distringuish/prebuilds/darwin-x64+arm64/{@contrast+distringuish.abi93.node → @contrast+distringuish.abi137.node} +0 -0
  77. package/node_modules/@contrast/distringuish/prebuilds/linux-arm64/@contrast+distringuish.abi108.armv8.node +0 -0
  78. package/node_modules/@contrast/distringuish/prebuilds/linux-arm64/@contrast+distringuish.abi115.armv8.node +0 -0
  79. package/node_modules/@contrast/distringuish/prebuilds/linux-arm64/@contrast+distringuish.abi127.armv8.node +0 -0
  80. package/node_modules/@contrast/distringuish/prebuilds/linux-arm64/@contrast+distringuish.abi137.armv8.node +0 -0
  81. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi108.glibc.node +0 -0
  82. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi108.musl.node +0 -0
  83. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi115.glibc.node +0 -0
  84. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi115.musl.node +0 -0
  85. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi127.glibc.node +0 -0
  86. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi127.musl.node +0 -0
  87. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi137.glibc.node +0 -0
  88. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi137.musl.node +0 -0
  89. package/node_modules/@contrast/distringuish/prebuilds/win32-x64/@contrast+distringuish.abi108.node +0 -0
  90. package/node_modules/@contrast/distringuish/prebuilds/win32-x64/@contrast+distringuish.abi115.node +0 -0
  91. package/node_modules/@contrast/distringuish/prebuilds/win32-x64/@contrast+distringuish.abi127.node +0 -0
  92. package/node_modules/@contrast/distringuish/prebuilds/win32-x64/@contrast+distringuish.abi137.node +0 -0
  93. package/node_modules/@contrast/esm-hooks/lib/debug-methods.mjs +4 -4
  94. package/node_modules/@contrast/esm-hooks/lib/get-file-type.mjs +2 -9
  95. package/node_modules/@contrast/esm-hooks/lib/hooks.mjs +0 -2
  96. package/node_modules/@contrast/esm-hooks/lib/redirects/builtin/fs/promises.mjs +2 -0
  97. package/node_modules/@contrast/esm-hooks/lib/redirects/builtin/fs.mjs +3 -0
  98. package/node_modules/@contrast/esm-hooks/lib/redirects/builtin/util.mjs +1 -0
  99. package/node_modules/@contrast/esm-hooks/package.json +7 -7
  100. package/node_modules/@contrast/fn-inspect/package.json +9 -5
  101. package/node_modules/@contrast/fn-inspect/prebuilds/darwin-x64+arm64/@contrast+fn-inspect.abi108.node +0 -0
  102. package/node_modules/@contrast/fn-inspect/prebuilds/darwin-x64+arm64/@contrast+fn-inspect.abi115.node +0 -0
  103. package/node_modules/@contrast/fn-inspect/prebuilds/darwin-x64+arm64/@contrast+fn-inspect.abi127.node +0 -0
  104. package/node_modules/@contrast/fn-inspect/prebuilds/darwin-x64+arm64/{@contrast+fn-inspect.abi93.node → @contrast+fn-inspect.abi137.node} +0 -0
  105. package/node_modules/@contrast/fn-inspect/prebuilds/linux-arm64/@contrast+fn-inspect.abi108.armv8.node +0 -0
  106. package/node_modules/@contrast/fn-inspect/prebuilds/linux-arm64/@contrast+fn-inspect.abi115.armv8.node +0 -0
  107. package/node_modules/@contrast/fn-inspect/prebuilds/linux-arm64/@contrast+fn-inspect.abi127.armv8.node +0 -0
  108. package/node_modules/@contrast/fn-inspect/prebuilds/linux-arm64/@contrast+fn-inspect.abi137.armv8.node +0 -0
  109. package/node_modules/@contrast/fn-inspect/prebuilds/linux-x64/@contrast+fn-inspect.abi108.glibc.node +0 -0
  110. package/node_modules/@contrast/fn-inspect/prebuilds/linux-x64/@contrast+fn-inspect.abi108.musl.node +0 -0
  111. package/node_modules/@contrast/fn-inspect/prebuilds/linux-x64/@contrast+fn-inspect.abi115.glibc.node +0 -0
  112. package/node_modules/@contrast/fn-inspect/prebuilds/linux-x64/@contrast+fn-inspect.abi115.musl.node +0 -0
  113. package/node_modules/@contrast/fn-inspect/prebuilds/linux-x64/@contrast+fn-inspect.abi127.glibc.node +0 -0
  114. package/node_modules/@contrast/fn-inspect/prebuilds/linux-x64/@contrast+fn-inspect.abi127.musl.node +0 -0
  115. package/node_modules/@contrast/fn-inspect/prebuilds/linux-x64/@contrast+fn-inspect.abi137.glibc.node +0 -0
  116. package/node_modules/@contrast/fn-inspect/prebuilds/linux-x64/{@contrast+fn-inspect.abi93.musl.node → @contrast+fn-inspect.abi137.musl.node} +0 -0
  117. package/node_modules/@contrast/fn-inspect/prebuilds/win32-x64/@contrast+fn-inspect.abi108.node +0 -0
  118. package/node_modules/@contrast/fn-inspect/prebuilds/win32-x64/@contrast+fn-inspect.abi115.node +0 -0
  119. package/node_modules/@contrast/fn-inspect/prebuilds/win32-x64/@contrast+fn-inspect.abi127.node +0 -0
  120. package/node_modules/@contrast/fn-inspect/prebuilds/win32-x64/@contrast+fn-inspect.abi137.node +0 -0
  121. package/node_modules/@contrast/instrumentation/lib/http2.js +0 -11
  122. package/node_modules/@contrast/instrumentation/package.json +6 -6
  123. package/node_modules/@contrast/library-analysis/lib/install/library-reporting/dep.json +312 -224
  124. package/node_modules/@contrast/library-analysis/package.json +6 -6
  125. package/node_modules/@contrast/logger/lib/index.js +18 -8
  126. package/node_modules/@contrast/logger/lib/serializers.js +5 -5
  127. package/node_modules/@contrast/logger/lib/utils.d.ts +0 -6
  128. package/node_modules/@contrast/logger/package.json +4 -4
  129. package/node_modules/@contrast/metrics/lib/index.d.ts +6 -6
  130. package/node_modules/@contrast/metrics/lib/index.js +0 -1
  131. package/node_modules/@contrast/metrics/package.json +7 -7
  132. package/node_modules/@contrast/patcher/package.json +3 -3
  133. package/node_modules/@contrast/perf/package.json +7 -4
  134. package/node_modules/@contrast/protect/lib/hardening/handlers.js +37 -21
  135. package/node_modules/@contrast/protect/lib/index.d.ts +3 -2
  136. package/node_modules/@contrast/protect/lib/index.js +9 -2
  137. package/node_modules/@contrast/protect/lib/input-analysis/handlers.js +269 -238
  138. package/node_modules/@contrast/protect/lib/input-analysis/install/http.js +3 -4
  139. package/node_modules/@contrast/protect/lib/input-tracing/{handlers/index.js → handlers.js} +15 -15
  140. package/node_modules/@contrast/protect/lib/input-tracing/index.js +0 -1
  141. package/node_modules/@contrast/protect/lib/make-source-context.js +5 -7
  142. package/node_modules/@contrast/protect/lib/policy.js +130 -95
  143. package/node_modules/@contrast/protect/lib/semantic-analysis/handlers.js +19 -18
  144. package/node_modules/@contrast/protect/package.json +12 -12
  145. package/node_modules/@contrast/reporter/lib/index.js +1 -1
  146. package/node_modules/@contrast/reporter/lib/reporters/base.d.ts +0 -1
  147. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/application-activity/index.d.ts +4 -2
  148. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/application-activity/index.js +14 -14
  149. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/application-activity/translations.d.ts +43 -6
  150. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/application-activity/translations.js +262 -429
  151. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/server-inventory.d.ts +3 -3
  152. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/traces/index.js +17 -7
  153. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/traces/translations.js +12 -13
  154. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/utils.js +6 -7
  155. package/node_modules/@contrast/reporter/lib/reporters/file.js +1 -1
  156. package/node_modules/@contrast/reporter/lib/reporters/security-logger/index.d.ts +2 -3
  157. package/node_modules/@contrast/reporter/lib/reporters/security-logger/index.js +72 -86
  158. package/node_modules/@contrast/reporter/lib/reporters/security-logger/messages.js +6 -7
  159. package/node_modules/@contrast/reporter/lib/validators.js +0 -1
  160. package/node_modules/@contrast/reporter/node_modules/sonic-boom/.husky/pre-commit +2 -2
  161. package/node_modules/@contrast/reporter/node_modules/sonic-boom/.taprc +5 -0
  162. package/node_modules/@contrast/reporter/node_modules/sonic-boom/README.md +2 -4
  163. package/node_modules/@contrast/reporter/node_modules/sonic-boom/bench.js +5 -36
  164. package/node_modules/@contrast/reporter/node_modules/sonic-boom/index.js +56 -300
  165. package/node_modules/@contrast/reporter/node_modules/sonic-boom/package.json +12 -7
  166. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test.js +1684 -0
  167. package/node_modules/@contrast/reporter/node_modules/sonic-boom/types/index.d.ts +1 -2
  168. package/node_modules/@contrast/reporter/package.json +10 -10
  169. package/node_modules/@contrast/rewriter/lib/index.js +5 -43
  170. package/node_modules/@contrast/rewriter/package.json +8 -8
  171. package/node_modules/@contrast/route-coverage/lib/install/express/express5.js +0 -5
  172. package/node_modules/@contrast/route-coverage/lib/install/restify.js +1 -1
  173. package/node_modules/@contrast/route-coverage/package.json +10 -10
  174. package/node_modules/@contrast/scopes/package.json +6 -6
  175. package/node_modules/@contrast/sec-obs/lib/traces/http.js +1 -1
  176. package/node_modules/@contrast/sec-obs/lib/traces/http.test.js +1 -1
  177. package/node_modules/@contrast/sec-obs/package.json +10 -10
  178. package/node_modules/@contrast/sources/lib/index.js +1 -1
  179. package/node_modules/@contrast/sources/lib/index.test.js +0 -26
  180. package/node_modules/@contrast/sources/package.json +3 -3
  181. package/node_modules/@contrast/telemetry/package.json +6 -6
  182. package/node_modules/@opentelemetry/semantic-conventions/README.md +3 -2
  183. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_attributes.d.ts +4350 -2882
  184. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_attributes.js +4350 -2882
  185. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_attributes.js.map +1 -1
  186. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_events.d.ts +136 -0
  187. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_events.js +154 -0
  188. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_events.js.map +1 -0
  189. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_metrics.d.ts +713 -141
  190. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_metrics.js +713 -141
  191. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_metrics.js.map +1 -1
  192. package/node_modules/@opentelemetry/semantic-conventions/build/esm/index-incubating.d.ts +2 -0
  193. package/node_modules/@opentelemetry/semantic-conventions/build/esm/index-incubating.js +2 -0
  194. package/node_modules/@opentelemetry/semantic-conventions/build/esm/index-incubating.js.map +1 -1
  195. package/node_modules/@opentelemetry/semantic-conventions/build/esm/index.d.ts +1 -0
  196. package/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js +1 -0
  197. package/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js.map +1 -1
  198. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.d.ts +7 -1
  199. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js +7 -1
  200. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js.map +1 -1
  201. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_events.d.ts +5 -0
  202. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_events.js +23 -0
  203. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_events.js.map +1 -0
  204. package/node_modules/@opentelemetry/semantic-conventions/build/esm/version.d.ts +1 -1
  205. package/node_modules/@opentelemetry/semantic-conventions/build/esm/version.js +1 -1
  206. package/node_modules/@opentelemetry/semantic-conventions/build/esm/version.js.map +1 -1
  207. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_attributes.d.ts +4350 -2882
  208. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_attributes.js +4350 -2882
  209. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_attributes.js.map +1 -1
  210. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_events.d.ts +136 -0
  211. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_events.js +154 -0
  212. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_events.js.map +1 -0
  213. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_metrics.d.ts +713 -141
  214. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_metrics.js +713 -141
  215. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_metrics.js.map +1 -1
  216. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/index-incubating.d.ts +2 -0
  217. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/index-incubating.js +2 -0
  218. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/index-incubating.js.map +1 -1
  219. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/index.d.ts +1 -0
  220. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/index.js +1 -0
  221. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/index.js.map +1 -1
  222. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_attributes.d.ts +7 -1
  223. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_attributes.js +7 -1
  224. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_attributes.js.map +1 -1
  225. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_events.d.ts +5 -0
  226. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_events.js +23 -0
  227. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_events.js.map +1 -0
  228. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/version.d.ts +1 -1
  229. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/version.js +1 -1
  230. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/version.js.map +1 -1
  231. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_attributes.d.ts +4350 -2882
  232. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_attributes.js +4354 -2883
  233. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_attributes.js.map +1 -1
  234. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_events.d.ts +136 -0
  235. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_events.js +157 -0
  236. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_events.js.map +1 -0
  237. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_metrics.d.ts +713 -141
  238. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_metrics.js +720 -147
  239. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_metrics.js.map +1 -1
  240. package/node_modules/@opentelemetry/semantic-conventions/build/src/index-incubating.d.ts +2 -0
  241. package/node_modules/@opentelemetry/semantic-conventions/build/src/index-incubating.js +2 -0
  242. package/node_modules/@opentelemetry/semantic-conventions/build/src/index-incubating.js.map +1 -1
  243. package/node_modules/@opentelemetry/semantic-conventions/build/src/index.d.ts +1 -0
  244. package/node_modules/@opentelemetry/semantic-conventions/build/src/index.js +1 -0
  245. package/node_modules/@opentelemetry/semantic-conventions/build/src/index.js.map +1 -1
  246. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_attributes.d.ts +7 -1
  247. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_attributes.js +10 -4
  248. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_attributes.js.map +1 -1
  249. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_events.d.ts +5 -0
  250. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_events.js +26 -0
  251. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_events.js.map +1 -0
  252. package/node_modules/@opentelemetry/semantic-conventions/build/src/version.d.ts +1 -1
  253. package/node_modules/@opentelemetry/semantic-conventions/build/src/version.js +1 -1
  254. package/node_modules/@opentelemetry/semantic-conventions/build/src/version.js.map +1 -1
  255. package/node_modules/@opentelemetry/semantic-conventions/package.json +6 -7
  256. package/node_modules/@swc/core/README.md +5 -0
  257. package/node_modules/@swc/core/binding.d.ts +2 -2
  258. package/node_modules/@swc/core/index.d.ts +5 -4
  259. package/node_modules/@swc/core/index.js +2 -2
  260. package/node_modules/@swc/core/package.json +12 -12
  261. package/node_modules/@swc/core-darwin-arm64/package.json +1 -1
  262. package/node_modules/@swc/core-darwin-arm64/swc.darwin-arm64.node +0 -0
  263. package/node_modules/@swc/core-darwin-x64/package.json +1 -1
  264. package/node_modules/@swc/core-darwin-x64/swc.darwin-x64.node +0 -0
  265. package/node_modules/@swc/core-linux-arm64-gnu/package.json +1 -1
  266. package/node_modules/@swc/core-linux-arm64-gnu/swc.linux-arm64-gnu.node +0 -0
  267. package/node_modules/@swc/core-linux-arm64-musl/package.json +1 -1
  268. package/node_modules/@swc/core-linux-arm64-musl/swc.linux-arm64-musl.node +0 -0
  269. package/node_modules/@swc/core-linux-x64-gnu/package.json +1 -1
  270. package/node_modules/@swc/core-linux-x64-gnu/swc.linux-x64-gnu.node +0 -0
  271. package/node_modules/@swc/core-linux-x64-musl/package.json +1 -1
  272. package/node_modules/@swc/core-linux-x64-musl/swc.linux-x64-musl.node +0 -0
  273. package/node_modules/@swc/core-win32-arm64-msvc/package.json +1 -1
  274. package/node_modules/@swc/core-win32-arm64-msvc/swc.win32-arm64-msvc.node +0 -0
  275. package/node_modules/@swc/core-win32-x64-msvc/package.json +1 -1
  276. package/node_modules/@swc/core-win32-x64-msvc/swc.win32-x64-msvc.node +0 -0
  277. package/node_modules/@swc/types/index.d.ts +14 -5
  278. package/node_modules/@swc/types/package.json +2 -2
  279. package/node_modules/@types/node/README.md +1 -1
  280. package/node_modules/@types/node/assert/strict.d.ts +105 -2
  281. package/node_modules/@types/node/assert.d.ts +119 -95
  282. package/node_modules/@types/node/buffer.d.ts +1 -1
  283. package/node_modules/@types/node/child_process.d.ts +26 -122
  284. package/node_modules/@types/node/crypto.d.ts +161 -17
  285. package/node_modules/@types/node/dns.d.ts +5 -0
  286. package/node_modules/@types/node/events.d.ts +79 -33
  287. package/node_modules/@types/node/fs/promises.d.ts +41 -26
  288. package/node_modules/@types/node/fs.d.ts +276 -35
  289. package/node_modules/@types/node/globals.d.ts +148 -347
  290. package/node_modules/@types/node/http.d.ts +57 -8
  291. package/node_modules/@types/node/https.d.ts +5 -0
  292. package/node_modules/@types/node/index.d.ts +7 -2
  293. package/node_modules/@types/node/inspector.d.ts +187 -4089
  294. package/node_modules/@types/node/inspector.generated.d.ts +4052 -0
  295. package/node_modules/@types/node/module.d.ts +1 -0
  296. package/node_modules/@types/node/net.d.ts +21 -0
  297. package/node_modules/@types/node/package.json +3 -3
  298. package/node_modules/@types/node/sqlite.d.ts +34 -0
  299. package/node_modules/@types/node/test.d.ts +106 -23
  300. package/node_modules/@types/node/tls.d.ts +32 -0
  301. package/node_modules/@types/node/ts5.6/index.d.ts +7 -2
  302. package/node_modules/@types/node/ts5.7/index.d.ts +7 -2
  303. package/node_modules/@types/node/url.d.ts +25 -6
  304. package/node_modules/@types/node/util.d.ts +11 -4
  305. package/node_modules/@types/node/vm.d.ts +73 -10
  306. package/node_modules/@types/node/wasi.d.ts +21 -0
  307. package/node_modules/@types/node/web-globals/abortcontroller.d.ts +34 -0
  308. package/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
  309. package/node_modules/@types/node/{dom-events.d.ts → web-globals/events.d.ts} +49 -51
  310. package/node_modules/@types/node/web-globals/fetch.d.ts +50 -0
  311. package/node_modules/@types/node/web-globals/navigator.d.ts +25 -0
  312. package/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  313. package/node_modules/@types/node/worker_threads.d.ts +84 -50
  314. package/node_modules/@types/node/zlib.d.ts +6 -0
  315. package/node_modules/axios/CHANGELOG.md +58 -0
  316. package/node_modules/axios/README.md +87 -10
  317. package/node_modules/axios/dist/axios.js +355 -289
  318. package/node_modules/axios/dist/axios.js.map +1 -1
  319. package/node_modules/axios/dist/axios.min.js +2 -2
  320. package/node_modules/axios/dist/axios.min.js.map +1 -1
  321. package/node_modules/axios/dist/browser/axios.cjs +286 -213
  322. package/node_modules/axios/dist/browser/axios.cjs.map +1 -1
  323. package/node_modules/axios/dist/esm/axios.js +286 -213
  324. package/node_modules/axios/dist/esm/axios.js.map +1 -1
  325. package/node_modules/axios/dist/esm/axios.min.js +2 -2
  326. package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  327. package/node_modules/axios/dist/node/axios.cjs +377 -213
  328. package/node_modules/axios/dist/node/axios.cjs.map +1 -1
  329. package/node_modules/axios/index.d.cts +12 -5
  330. package/node_modules/axios/index.d.ts +13 -4
  331. package/node_modules/axios/lib/adapters/adapters.js +6 -4
  332. package/node_modules/axios/lib/adapters/fetch.js +221 -162
  333. package/node_modules/axios/lib/adapters/http.js +18 -0
  334. package/node_modules/axios/lib/adapters/xhr.js +11 -8
  335. package/node_modules/axios/lib/core/Axios.js +0 -2
  336. package/node_modules/axios/lib/core/AxiosError.js +10 -3
  337. package/node_modules/axios/lib/core/dispatchRequest.js +1 -1
  338. package/node_modules/axios/lib/defaults/index.js +1 -1
  339. package/node_modules/axios/lib/env/data.js +1 -1
  340. package/node_modules/axios/lib/helpers/buildURL.js +1 -3
  341. package/node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js +73 -0
  342. package/node_modules/axios/lib/helpers/resolveConfig.js +13 -9
  343. package/node_modules/axios/lib/utils.js +5 -3
  344. package/node_modules/axios/package.json +18 -12
  345. package/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  346. package/node_modules/balanced-match/LICENSE.md +21 -0
  347. package/node_modules/balanced-match/README.md +97 -0
  348. package/node_modules/balanced-match/index.js +62 -0
  349. package/node_modules/balanced-match/package.json +48 -0
  350. package/node_modules/brace-expansion/.github/FUNDING.yml +2 -0
  351. package/node_modules/brace-expansion/LICENSE +21 -0
  352. package/node_modules/brace-expansion/README.md +135 -0
  353. package/node_modules/brace-expansion/index.js +203 -0
  354. package/node_modules/brace-expansion/package.json +49 -0
  355. package/node_modules/detect-libc/lib/detect-libc.js +59 -13
  356. package/node_modules/detect-libc/lib/elf.js +39 -0
  357. package/node_modules/detect-libc/lib/filesystem.js +18 -8
  358. package/node_modules/detect-libc/package.json +3 -2
  359. package/node_modules/minimatch/LICENSE +15 -0
  360. package/node_modules/minimatch/README.md +454 -0
  361. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +2 -0
  362. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +1 -0
  363. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
  364. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +1 -0
  365. package/node_modules/minimatch/dist/commonjs/ast.d.ts +20 -0
  366. package/node_modules/minimatch/dist/commonjs/ast.d.ts.map +1 -0
  367. package/node_modules/minimatch/dist/commonjs/ast.js +592 -0
  368. package/node_modules/minimatch/dist/commonjs/ast.js.map +1 -0
  369. package/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +8 -0
  370. package/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +1 -0
  371. package/node_modules/minimatch/dist/commonjs/brace-expressions.js +152 -0
  372. package/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +1 -0
  373. package/node_modules/minimatch/dist/commonjs/escape.d.ts +12 -0
  374. package/node_modules/minimatch/dist/commonjs/escape.d.ts.map +1 -0
  375. package/node_modules/minimatch/dist/commonjs/escape.js +22 -0
  376. package/node_modules/minimatch/dist/commonjs/escape.js.map +1 -0
  377. package/node_modules/minimatch/dist/commonjs/index.d.ts +94 -0
  378. package/node_modules/minimatch/dist/commonjs/index.d.ts.map +1 -0
  379. package/node_modules/minimatch/dist/commonjs/index.js +1017 -0
  380. package/node_modules/minimatch/dist/commonjs/index.js.map +1 -0
  381. package/node_modules/minimatch/dist/commonjs/package.json +3 -0
  382. package/node_modules/minimatch/dist/commonjs/unescape.d.ts +17 -0
  383. package/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +1 -0
  384. package/node_modules/minimatch/dist/commonjs/unescape.js +24 -0
  385. package/node_modules/minimatch/dist/commonjs/unescape.js.map +1 -0
  386. package/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +2 -0
  387. package/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +1 -0
  388. package/node_modules/minimatch/dist/esm/assert-valid-pattern.js +10 -0
  389. package/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +1 -0
  390. package/node_modules/minimatch/dist/esm/ast.d.ts +20 -0
  391. package/node_modules/minimatch/dist/esm/ast.d.ts.map +1 -0
  392. package/node_modules/minimatch/dist/esm/ast.js +588 -0
  393. package/node_modules/minimatch/dist/esm/ast.js.map +1 -0
  394. package/node_modules/minimatch/dist/esm/brace-expressions.d.ts +8 -0
  395. package/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +1 -0
  396. package/node_modules/minimatch/dist/esm/brace-expressions.js +148 -0
  397. package/node_modules/minimatch/dist/esm/brace-expressions.js.map +1 -0
  398. package/node_modules/minimatch/dist/esm/escape.d.ts +12 -0
  399. package/node_modules/minimatch/dist/esm/escape.d.ts.map +1 -0
  400. package/node_modules/minimatch/dist/esm/escape.js +18 -0
  401. package/node_modules/minimatch/dist/esm/escape.js.map +1 -0
  402. package/node_modules/minimatch/dist/esm/index.d.ts +94 -0
  403. package/node_modules/minimatch/dist/esm/index.d.ts.map +1 -0
  404. package/node_modules/minimatch/dist/esm/index.js +1001 -0
  405. package/node_modules/minimatch/dist/esm/index.js.map +1 -0
  406. package/node_modules/minimatch/dist/esm/package.json +3 -0
  407. package/node_modules/minimatch/dist/esm/unescape.d.ts +17 -0
  408. package/node_modules/minimatch/dist/esm/unescape.d.ts.map +1 -0
  409. package/node_modules/minimatch/dist/esm/unescape.js +20 -0
  410. package/node_modules/minimatch/dist/esm/unescape.js.map +1 -0
  411. package/node_modules/minimatch/package.json +82 -0
  412. package/node_modules/node-abi/LICENSE +21 -0
  413. package/node_modules/node-abi/README.md +54 -0
  414. package/node_modules/node-abi/abi_registry.json +408 -0
  415. package/node_modules/node-abi/getNextTarget.js +13 -0
  416. package/node_modules/node-abi/index.js +161 -0
  417. package/node_modules/node-abi/package.json +46 -0
  418. package/node_modules/node-addon-api/README.md +25 -249
  419. package/node_modules/node-addon-api/common.gypi +1 -0
  420. package/node_modules/node-addon-api/index.js +2 -0
  421. package/node_modules/node-addon-api/napi-inl.h +592 -166
  422. package/node_modules/node-addon-api/napi.h +167 -59
  423. package/node_modules/node-addon-api/node_addon_api.gyp +10 -0
  424. package/node_modules/node-addon-api/noexcept.gypi +1 -1
  425. package/node_modules/node-addon-api/package.json +13 -13
  426. package/node_modules/node-addon-api/tools/conversion.js +1 -1
  427. package/node_modules/protobufjs/dist/light/protobuf.js +2 -2
  428. package/node_modules/protobufjs/dist/light/protobuf.min.js +2 -2
  429. package/node_modules/protobufjs/dist/minimal/protobuf.js +2 -2
  430. package/node_modules/protobufjs/dist/minimal/protobuf.min.js +2 -2
  431. package/node_modules/protobufjs/dist/protobuf.js +2 -2
  432. package/node_modules/protobufjs/dist/protobuf.min.js +2 -2
  433. package/node_modules/protobufjs/google/protobuf/descriptor.json +2 -2
  434. package/node_modules/protobufjs/google/protobuf/descriptor.proto +2 -1
  435. package/node_modules/protobufjs/package.json +1 -1
  436. package/node_modules/undici-types/agent.d.ts +0 -4
  437. package/node_modules/undici-types/client.d.ts +0 -2
  438. package/node_modules/undici-types/diagnostics-channel.d.ts +9 -0
  439. package/node_modules/undici-types/dispatcher.d.ts +3 -8
  440. package/node_modules/undici-types/env-http-proxy-agent.d.ts +2 -1
  441. package/node_modules/undici-types/eventsource.d.ts +3 -3
  442. package/node_modules/undici-types/fetch.d.ts +1 -0
  443. package/node_modules/undici-types/h2c-client.d.ts +0 -2
  444. package/node_modules/undici-types/handlers.d.ts +1 -1
  445. package/node_modules/undici-types/index.d.ts +3 -1
  446. package/node_modules/undici-types/mock-client.d.ts +2 -0
  447. package/node_modules/undici-types/mock-interceptor.d.ts +2 -1
  448. package/node_modules/undici-types/mock-pool.d.ts +2 -0
  449. package/node_modules/undici-types/package.json +1 -1
  450. package/node_modules/undici-types/retry-handler.d.ts +9 -0
  451. package/node_modules/undici-types/snapshot-agent.d.ts +107 -0
  452. package/node_modules/undici-types/webidl.d.ts +29 -15
  453. package/node_modules/undici-types/websocket.d.ts +3 -1
  454. package/package.json +3 -3
  455. package/node_modules/@contrast/assess/lib/get-policy.js +0 -336
  456. package/node_modules/@contrast/code-events/prebuilds/linux-arm64/@contrast+code-events.abi93.armv8.node +0 -0
  457. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi93.glibc.node +0 -0
  458. package/node_modules/@contrast/code-events/prebuilds/linux-x64/@contrast+code-events.abi93.musl.node +0 -0
  459. package/node_modules/@contrast/code-events/prebuilds/win32-x64/@contrast+code-events.abi93.node +0 -0
  460. package/node_modules/@contrast/core/lib/sensitive-data-masking/protect-listener.js +0 -111
  461. package/node_modules/@contrast/distringuish/prebuilds/linux-arm64/@contrast+distringuish.abi93.armv8.node +0 -0
  462. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi93.glibc.node +0 -0
  463. package/node_modules/@contrast/distringuish/prebuilds/linux-x64/@contrast+distringuish.abi93.musl.node +0 -0
  464. package/node_modules/@contrast/distringuish/prebuilds/win32-x64/@contrast+distringuish.abi93.node +0 -0
  465. package/node_modules/@contrast/fn-inspect/prebuilds/linux-arm64/@contrast+fn-inspect.abi93.armv8.node +0 -0
  466. package/node_modules/@contrast/fn-inspect/prebuilds/linux-x64/@contrast+fn-inspect.abi93.glibc.node +0 -0
  467. package/node_modules/@contrast/fn-inspect/prebuilds/win32-x64/@contrast+fn-inspect.abi93.node +0 -0
  468. package/node_modules/@contrast/perf/lib/index.test.js +0 -547
  469. package/node_modules/@contrast/perf/lib/tsconfig.json +0 -31
  470. package/node_modules/@contrast/protect/lib/input-tracing/install/spdy.js +0 -63
  471. package/node_modules/@contrast/reporter/node_modules/sonic-boom/.taprc.yaml +0 -11
  472. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/destroy.test.js +0 -49
  473. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/end.test.js +0 -98
  474. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/flush-sync.test.js +0 -140
  475. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/flush.test.js +0 -419
  476. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/fsync.test.js +0 -63
  477. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/helper.js +0 -42
  478. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/minlength.test.js +0 -35
  479. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/mode.test.js +0 -116
  480. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/reopen.test.js +0 -239
  481. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/retry.test.js +0 -414
  482. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/sync.test.js +0 -261
  483. package/node_modules/@contrast/reporter/node_modules/sonic-boom/test/write.test.js +0 -465
  484. package/node_modules/node-addon-api/tools/eslint-format.js +0 -79
@@ -1,414 +0,0 @@
1
- 'use strict'
2
-
3
- const { test } = require('tap')
4
- const fs = require('fs')
5
- const proxyquire = require('proxyquire')
6
- const { file, runTests } = require('./helper')
7
-
8
- const MAX_WRITE = 16 * 1024
9
-
10
- runTests(buildTests)
11
-
12
- function buildTests (test, sync) {
13
- // Reset the umask for testing
14
- process.umask(0o000)
15
- test('retry on EAGAIN', (t) => {
16
- t.plan(7)
17
-
18
- const fakeFs = Object.create(fs)
19
- fakeFs.write = function (fd, buf, ...args) {
20
- t.pass('fake fs.write called')
21
- fakeFs.write = fs.write
22
- const err = new Error('EAGAIN')
23
- err.code = 'EAGAIN'
24
- process.nextTick(args.pop(), err)
25
- }
26
- const SonicBoom = proxyquire('../', {
27
- fs: fakeFs
28
- })
29
-
30
- const dest = file()
31
- const fd = fs.openSync(dest, 'w')
32
- const stream = new SonicBoom({ fd, sync: false, minLength: 0 })
33
-
34
- stream.on('ready', () => {
35
- t.pass('ready emitted')
36
- })
37
-
38
- t.ok(stream.write('hello world\n'))
39
- t.ok(stream.write('something else\n'))
40
-
41
- stream.end()
42
-
43
- stream.on('finish', () => {
44
- fs.readFile(dest, 'utf8', (err, data) => {
45
- t.error(err)
46
- t.equal(data, 'hello world\nsomething else\n')
47
- })
48
- })
49
- stream.on('close', () => {
50
- t.pass('close emitted')
51
- })
52
- })
53
- }
54
-
55
- test('emit error on async EAGAIN', (t) => {
56
- t.plan(11)
57
-
58
- const fakeFs = Object.create(fs)
59
- fakeFs.write = function (fd, buf, ...args) {
60
- t.pass('fake fs.write called')
61
- fakeFs.write = fs.write
62
- const err = new Error('EAGAIN')
63
- err.code = 'EAGAIN'
64
- process.nextTick(args[args.length - 1], err)
65
- }
66
- const SonicBoom = proxyquire('../', {
67
- fs: fakeFs
68
- })
69
-
70
- const dest = file()
71
- const fd = fs.openSync(dest, 'w')
72
- const stream = new SonicBoom({
73
- fd,
74
- sync: false,
75
- minLength: 12,
76
- retryEAGAIN: (err, writeBufferLen, remainingBufferLen) => {
77
- t.equal(err.code, 'EAGAIN')
78
- t.equal(writeBufferLen, 12)
79
- t.equal(remainingBufferLen, 0)
80
- return false
81
- }
82
- })
83
-
84
- stream.on('ready', () => {
85
- t.pass('ready emitted')
86
- })
87
-
88
- stream.once('error', err => {
89
- t.equal(err.code, 'EAGAIN')
90
- t.ok(stream.write('something else\n'))
91
- })
92
-
93
- t.ok(stream.write('hello world\n'))
94
-
95
- stream.end()
96
-
97
- stream.on('finish', () => {
98
- fs.readFile(dest, 'utf8', (err, data) => {
99
- t.error(err)
100
- t.equal(data, 'hello world\nsomething else\n')
101
- })
102
- })
103
- stream.on('close', () => {
104
- t.pass('close emitted')
105
- })
106
- })
107
-
108
- test('retry on EAGAIN (sync)', (t) => {
109
- t.plan(7)
110
-
111
- const fakeFs = Object.create(fs)
112
- fakeFs.writeSync = function (fd, buf, enc) {
113
- t.pass('fake fs.writeSync called')
114
- fakeFs.writeSync = fs.writeSync
115
- const err = new Error('EAGAIN')
116
- err.code = 'EAGAIN'
117
- throw err
118
- }
119
- const SonicBoom = proxyquire('../', {
120
- fs: fakeFs
121
- })
122
-
123
- const dest = file()
124
- const fd = fs.openSync(dest, 'w')
125
- const stream = new SonicBoom({ fd, minLength: 0, sync: true })
126
-
127
- stream.on('ready', () => {
128
- t.pass('ready emitted')
129
- })
130
-
131
- t.ok(stream.write('hello world\n'))
132
- t.ok(stream.write('something else\n'))
133
-
134
- stream.end()
135
-
136
- stream.on('finish', () => {
137
- fs.readFile(dest, 'utf8', (err, data) => {
138
- t.error(err)
139
- t.equal(data, 'hello world\nsomething else\n')
140
- })
141
- })
142
- stream.on('close', () => {
143
- t.pass('close emitted')
144
- })
145
- })
146
-
147
- test('emit error on EAGAIN (sync)', (t) => {
148
- t.plan(11)
149
-
150
- const fakeFs = Object.create(fs)
151
- fakeFs.writeSync = function (fd, buf, enc) {
152
- t.pass('fake fs.writeSync called')
153
- fakeFs.writeSync = fs.writeSync
154
- const err = new Error('EAGAIN')
155
- err.code = 'EAGAIN'
156
- throw err
157
- }
158
- const SonicBoom = proxyquire('../', {
159
- fs: fakeFs
160
- })
161
-
162
- const dest = file()
163
- const fd = fs.openSync(dest, 'w')
164
- const stream = new SonicBoom({
165
- fd,
166
- minLength: 0,
167
- sync: true,
168
- retryEAGAIN: (err, writeBufferLen, remainingBufferLen) => {
169
- t.equal(err.code, 'EAGAIN')
170
- t.equal(writeBufferLen, 12)
171
- t.equal(remainingBufferLen, 0)
172
- return false
173
- }
174
- })
175
-
176
- stream.on('ready', () => {
177
- t.pass('ready emitted')
178
- })
179
-
180
- stream.once('error', err => {
181
- t.equal(err.code, 'EAGAIN')
182
- t.ok(stream.write('something else\n'))
183
- })
184
-
185
- t.ok(stream.write('hello world\n'))
186
-
187
- stream.end()
188
-
189
- stream.on('finish', () => {
190
- fs.readFile(dest, 'utf8', (err, data) => {
191
- t.error(err)
192
- t.equal(data, 'hello world\nsomething else\n')
193
- })
194
- })
195
- stream.on('close', () => {
196
- t.pass('close emitted')
197
- })
198
- })
199
-
200
- test('retryEAGAIN receives remaining buffer on async if write fails', (t) => {
201
- t.plan(12)
202
-
203
- const fakeFs = Object.create(fs)
204
- const SonicBoom = proxyquire('../', {
205
- fs: fakeFs
206
- })
207
-
208
- const dest = file()
209
- const fd = fs.openSync(dest, 'w')
210
- const stream = new SonicBoom({
211
- fd,
212
- sync: false,
213
- minLength: 12,
214
- retryEAGAIN: (err, writeBufferLen, remainingBufferLen) => {
215
- t.equal(err.code, 'EAGAIN')
216
- t.equal(writeBufferLen, 12)
217
- t.equal(remainingBufferLen, 11)
218
- return false
219
- }
220
- })
221
-
222
- stream.on('ready', () => {
223
- t.pass('ready emitted')
224
- })
225
-
226
- stream.once('error', err => {
227
- t.equal(err.code, 'EAGAIN')
228
- t.ok(stream.write('done'))
229
- })
230
-
231
- fakeFs.write = function (fd, buf, ...args) {
232
- t.pass('fake fs.write called')
233
- fakeFs.write = fs.write
234
- const err = new Error('EAGAIN')
235
- err.code = 'EAGAIN'
236
- t.ok(stream.write('sonic boom\n'))
237
- process.nextTick(args[args.length - 1], err)
238
- }
239
-
240
- t.ok(stream.write('hello world\n'))
241
-
242
- stream.end()
243
-
244
- stream.on('finish', () => {
245
- fs.readFile(dest, 'utf8', (err, data) => {
246
- t.error(err)
247
- t.equal(data, 'hello world\nsonic boom\ndone')
248
- })
249
- })
250
- stream.on('close', () => {
251
- t.pass('close emitted')
252
- })
253
- })
254
-
255
- test('retryEAGAIN receives remaining buffer if exceeds maxWrite', (t) => {
256
- t.plan(17)
257
-
258
- const fakeFs = Object.create(fs)
259
- const SonicBoom = proxyquire('../', {
260
- fs: fakeFs
261
- })
262
-
263
- const dest = file()
264
- const fd = fs.openSync(dest, 'w')
265
- const buf = Buffer.alloc(MAX_WRITE - 2).fill('x').toString() // 1 MB
266
- const stream = new SonicBoom({
267
- fd,
268
- sync: false,
269
- minLength: MAX_WRITE - 1,
270
- retryEAGAIN: (err, writeBufferLen, remainingBufferLen) => {
271
- t.equal(err.code, 'EAGAIN', 'retryEAGAIN received EAGAIN error')
272
- t.equal(writeBufferLen, buf.length, 'writeBufferLen === buf.length')
273
- t.equal(remainingBufferLen, 23, 'remainingBufferLen === 23')
274
- return false
275
- }
276
- })
277
-
278
- stream.on('ready', () => {
279
- t.pass('ready emitted')
280
- })
281
-
282
- fakeFs.write = function (fd, buf, ...args) {
283
- t.pass('fake fs.write called')
284
- const err = new Error('EAGAIN')
285
- err.code = 'EAGAIN'
286
- process.nextTick(args.pop(), err)
287
- }
288
-
289
- fakeFs.writeSync = function (fd, buf, enc) {
290
- t.pass('fake fs.write called')
291
- const err = new Error('EAGAIN')
292
- err.code = 'EAGAIN'
293
- throw err
294
- }
295
-
296
- t.ok(stream.write(buf), 'write buf')
297
- t.notOk(stream.write('hello world\nsonic boom\n'), 'write hello world sonic boom')
298
-
299
- stream.once('error', err => {
300
- t.equal(err.code, 'EAGAIN', 'bubbled error should be EAGAIN')
301
-
302
- try {
303
- stream.flushSync()
304
- } catch (err) {
305
- t.equal(err.code, 'EAGAIN', 'thrown error should be EAGAIN')
306
- fakeFs.write = fs.write
307
- fakeFs.writeSync = fs.writeSync
308
- stream.end()
309
- }
310
- })
311
-
312
- stream.on('finish', () => {
313
- t.pass('finish emitted')
314
- fs.readFile(dest, 'utf8', (err, data) => {
315
- t.error(err)
316
- t.equal(data, `${buf}hello world\nsonic boom\n`, 'data on file should match written')
317
- })
318
- })
319
- stream.on('close', () => {
320
- t.pass('close emitted')
321
- })
322
- })
323
-
324
- test('retry on EBUSY', (t) => {
325
- t.plan(7)
326
-
327
- const fakeFs = Object.create(fs)
328
- fakeFs.write = function (fd, buf, ...args) {
329
- t.pass('fake fs.write called')
330
- fakeFs.write = fs.write
331
- const err = new Error('EBUSY')
332
- err.code = 'EBUSY'
333
- process.nextTick(args.pop(), err)
334
- }
335
- const SonicBoom = proxyquire('..', {
336
- fs: fakeFs
337
- })
338
-
339
- const dest = file()
340
- const fd = fs.openSync(dest, 'w')
341
- const stream = new SonicBoom({ fd, sync: false, minLength: 0 })
342
-
343
- stream.on('ready', () => {
344
- t.pass('ready emitted')
345
- })
346
-
347
- t.ok(stream.write('hello world\n'))
348
- t.ok(stream.write('something else\n'))
349
-
350
- stream.end()
351
-
352
- stream.on('finish', () => {
353
- fs.readFile(dest, 'utf8', (err, data) => {
354
- t.error(err)
355
- t.equal(data, 'hello world\nsomething else\n')
356
- })
357
- })
358
- stream.on('close', () => {
359
- t.pass('close emitted')
360
- })
361
- })
362
-
363
- test('emit error on async EBUSY', (t) => {
364
- t.plan(11)
365
-
366
- const fakeFs = Object.create(fs)
367
- fakeFs.write = function (fd, buf, ...args) {
368
- t.pass('fake fs.write called')
369
- fakeFs.write = fs.write
370
- const err = new Error('EBUSY')
371
- err.code = 'EBUSY'
372
- process.nextTick(args.pop(), err)
373
- }
374
- const SonicBoom = proxyquire('..', {
375
- fs: fakeFs
376
- })
377
-
378
- const dest = file()
379
- const fd = fs.openSync(dest, 'w')
380
- const stream = new SonicBoom({
381
- fd,
382
- sync: false,
383
- minLength: 12,
384
- retryEAGAIN: (err, writeBufferLen, remainingBufferLen) => {
385
- t.equal(err.code, 'EBUSY')
386
- t.equal(writeBufferLen, 12)
387
- t.equal(remainingBufferLen, 0)
388
- return false
389
- }
390
- })
391
-
392
- stream.on('ready', () => {
393
- t.pass('ready emitted')
394
- })
395
-
396
- stream.once('error', err => {
397
- t.equal(err.code, 'EBUSY')
398
- t.ok(stream.write('something else\n'))
399
- })
400
-
401
- t.ok(stream.write('hello world\n'))
402
-
403
- stream.end()
404
-
405
- stream.on('finish', () => {
406
- fs.readFile(dest, 'utf8', (err, data) => {
407
- t.error(err)
408
- t.equal(data, 'hello world\nsomething else\n')
409
- })
410
- })
411
- stream.on('close', () => {
412
- t.pass('close emitted')
413
- })
414
- })
@@ -1,261 +0,0 @@
1
- 'use strict'
2
-
3
- const { test } = require('tap')
4
- const fs = require('fs')
5
- const proxyquire = require('proxyquire')
6
- const SonicBoom = require('../')
7
- const { file } = require('./helper')
8
-
9
- test('write buffers that are not totally written with sync mode', (t) => {
10
- t.plan(9)
11
-
12
- const fakeFs = Object.create(fs)
13
- fakeFs.writeSync = function (fd, buf, enc) {
14
- t.pass('fake fs.write called')
15
- fakeFs.writeSync = (fd, buf, enc) => {
16
- t.pass('calling real fs.writeSync, ' + buf)
17
- return fs.writeSync(fd, buf, enc)
18
- }
19
- return 0
20
- }
21
- const SonicBoom = proxyquire('../', {
22
- fs: fakeFs
23
- })
24
-
25
- const dest = file()
26
- const fd = fs.openSync(dest, 'w')
27
- const stream = new SonicBoom({ fd, minLength: 0, sync: true })
28
-
29
- stream.on('ready', () => {
30
- t.pass('ready emitted')
31
- })
32
-
33
- t.ok(stream.write('hello world\n'))
34
- t.ok(stream.write('something else\n'))
35
-
36
- stream.end()
37
-
38
- stream.on('finish', () => {
39
- fs.readFile(dest, 'utf8', (err, data) => {
40
- t.error(err)
41
- t.equal(data, 'hello world\nsomething else\n')
42
- })
43
- })
44
- stream.on('close', () => {
45
- t.pass('close emitted')
46
- })
47
- })
48
-
49
- test('write buffers that are not totally written with flush sync', (t) => {
50
- t.plan(7)
51
-
52
- const fakeFs = Object.create(fs)
53
- fakeFs.writeSync = function (fd, buf, enc) {
54
- t.pass('fake fs.write called')
55
- fakeFs.writeSync = fs.writeSync
56
- return 0
57
- }
58
- const SonicBoom = proxyquire('../', {
59
- fs: fakeFs
60
- })
61
-
62
- const dest = file()
63
- const fd = fs.openSync(dest, 'w')
64
- const stream = new SonicBoom({ fd, minLength: 100, sync: false })
65
-
66
- stream.on('ready', () => {
67
- t.pass('ready emitted')
68
- })
69
-
70
- t.ok(stream.write('hello world\n'))
71
- t.ok(stream.write('something else\n'))
72
-
73
- stream.flushSync()
74
-
75
- stream.on('write', (n) => {
76
- if (n === 0) {
77
- t.fail('throwing to avoid infinite loop')
78
- throw Error('shouldn\'t call write handler after flushing with n === 0')
79
- }
80
- })
81
-
82
- stream.end()
83
-
84
- stream.on('finish', () => {
85
- fs.readFile(dest, 'utf8', (err, data) => {
86
- t.error(err)
87
- t.equal(data, 'hello world\nsomething else\n')
88
- })
89
- })
90
- stream.on('close', () => {
91
- t.pass('close emitted')
92
- })
93
- })
94
-
95
- test('sync writing is fully sync', (t) => {
96
- t.plan(6)
97
-
98
- const fakeFs = Object.create(fs)
99
- fakeFs.writeSync = function (fd, buf, enc, cb) {
100
- t.pass('fake fs.write called')
101
- return fs.writeSync(fd, buf, enc)
102
- }
103
- const SonicBoom = proxyquire('../', {
104
- fs: fakeFs
105
- })
106
-
107
- const dest = file()
108
- const fd = fs.openSync(dest, 'w')
109
- const stream = new SonicBoom({ fd, minLength: 0, sync: true })
110
- t.ok(stream.write('hello world\n'))
111
- t.ok(stream.write('something else\n'))
112
-
113
- // 'drain' will be only emitted once,
114
- // the number of assertions at the top check this.
115
- stream.on('drain', () => {
116
- t.pass('drain emitted')
117
- })
118
-
119
- const data = fs.readFileSync(dest, 'utf8')
120
- t.equal(data, 'hello world\nsomething else\n')
121
- })
122
-
123
- test('write enormously large buffers sync', (t) => {
124
- t.plan(3)
125
-
126
- const dest = file()
127
- const fd = fs.openSync(dest, 'w')
128
- const stream = new SonicBoom({ fd, minLength: 0, sync: true })
129
-
130
- const buf = Buffer.alloc(1024).fill('x').toString() // 1 MB
131
- let length = 0
132
-
133
- for (let i = 0; i < 1024 * 512; i++) {
134
- length += buf.length
135
- stream.write(buf)
136
- }
137
-
138
- stream.end()
139
-
140
- stream.on('finish', () => {
141
- fs.stat(dest, (err, stat) => {
142
- t.error(err)
143
- t.equal(stat.size, length)
144
- })
145
- })
146
- stream.on('close', () => {
147
- t.pass('close emitted')
148
- })
149
- })
150
-
151
- test('write enormously large buffers sync with utf8 multi-byte split', (t) => {
152
- t.plan(4)
153
-
154
- const dest = file()
155
- const fd = fs.openSync(dest, 'w')
156
- const stream = new SonicBoom({ fd, minLength: 0, sync: true })
157
-
158
- let buf = Buffer.alloc((1024 * 16) - 2).fill('x') // 16MB - 3B
159
- const length = buf.length + 4
160
- buf = buf.toString() + '🌲' // 16 MB + 1B
161
-
162
- stream.write(buf)
163
-
164
- stream.end()
165
-
166
- stream.on('finish', () => {
167
- fs.stat(dest, (err, stat) => {
168
- t.error(err)
169
- t.equal(stat.size, length)
170
- const char = Buffer.alloc(4)
171
- const fd = fs.openSync(dest, 'r')
172
- fs.readSync(fd, char, 0, 4, length - 4)
173
- t.equal(char.toString(), '🌲')
174
- })
175
- })
176
- stream.on('close', () => {
177
- t.pass('close emitted')
178
- })
179
- })
180
-
181
- // for context see this issue https://github.com/pinojs/pino/issues/871
182
- test('file specified by dest path available immediately when options.sync is true', (t) => {
183
- t.plan(3)
184
- const dest = file()
185
- const stream = new SonicBoom({ dest, sync: true })
186
- t.ok(stream.write('hello world\n'))
187
- t.ok(stream.write('something else\n'))
188
- stream.flushSync()
189
- t.pass('file opened and written to without error')
190
- })
191
-
192
- test('sync error handling', (t) => {
193
- t.plan(1)
194
- try {
195
- /* eslint no-new: off */
196
- new SonicBoom({ dest: '/path/to/nowwhere', sync: true })
197
- t.fail('must throw synchronously')
198
- } catch (err) {
199
- t.pass('an error happened')
200
- }
201
- })
202
-
203
- for (const fd of [1, 2]) {
204
- test(`fd ${fd}`, (t) => {
205
- t.plan(1)
206
-
207
- const fakeFs = Object.create(fs)
208
- const SonicBoom = proxyquire('../', {
209
- fs: fakeFs
210
- })
211
-
212
- const stream = new SonicBoom({ fd })
213
-
214
- fakeFs.close = function (fd, cb) {
215
- t.fail(`should not close fd ${fd}`)
216
- }
217
-
218
- stream.end()
219
-
220
- stream.on('close', () => {
221
- t.pass('close emitted')
222
- })
223
- })
224
- }
225
-
226
- test('._len must always be equal or greater than 0', (t) => {
227
- t.plan(3)
228
-
229
- const dest = file()
230
- const fd = fs.openSync(dest, 'w')
231
- const stream = new SonicBoom({ fd, sync: true })
232
-
233
- t.ok(stream.write('hello world 👀\n'))
234
- t.ok(stream.write('another line 👀\n'))
235
-
236
- t.equal(stream._len, 0)
237
-
238
- stream.end()
239
- })
240
-
241
- test('._len must always be equal or greater than 0', (t) => {
242
- const n = 20
243
- t.plan(n + 3)
244
-
245
- const dest = file()
246
- const fd = fs.openSync(dest, 'w')
247
- const stream = new SonicBoom({ fd, sync: true, minLength: 20 })
248
-
249
- let str = ''
250
- for (let i = 0; i < 20; i++) {
251
- t.ok(stream.write('👀'))
252
- str += '👀'
253
- }
254
-
255
- t.equal(stream._len, 0)
256
-
257
- fs.readFile(dest, 'utf8', (err, data) => {
258
- t.error(err)
259
- t.equal(data, str)
260
- })
261
- })