@contrast/agent-bundle 5.47.0 → 5.48.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 (526) hide show
  1. package/node_modules/@contrast/agent/package.json +10 -10
  2. package/node_modules/@contrast/agentify/package.json +14 -14
  3. package/node_modules/@contrast/architecture-components/package.json +4 -4
  4. package/node_modules/@contrast/assess/lib/configuration-analysis/install/apollo-server.js +1 -1
  5. package/node_modules/@contrast/assess/lib/configuration-analysis/install/graphql-yoga.js +1 -1
  6. package/node_modules/@contrast/assess/lib/dataflow/sinks/install/fs.js +8 -15
  7. package/node_modules/@contrast/assess/package.json +11 -11
  8. package/node_modules/@contrast/config/package.json +2 -2
  9. package/node_modules/@contrast/core/package.json +4 -4
  10. package/node_modules/@contrast/deadzones/package.json +4 -4
  11. package/node_modules/@contrast/dep-hooks/lib/export-handler-registry.js +1 -10
  12. package/node_modules/@contrast/dep-hooks/lib/export-hook-descriptor.js +1 -1
  13. package/node_modules/@contrast/dep-hooks/lib/index.d.ts +1 -1
  14. package/node_modules/@contrast/dep-hooks/lib/index.js +1 -1
  15. package/node_modules/@contrast/dep-hooks/lib/package-finder.d.ts +2 -1
  16. package/node_modules/@contrast/dep-hooks/lib/package-finder.js +11 -2
  17. package/node_modules/@contrast/dep-hooks/package.json +3 -3
  18. package/node_modules/@contrast/esm-hooks/package.json +5 -5
  19. package/node_modules/@contrast/instrumentation/package.json +4 -4
  20. package/node_modules/@contrast/library-analysis/lib/install/library-reporting/dep.json +144 -202
  21. package/node_modules/@contrast/library-analysis/package.json +3 -3
  22. package/node_modules/@contrast/logger/package.json +3 -3
  23. package/node_modules/@contrast/metrics/package.json +5 -5
  24. package/node_modules/@contrast/patcher/package.json +2 -2
  25. package/node_modules/@contrast/protect/lib/input-tracing/install/fs.js +0 -8
  26. package/node_modules/@contrast/protect/package.json +10 -10
  27. package/node_modules/@contrast/reporter/package.json +5 -5
  28. package/node_modules/@contrast/rewriter/package.json +4 -4
  29. package/node_modules/@contrast/route-coverage/lib/index.d.ts +2 -0
  30. package/node_modules/@contrast/route-coverage/lib/index.js +2 -1
  31. package/node_modules/@contrast/route-coverage/lib/install/express.js +535 -0
  32. package/node_modules/@contrast/route-coverage/lib/install/fastify/fastify-express.js +71 -0
  33. package/node_modules/@contrast/route-coverage/lib/install/fastify/fastify-middie.js +67 -0
  34. package/node_modules/@contrast/route-coverage/lib/install/{fastify.js → fastify/fastify.js} +12 -12
  35. package/node_modules/@contrast/route-coverage/lib/install/{express → fastify}/index.js +6 -5
  36. package/node_modules/@contrast/route-coverage/lib/install/koa.js +39 -45
  37. package/node_modules/@contrast/route-coverage/lib/utils/route-info.js +26 -1
  38. package/node_modules/@contrast/route-coverage/package.json +7 -7
  39. package/node_modules/@contrast/scopes/package.json +5 -5
  40. package/node_modules/@contrast/sec-obs/package.json +8 -8
  41. package/node_modules/@contrast/sources/package.json +2 -2
  42. package/node_modules/@contrast/telemetry/package.json +4 -4
  43. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_attributes.d.ts +697 -30
  44. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_attributes.js +697 -30
  45. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_attributes.js.map +1 -1
  46. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_events.d.ts +6 -0
  47. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_events.js +6 -0
  48. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_events.js.map +1 -1
  49. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_metrics.d.ts +877 -49
  50. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_metrics.js +877 -49
  51. package/node_modules/@opentelemetry/semantic-conventions/build/esm/experimental_metrics.js.map +1 -1
  52. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.d.ts +13 -4
  53. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js +13 -4
  54. package/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js.map +1 -1
  55. package/node_modules/@opentelemetry/semantic-conventions/build/esm/version.d.ts +1 -1
  56. package/node_modules/@opentelemetry/semantic-conventions/build/esm/version.js +1 -1
  57. package/node_modules/@opentelemetry/semantic-conventions/build/esm/version.js.map +1 -1
  58. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_attributes.d.ts +697 -30
  59. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_attributes.js +697 -30
  60. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_attributes.js.map +1 -1
  61. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_events.d.ts +6 -0
  62. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_events.js +6 -0
  63. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_events.js.map +1 -1
  64. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_metrics.d.ts +877 -49
  65. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_metrics.js +877 -49
  66. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/experimental_metrics.js.map +1 -1
  67. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_attributes.d.ts +13 -4
  68. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_attributes.js +13 -4
  69. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/stable_attributes.js.map +1 -1
  70. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/version.d.ts +1 -1
  71. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/version.js +1 -1
  72. package/node_modules/@opentelemetry/semantic-conventions/build/esnext/version.js.map +1 -1
  73. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_attributes.d.ts +697 -30
  74. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_attributes.js +729 -61
  75. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_attributes.js.map +1 -1
  76. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_events.d.ts +6 -0
  77. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_events.js +7 -1
  78. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_events.js.map +1 -1
  79. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_metrics.d.ts +877 -49
  80. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_metrics.js +886 -56
  81. package/node_modules/@opentelemetry/semantic-conventions/build/src/experimental_metrics.js.map +1 -1
  82. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_attributes.d.ts +13 -4
  83. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_attributes.js +13 -4
  84. package/node_modules/@opentelemetry/semantic-conventions/build/src/stable_attributes.js.map +1 -1
  85. package/node_modules/@opentelemetry/semantic-conventions/build/src/version.d.ts +1 -1
  86. package/node_modules/@opentelemetry/semantic-conventions/build/src/version.js +1 -1
  87. package/node_modules/@opentelemetry/semantic-conventions/build/src/version.js.map +1 -1
  88. package/node_modules/@opentelemetry/semantic-conventions/package.json +3 -5
  89. package/node_modules/{pino → @pinojs/redact}/.github/dependabot.yml +1 -1
  90. package/node_modules/@pinojs/redact/.github/workflows/ci.yml +48 -0
  91. package/node_modules/@pinojs/redact/.github/workflows/publish-release.yml +43 -0
  92. package/node_modules/{abort-controller → @pinojs/redact}/LICENSE +1 -1
  93. package/node_modules/@pinojs/redact/README.md +350 -0
  94. package/node_modules/@pinojs/redact/benchmarks/basic.js +184 -0
  95. package/node_modules/@pinojs/redact/eslint.config.js +1 -0
  96. package/node_modules/@pinojs/redact/index.d.ts +52 -0
  97. package/node_modules/@pinojs/redact/index.js +529 -0
  98. package/node_modules/@pinojs/redact/index.test-d.ts +22 -0
  99. package/node_modules/@pinojs/redact/package.json +37 -0
  100. package/node_modules/@pinojs/redact/scripts/sync-version.mjs +20 -0
  101. package/node_modules/@pinojs/redact/test/actual-redact-comparison.test.js +211 -0
  102. package/node_modules/@pinojs/redact/test/index.test.js +824 -0
  103. package/node_modules/@pinojs/redact/test/integration.test.js +390 -0
  104. package/node_modules/@pinojs/redact/test/multiple-wildcards.test.js +227 -0
  105. package/node_modules/@pinojs/redact/test/prototype-pollution.test.js +223 -0
  106. package/node_modules/@pinojs/redact/test/selective-clone.test.js +115 -0
  107. package/node_modules/@pinojs/redact/tsconfig.json +19 -0
  108. package/node_modules/@types/node/README.md +1 -1
  109. package/node_modules/@types/node/console.d.ts +3 -2
  110. package/node_modules/@types/node/package.json +2 -2
  111. package/node_modules/@types/node/process.d.ts +7 -0
  112. package/node_modules/@types/node/sqlite.d.ts +107 -0
  113. package/node_modules/@types/node/url.d.ts +32 -8
  114. package/node_modules/axios/CHANGELOG.md +18 -0
  115. package/node_modules/axios/README.md +1 -4
  116. package/node_modules/axios/dist/axios.js +2 -2
  117. package/node_modules/axios/dist/axios.js.map +1 -1
  118. package/node_modules/axios/dist/axios.min.js +2 -2
  119. package/node_modules/axios/dist/axios.min.js.map +1 -1
  120. package/node_modules/axios/dist/browser/axios.cjs +2 -2
  121. package/node_modules/axios/dist/browser/axios.cjs.map +1 -1
  122. package/node_modules/axios/dist/esm/axios.js +2 -2
  123. package/node_modules/axios/dist/esm/axios.js.map +1 -1
  124. package/node_modules/axios/dist/esm/axios.min.js +2 -2
  125. package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  126. package/node_modules/axios/dist/node/axios.cjs +25 -20
  127. package/node_modules/axios/dist/node/axios.cjs.map +1 -1
  128. package/node_modules/axios/lib/adapters/http.js +22 -18
  129. package/node_modules/axios/lib/env/data.js +1 -1
  130. package/node_modules/axios/package.json +1 -1
  131. package/node_modules/form-data/CHANGELOG.md +60 -2
  132. package/node_modules/form-data/README.md +4 -4
  133. package/node_modules/form-data/lib/form_data.js +2 -2
  134. package/node_modules/form-data/package.json +4 -4
  135. package/node_modules/ipaddr.js/README.md +1 -0
  136. package/node_modules/ipaddr.js/ipaddr.min.js +1 -1
  137. package/node_modules/ipaddr.js/lib/ipaddr.js +11 -0
  138. package/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +1 -0
  139. package/node_modules/ipaddr.js/package.json +2 -3
  140. package/node_modules/nan/.github/workflows/ci.yml +3 -1
  141. package/node_modules/nan/CHANGELOG.md +4 -1
  142. package/node_modules/nan/README.md +2 -2
  143. package/node_modules/nan/nan.h +25 -15
  144. package/node_modules/nan/nan_maybe_43_inl.h +5 -1
  145. package/node_modules/nan/package.json +2 -2
  146. package/node_modules/node-abi/abi_registry.json +8 -1
  147. package/node_modules/node-abi/package.json +1 -1
  148. package/node_modules/pino/CONTRIBUTING.md +4 -0
  149. package/node_modules/pino/LICENSE +1 -1
  150. package/node_modules/pino/README.md +20 -3
  151. package/node_modules/pino/benchmarks/basic.bench.js +1 -1
  152. package/node_modules/pino/benchmarks/child-child.bench.js +1 -1
  153. package/node_modules/pino/benchmarks/child-creation.bench.js +1 -1
  154. package/node_modules/pino/benchmarks/child.bench.js +1 -1
  155. package/node_modules/pino/benchmarks/deep-object.bench.js +1 -1
  156. package/node_modules/pino/benchmarks/internal/just-pino-heavy.bench.js +1 -1
  157. package/node_modules/pino/benchmarks/internal/just-pino.bench.js +1 -1
  158. package/node_modules/pino/benchmarks/internal/redact.bench.js +1 -1
  159. package/node_modules/pino/benchmarks/long-string.bench.js +1 -1
  160. package/node_modules/pino/benchmarks/multi-arg.bench.js +1 -1
  161. package/node_modules/pino/benchmarks/multistream.js +1 -1
  162. package/node_modules/pino/benchmarks/object.bench.js +1 -1
  163. package/node_modules/pino/benchmarks/utils/generate-benchmark-doc.js +2 -2
  164. package/node_modules/pino/benchmarks/utils/runbench.js +3 -3
  165. package/node_modules/pino/benchmarks/utils/wrap-log-level.js +2 -2
  166. package/node_modules/pino/browser.js +76 -36
  167. package/node_modules/pino/build/sync-version.js +18 -3
  168. package/node_modules/pino/docs/api.md +155 -13
  169. package/node_modules/pino/docs/browser.md +16 -1
  170. package/node_modules/pino/docs/bundling.md +5 -3
  171. package/node_modules/pino/docs/diagnostics.md +16 -0
  172. package/node_modules/pino/docs/ecosystem.md +15 -12
  173. package/node_modules/pino/docs/help.md +29 -3
  174. package/node_modules/pino/docs/lts.md +5 -4
  175. package/node_modules/pino/docs/transports.md +442 -271
  176. package/node_modules/pino/docs/web.md +59 -9
  177. package/node_modules/pino/eslint.config.js +19 -0
  178. package/node_modules/pino/examples/transport.js +2 -2
  179. package/node_modules/pino/file.js +1 -1
  180. package/node_modules/pino/lib/meta.js +1 -1
  181. package/node_modules/pino/lib/multistream.js +17 -2
  182. package/node_modules/pino/lib/proto.js +35 -11
  183. package/node_modules/pino/lib/redaction.js +9 -13
  184. package/node_modules/pino/lib/time.js +29 -1
  185. package/node_modules/pino/lib/tools.js +37 -8
  186. package/node_modules/pino/lib/transport-stream.js +10 -4
  187. package/node_modules/pino/lib/transport.js +23 -9
  188. package/node_modules/pino/lib/worker.js +164 -24
  189. package/node_modules/pino/package.json +28 -27
  190. package/node_modules/pino/pino.d.ts +244 -203
  191. package/node_modules/pino/pino.js +7 -3
  192. package/node_modules/pino/test/basic.test.js +181 -169
  193. package/node_modules/pino/test/broken-pipe.test.js +18 -16
  194. package/node_modules/pino/test/browser-child.test.js +26 -0
  195. package/node_modules/pino/test/browser-is-level-enabled.test.js +101 -0
  196. package/node_modules/pino/test/browser-serializers.test.js +0 -2
  197. package/node_modules/pino/test/browser-transmit.test.js +68 -0
  198. package/node_modules/pino/test/browser.test.js +98 -13
  199. package/node_modules/pino/test/complex-objects.test.js +8 -6
  200. package/node_modules/pino/test/crlf.test.js +7 -5
  201. package/node_modules/pino/test/custom-levels.test.js +80 -66
  202. package/node_modules/pino/test/diagnostics.test.js +107 -0
  203. package/node_modules/pino/test/error-key.test.js +37 -0
  204. package/node_modules/pino/test/error.test.js +48 -43
  205. package/node_modules/pino/test/escaping.test.js +8 -6
  206. package/node_modules/pino/test/esm/esm.mjs +5 -3
  207. package/node_modules/pino/test/esm/index.test.js +14 -27
  208. package/node_modules/pino/test/esm/named-exports.mjs +9 -8
  209. package/node_modules/pino/test/exit.test.js +18 -16
  210. package/node_modules/pino/test/fixtures/broken-pipe/basic.js +1 -1
  211. package/node_modules/pino/test/fixtures/broken-pipe/destination.js +1 -1
  212. package/node_modules/pino/test/fixtures/broken-pipe/syncfalse.js +1 -1
  213. package/node_modules/pino/test/fixtures/console-transport.js +1 -1
  214. package/node_modules/pino/test/fixtures/crashing-transport.js +13 -0
  215. package/node_modules/pino/test/fixtures/default-exit.js +1 -1
  216. package/node_modules/pino/test/fixtures/destination-exit.js +1 -1
  217. package/node_modules/pino/test/fixtures/noop-transport.js +1 -1
  218. package/node_modules/pino/test/fixtures/pretty/null-prototype.js +1 -1
  219. package/node_modules/pino/test/fixtures/stdout-hack-protection.js +1 -1
  220. package/node_modules/pino/test/fixtures/syncfalse-child.js +1 -1
  221. package/node_modules/pino/test/fixtures/syncfalse-exit.js +1 -1
  222. package/node_modules/pino/test/fixtures/syncfalse-flush-exit.js +1 -1
  223. package/node_modules/pino/test/fixtures/syncfalse.js +1 -1
  224. package/node_modules/pino/test/fixtures/syntax-error-esm.mjs +2 -0
  225. package/node_modules/pino/test/fixtures/to-file-transport-with-transform.js +3 -3
  226. package/node_modules/pino/test/fixtures/to-file-transport.js +2 -2
  227. package/node_modules/pino/test/fixtures/to-file-transport.mjs +2 -2
  228. package/node_modules/pino/test/fixtures/transport/index.js +2 -2
  229. package/node_modules/pino/test/fixtures/transport-main.js +1 -1
  230. package/node_modules/pino/test/fixtures/transport-transform.js +1 -1
  231. package/node_modules/pino/test/fixtures/transport-uses-pino-config.js +1 -1
  232. package/node_modules/pino/test/fixtures/transport-worker-data.js +1 -1
  233. package/node_modules/pino/test/fixtures/transport-worker.js +2 -2
  234. package/node_modules/pino/test/fixtures/ts/to-file-transport-with-transform.ts +3 -3
  235. package/node_modules/pino/test/fixtures/ts/to-file-transport.ts +2 -2
  236. package/node_modules/pino/test/fixtures/ts/transpile.cjs +1 -1
  237. package/node_modules/pino/test/fixtures/ts/transport-exit-immediately-with-async-dest.ts +1 -1
  238. package/node_modules/pino/test/fixtures/ts/transport-main.ts +1 -1
  239. package/node_modules/pino/test/fixtures/ts/transport-worker.ts +1 -1
  240. package/node_modules/pino/test/formatters.test.js +46 -37
  241. package/node_modules/pino/test/helper.d.ts +1 -1
  242. package/node_modules/pino/test/helper.js +37 -10
  243. package/node_modules/pino/test/hooks.test.js +45 -28
  244. package/node_modules/pino/test/http.test.js +39 -67
  245. package/node_modules/pino/test/internals/version.test.js +11 -9
  246. package/node_modules/pino/test/is-level-enabled.test.js +66 -72
  247. package/node_modules/pino/test/levels.test.js +245 -141
  248. package/node_modules/pino/test/metadata.test.js +45 -31
  249. package/node_modules/pino/test/mixin-merge-strategy.test.js +9 -7
  250. package/node_modules/pino/test/mixin.test.js +63 -40
  251. package/node_modules/pino/test/multistream.test.js +174 -118
  252. package/node_modules/pino/test/redact.test.js +172 -126
  253. package/node_modules/pino/test/serializers.test.js +61 -57
  254. package/node_modules/pino/test/stdout-protection.test.js +14 -12
  255. package/node_modules/pino/test/syncfalse.test.js +29 -34
  256. package/node_modules/pino/test/timestamp-nano.test.js +37 -0
  257. package/node_modules/pino/test/timestamp.test.js +37 -34
  258. package/node_modules/pino/test/transport/big.test.js +11 -12
  259. package/node_modules/pino/test/transport/bundlers-support.test.js +15 -43
  260. package/node_modules/pino/test/transport/caller.test.js +9 -8
  261. package/node_modules/pino/test/transport/core.test.js +175 -145
  262. package/node_modules/pino/test/transport/core.transpiled.test.ts +17 -19
  263. package/node_modules/pino/test/transport/crash.test.js +36 -0
  264. package/node_modules/pino/test/transport/module-link.test.js +21 -19
  265. package/node_modules/pino/test/transport/pipeline.test.js +109 -8
  266. package/node_modules/pino/test/transport/repl.test.js +4 -3
  267. package/node_modules/pino/test/transport/{syncfalse.test.js → sync-false.test.js} +14 -12
  268. package/node_modules/pino/test/transport/sync-true.test.js +57 -0
  269. package/node_modules/pino/test/transport/targets.test.js +25 -5
  270. package/node_modules/pino/test/transport/uses-pino-config.test.js +16 -17
  271. package/node_modules/pino/test/transport-stream.test.js +40 -0
  272. package/node_modules/pino/test/types/{pino-import.test-d.ts → pino-import.test-d.cts} +4 -3
  273. package/node_modules/pino/test/types/pino-multistream.test-d.ts +1 -1
  274. package/node_modules/pino/test/types/pino-top-export.test-d.ts +1 -0
  275. package/node_modules/pino/test/types/pino-transport.test-d.ts +1 -1
  276. package/node_modules/pino/test/types/pino-type-only.test-d.ts +24 -6
  277. package/node_modules/pino/test/types/pino.test-d.ts +161 -6
  278. package/node_modules/pino/test/types/pino.ts +31 -19
  279. package/node_modules/pino/tsconfig.json +1 -1
  280. package/node_modules/pino-abstract-transport/.github/workflows/ci.yml +2 -4
  281. package/node_modules/pino-abstract-transport/index.js +1 -1
  282. package/node_modules/pino-abstract-transport/package.json +2 -3
  283. package/node_modules/pino-abstract-transport/test/base.test.js +1 -1
  284. package/node_modules/pino-abstract-transport/test/worker.test.js +7 -14
  285. package/node_modules/pino-std-serializers/.github/workflows/ci.yml +5 -5
  286. package/node_modules/pino-std-serializers/Readme.md +1 -0
  287. package/node_modules/pino-std-serializers/package.json +9 -8
  288. package/node_modules/pino-std-serializers/test/err-with-cause.test.js +72 -88
  289. package/node_modules/pino-std-serializers/test/err.test.js +76 -91
  290. package/node_modules/pino-std-serializers/test/req.test.js +142 -98
  291. package/node_modules/pino-std-serializers/test/res.test.js +42 -31
  292. package/node_modules/process-warning/.github/dependabot.yml +1 -1
  293. package/node_modules/process-warning/.github/workflows/ci.yml +1 -2
  294. package/node_modules/process-warning/README.md +4 -4
  295. package/node_modules/process-warning/eslint.config.js +6 -0
  296. package/node_modules/process-warning/package.json +39 -8
  297. package/node_modules/process-warning/test/emit-interpolated-string.test.js +11 -6
  298. package/node_modules/process-warning/test/emit-once-only.test.js +11 -6
  299. package/node_modules/process-warning/test/emit-reset.test.js +10 -6
  300. package/node_modules/process-warning/test/emit-set.test.js +10 -5
  301. package/node_modules/process-warning/test/emit-unlimited.test.js +12 -7
  302. package/node_modules/process-warning/test/index.test.js +20 -20
  303. package/node_modules/process-warning/test/issue-88.test.js +8 -3
  304. package/node_modules/process-warning/test/jest.test.js +17 -15
  305. package/node_modules/process-warning/test/no-warnings.test.js +9 -9
  306. package/node_modules/process-warning/test/promise.js +10 -0
  307. package/node_modules/process-warning/types/index.d.ts +5 -5
  308. package/node_modules/thread-stream/.github/workflows/ci.yml +4 -8
  309. package/node_modules/thread-stream/index.d.ts +4 -5
  310. package/node_modules/thread-stream/lib/worker.js +5 -2
  311. package/node_modules/thread-stream/package.json +6 -4
  312. package/node_modules/thread-stream/test/base.test.js +12 -0
  313. package/node_modules/thread-stream/test/never-drain.test.js +3 -1
  314. package/node_modules/thread-stream/test/pkg/pkg.test.js +2 -0
  315. package/node_modules/thread-stream/test/syntax-error.mjs +2 -0
  316. package/node_modules/thread-stream/tsconfig.json +8 -0
  317. package/node_modules/yaml/browser/dist/compose/compose-collection.js +1 -1
  318. package/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +1 -1
  319. package/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +2 -2
  320. package/node_modules/yaml/browser/dist/errors.js +1 -1
  321. package/node_modules/yaml/browser/dist/nodes/Alias.js +1 -1
  322. package/node_modules/yaml/browser/dist/parse/parser.js +2 -2
  323. package/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +1 -1
  324. package/node_modules/yaml/browser/dist/stringify/stringifyPair.js +1 -1
  325. package/node_modules/yaml/dist/compose/compose-collection.js +1 -1
  326. package/node_modules/yaml/dist/compose/resolve-block-seq.js +1 -1
  327. package/node_modules/yaml/dist/compose/resolve-flow-collection.js +2 -2
  328. package/node_modules/yaml/dist/errors.js +1 -1
  329. package/node_modules/yaml/dist/nodes/Alias.js +1 -1
  330. package/node_modules/yaml/dist/parse/parser.js +2 -2
  331. package/node_modules/yaml/dist/stringify/stringifyNumber.js +1 -1
  332. package/node_modules/yaml/dist/stringify/stringifyPair.js +1 -1
  333. package/node_modules/yaml/package.json +4 -4
  334. package/package.json +2 -2
  335. package/node_modules/@contrast/route-coverage/lib/install/express/express4.js +0 -157
  336. package/node_modules/@contrast/route-coverage/lib/install/express/express5.js +0 -553
  337. package/node_modules/abort-controller/README.md +0 -98
  338. package/node_modules/abort-controller/browser.js +0 -13
  339. package/node_modules/abort-controller/browser.mjs +0 -11
  340. package/node_modules/abort-controller/dist/abort-controller.d.ts +0 -43
  341. package/node_modules/abort-controller/dist/abort-controller.js +0 -127
  342. package/node_modules/abort-controller/dist/abort-controller.js.map +0 -1
  343. package/node_modules/abort-controller/dist/abort-controller.mjs +0 -118
  344. package/node_modules/abort-controller/dist/abort-controller.mjs.map +0 -1
  345. package/node_modules/abort-controller/dist/abort-controller.umd.js +0 -5
  346. package/node_modules/abort-controller/dist/abort-controller.umd.js.map +0 -1
  347. package/node_modules/abort-controller/package.json +0 -97
  348. package/node_modules/abort-controller/polyfill.js +0 -21
  349. package/node_modules/abort-controller/polyfill.mjs +0 -19
  350. package/node_modules/base64-js/LICENSE +0 -21
  351. package/node_modules/base64-js/README.md +0 -34
  352. package/node_modules/base64-js/base64js.min.js +0 -1
  353. package/node_modules/base64-js/index.d.ts +0 -3
  354. package/node_modules/base64-js/index.js +0 -150
  355. package/node_modules/base64-js/package.json +0 -47
  356. package/node_modules/buffer/AUTHORS.md +0 -73
  357. package/node_modules/buffer/LICENSE +0 -21
  358. package/node_modules/buffer/README.md +0 -410
  359. package/node_modules/buffer/index.d.ts +0 -194
  360. package/node_modules/buffer/index.js +0 -2106
  361. package/node_modules/buffer/package.json +0 -93
  362. package/node_modules/event-target-shim/LICENSE +0 -22
  363. package/node_modules/event-target-shim/README.md +0 -293
  364. package/node_modules/event-target-shim/dist/event-target-shim.js +0 -871
  365. package/node_modules/event-target-shim/dist/event-target-shim.js.map +0 -1
  366. package/node_modules/event-target-shim/dist/event-target-shim.mjs +0 -862
  367. package/node_modules/event-target-shim/dist/event-target-shim.mjs.map +0 -1
  368. package/node_modules/event-target-shim/dist/event-target-shim.umd.js +0 -6
  369. package/node_modules/event-target-shim/dist/event-target-shim.umd.js.map +0 -1
  370. package/node_modules/event-target-shim/index.d.ts +0 -399
  371. package/node_modules/event-target-shim/package.json +0 -82
  372. package/node_modules/events/.airtap.yml +0 -15
  373. package/node_modules/events/.github/FUNDING.yml +0 -12
  374. package/node_modules/events/.travis.yml +0 -18
  375. package/node_modules/events/History.md +0 -118
  376. package/node_modules/events/LICENSE +0 -22
  377. package/node_modules/events/Readme.md +0 -50
  378. package/node_modules/events/events.js +0 -497
  379. package/node_modules/events/package.json +0 -37
  380. package/node_modules/events/security.md +0 -10
  381. package/node_modules/events/tests/add-listeners.js +0 -111
  382. package/node_modules/events/tests/check-listener-leaks.js +0 -101
  383. package/node_modules/events/tests/common.js +0 -104
  384. package/node_modules/events/tests/errors.js +0 -13
  385. package/node_modules/events/tests/events-list.js +0 -28
  386. package/node_modules/events/tests/events-once.js +0 -234
  387. package/node_modules/events/tests/index.js +0 -64
  388. package/node_modules/events/tests/legacy-compat.js +0 -16
  389. package/node_modules/events/tests/listener-count.js +0 -37
  390. package/node_modules/events/tests/listeners-side-effects.js +0 -56
  391. package/node_modules/events/tests/listeners.js +0 -168
  392. package/node_modules/events/tests/max-listeners.js +0 -47
  393. package/node_modules/events/tests/method-names.js +0 -35
  394. package/node_modules/events/tests/modify-in-emit.js +0 -90
  395. package/node_modules/events/tests/num-args.js +0 -60
  396. package/node_modules/events/tests/once.js +0 -83
  397. package/node_modules/events/tests/prepend.js +0 -31
  398. package/node_modules/events/tests/remove-all-listeners.js +0 -133
  399. package/node_modules/events/tests/remove-listeners.js +0 -212
  400. package/node_modules/events/tests/set-max-listeners-side-effects.js +0 -31
  401. package/node_modules/events/tests/special-event-names.js +0 -45
  402. package/node_modules/events/tests/subclass.js +0 -66
  403. package/node_modules/events/tests/symbols.js +0 -25
  404. package/node_modules/fast-redact/.github/workflows/ci.yml +0 -37
  405. package/node_modules/fast-redact/LICENSE +0 -21
  406. package/node_modules/fast-redact/benchmark/index.js +0 -223
  407. package/node_modules/fast-redact/example/default-usage.js +0 -14
  408. package/node_modules/fast-redact/example/intermediate-wildcard-array.js +0 -11
  409. package/node_modules/fast-redact/example/multi-wildcard-array-depth.js +0 -11
  410. package/node_modules/fast-redact/example/multi-wildcard-array-end.js +0 -11
  411. package/node_modules/fast-redact/example/multi-wildcard-array.js +0 -11
  412. package/node_modules/fast-redact/example/serialize-false.js +0 -11
  413. package/node_modules/fast-redact/example/serialize-function.js +0 -4
  414. package/node_modules/fast-redact/example/top-wildcard-object.js +0 -9
  415. package/node_modules/fast-redact/index.js +0 -56
  416. package/node_modules/fast-redact/lib/modifiers.js +0 -291
  417. package/node_modules/fast-redact/lib/parse.js +0 -44
  418. package/node_modules/fast-redact/lib/redactor.js +0 -108
  419. package/node_modules/fast-redact/lib/restorer.js +0 -92
  420. package/node_modules/fast-redact/lib/rx.js +0 -16
  421. package/node_modules/fast-redact/lib/state.js +0 -20
  422. package/node_modules/fast-redact/lib/validator.js +0 -33
  423. package/node_modules/fast-redact/package.json +0 -50
  424. package/node_modules/fast-redact/readme.md +0 -282
  425. package/node_modules/fast-redact/test/index.js +0 -1502
  426. package/node_modules/ieee754/LICENSE +0 -11
  427. package/node_modules/ieee754/README.md +0 -51
  428. package/node_modules/ieee754/index.d.ts +0 -10
  429. package/node_modules/ieee754/index.js +0 -85
  430. package/node_modules/ieee754/package.json +0 -52
  431. package/node_modules/pino/.eslintignore +0 -2
  432. package/node_modules/pino/.eslintrc +0 -8
  433. package/node_modules/pino/.github/workflows/bench.yml +0 -61
  434. package/node_modules/pino/.github/workflows/ci.yml +0 -86
  435. package/node_modules/pino/.github/workflows/lock-threads.yml +0 -30
  436. package/node_modules/pino/.github/workflows/package-manager-ci.yml +0 -99
  437. package/node_modules/pino/.github/workflows/target-main.yml +0 -23
  438. package/node_modules/pino/.taprc.yaml +0 -8
  439. package/node_modules/pino/docsify/sidebar.md +0 -26
  440. package/node_modules/pino/favicon-16x16.png +0 -0
  441. package/node_modules/pino/favicon-32x32.png +0 -0
  442. package/node_modules/pino/lib/worker-pipeline.js +0 -38
  443. package/node_modules/pino/node_modules/sonic-boom/.eslintignore +0 -2
  444. package/node_modules/pino/node_modules/sonic-boom/.husky/pre-commit +0 -4
  445. package/node_modules/pino/node_modules/sonic-boom/.taprc.yaml +0 -11
  446. package/node_modules/pino/node_modules/sonic-boom/LICENSE +0 -21
  447. package/node_modules/pino/node_modules/sonic-boom/README.md +0 -151
  448. package/node_modules/pino/node_modules/sonic-boom/bench.js +0 -98
  449. package/node_modules/pino/node_modules/sonic-boom/check.js +0 -18
  450. package/node_modules/pino/node_modules/sonic-boom/example.js +0 -8
  451. package/node_modules/pino/node_modules/sonic-boom/fixtures/firehose.js +0 -22
  452. package/node_modules/pino/node_modules/sonic-boom/index.js +0 -690
  453. package/node_modules/pino/node_modules/sonic-boom/package.json +0 -50
  454. package/node_modules/pino/node_modules/sonic-boom/test/destroy.test.js +0 -49
  455. package/node_modules/pino/node_modules/sonic-boom/test/end.test.js +0 -98
  456. package/node_modules/pino/node_modules/sonic-boom/test/flush-sync.test.js +0 -140
  457. package/node_modules/pino/node_modules/sonic-boom/test/flush.test.js +0 -419
  458. package/node_modules/pino/node_modules/sonic-boom/test/fsync.test.js +0 -63
  459. package/node_modules/pino/node_modules/sonic-boom/test/helper.js +0 -42
  460. package/node_modules/pino/node_modules/sonic-boom/test/minlength.test.js +0 -35
  461. package/node_modules/pino/node_modules/sonic-boom/test/mode.test.js +0 -116
  462. package/node_modules/pino/node_modules/sonic-boom/test/reopen.test.js +0 -239
  463. package/node_modules/pino/node_modules/sonic-boom/test/retry.test.js +0 -414
  464. package/node_modules/pino/node_modules/sonic-boom/test/sync.test.js +0 -261
  465. package/node_modules/pino/node_modules/sonic-boom/test/write.test.js +0 -465
  466. package/node_modules/pino/node_modules/sonic-boom/types/index.d.ts +0 -62
  467. package/node_modules/pino/node_modules/sonic-boom/types/tests/test.ts +0 -4
  468. package/node_modules/pino/pino-banner.png +0 -0
  469. package/node_modules/pino/pino-logo-hire.png +0 -0
  470. package/node_modules/pino/pino-tree.png +0 -0
  471. package/node_modules/pino/pretty-demo.png +0 -0
  472. package/node_modules/pino/test/errorKey.test.js +0 -34
  473. package/node_modules/pino/test/transport/core.test.ts +0 -236
  474. package/node_modules/pino-std-serializers/.taprc +0 -2
  475. package/node_modules/process/.eslintrc +0 -21
  476. package/node_modules/process/LICENSE +0 -22
  477. package/node_modules/process/README.md +0 -26
  478. package/node_modules/process/browser.js +0 -184
  479. package/node_modules/process/index.js +0 -2
  480. package/node_modules/process/package.json +0 -27
  481. package/node_modules/process/test.js +0 -199
  482. package/node_modules/process-warning/.taprc +0 -2
  483. package/node_modules/readable-stream/LICENSE +0 -47
  484. package/node_modules/readable-stream/README.md +0 -116
  485. package/node_modules/readable-stream/lib/_stream_duplex.js +0 -4
  486. package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -4
  487. package/node_modules/readable-stream/lib/_stream_readable.js +0 -4
  488. package/node_modules/readable-stream/lib/_stream_transform.js +0 -4
  489. package/node_modules/readable-stream/lib/_stream_writable.js +0 -4
  490. package/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +0 -52
  491. package/node_modules/readable-stream/lib/internal/streams/buffer_list.js +0 -157
  492. package/node_modules/readable-stream/lib/internal/streams/compose.js +0 -194
  493. package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -290
  494. package/node_modules/readable-stream/lib/internal/streams/duplex.js +0 -143
  495. package/node_modules/readable-stream/lib/internal/streams/duplexify.js +0 -378
  496. package/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +0 -286
  497. package/node_modules/readable-stream/lib/internal/streams/from.js +0 -98
  498. package/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +0 -51
  499. package/node_modules/readable-stream/lib/internal/streams/legacy.js +0 -89
  500. package/node_modules/readable-stream/lib/internal/streams/operators.js +0 -457
  501. package/node_modules/readable-stream/lib/internal/streams/passthrough.js +0 -39
  502. package/node_modules/readable-stream/lib/internal/streams/pipeline.js +0 -471
  503. package/node_modules/readable-stream/lib/internal/streams/readable.js +0 -1290
  504. package/node_modules/readable-stream/lib/internal/streams/state.js +0 -39
  505. package/node_modules/readable-stream/lib/internal/streams/transform.js +0 -180
  506. package/node_modules/readable-stream/lib/internal/streams/utils.js +0 -327
  507. package/node_modules/readable-stream/lib/internal/streams/writable.js +0 -819
  508. package/node_modules/readable-stream/lib/internal/validators.js +0 -530
  509. package/node_modules/readable-stream/lib/ours/browser.js +0 -35
  510. package/node_modules/readable-stream/lib/ours/errors.js +0 -343
  511. package/node_modules/readable-stream/lib/ours/index.js +0 -65
  512. package/node_modules/readable-stream/lib/ours/primordials.js +0 -124
  513. package/node_modules/readable-stream/lib/ours/util/inspect.js +0 -55
  514. package/node_modules/readable-stream/lib/ours/util.js +0 -148
  515. package/node_modules/readable-stream/lib/stream/promises.js +0 -43
  516. package/node_modules/readable-stream/lib/stream.js +0 -143
  517. package/node_modules/readable-stream/package.json +0 -88
  518. package/node_modules/safe-buffer/LICENSE +0 -21
  519. package/node_modules/safe-buffer/README.md +0 -584
  520. package/node_modules/safe-buffer/index.d.ts +0 -187
  521. package/node_modules/safe-buffer/index.js +0 -65
  522. package/node_modules/safe-buffer/package.json +0 -51
  523. package/node_modules/string_decoder/LICENSE +0 -48
  524. package/node_modules/string_decoder/README.md +0 -47
  525. package/node_modules/string_decoder/lib/string_decoder.js +0 -296
  526. package/node_modules/string_decoder/package.json +0 -34
@@ -1,11 +1,13 @@
1
1
  'use strict'
2
2
 
3
- const os = require('os')
4
- const { join } = require('path')
5
- const { readFile } = require('fs').promises
3
+ const test = require('node:test')
4
+ const assert = require('node:assert')
5
+ const os = require('node:os')
6
+ const { join } = require('node:path')
7
+ const { readFile } = require('node:fs').promises
6
8
  const writeStream = require('flush-write-stream')
9
+
7
10
  const { watchFileCreated, file } = require('../helper')
8
- const { test } = require('tap')
9
11
  const pino = require('../../')
10
12
 
11
13
  const { pid } = process
@@ -23,8 +25,7 @@ function parseLogs (buffer) {
23
25
  return JSON.parse(`[${buffer.toString().replace(/}{/g, '},{')}]`)
24
26
  }
25
27
 
26
- test('transport uses pino config', async ({ same, teardown, plan }) => {
27
- plan(1)
28
+ test('transport uses pino config', async (t) => {
28
29
  const destination = file()
29
30
  const transport = pino.transport({
30
31
  pipeline: [{
@@ -34,7 +35,7 @@ test('transport uses pino config', async ({ same, teardown, plan }) => {
34
35
  options: { destination }
35
36
  }]
36
37
  })
37
- teardown(transport.end.bind(transport))
38
+ t.after(transport.end.bind(transport))
38
39
  const instance = pino({
39
40
  messageKey: 'customMessageKey',
40
41
  errorKey: 'customErrorKey',
@@ -47,7 +48,7 @@ test('transport uses pino config', async ({ same, teardown, plan }) => {
47
48
  await watchFileCreated(destination)
48
49
  const result = parseLogs(await readFile(destination))
49
50
 
50
- same(result, [{
51
+ assert.deepEqual(result, [{
51
52
  severityText: 'custom',
52
53
  body: 'foo',
53
54
  attributes: {
@@ -65,8 +66,7 @@ test('transport uses pino config', async ({ same, teardown, plan }) => {
65
66
  }])
66
67
  })
67
68
 
68
- test('transport uses pino config without customizations', async ({ same, teardown, plan }) => {
69
- plan(1)
69
+ test('transport uses pino config without customizations', async (t) => {
70
70
  const destination = file()
71
71
  const transport = pino.transport({
72
72
  pipeline: [{
@@ -76,7 +76,7 @@ test('transport uses pino config without customizations', async ({ same, teardow
76
76
  options: { destination }
77
77
  }]
78
78
  })
79
- teardown(transport.end.bind(transport))
79
+ t.after(transport.end.bind(transport))
80
80
  const instance = pino(transport)
81
81
 
82
82
  const error = new Error('qux')
@@ -85,7 +85,7 @@ test('transport uses pino config without customizations', async ({ same, teardow
85
85
  await watchFileCreated(destination)
86
86
  const result = parseLogs(await readFile(destination))
87
87
 
88
- same(result, [{
88
+ assert.deepEqual(result, [{
89
89
  severityText: 'info',
90
90
  body: 'baz',
91
91
  attributes: {
@@ -103,8 +103,7 @@ test('transport uses pino config without customizations', async ({ same, teardow
103
103
  }])
104
104
  })
105
105
 
106
- test('transport uses pino config with multistream', async ({ same, teardown, plan }) => {
107
- plan(2)
106
+ test('transport uses pino config with multistream', async (t) => {
108
107
  const destination = file()
109
108
  const messages = []
110
109
  const stream = writeStream(function (data, enc, cb) {
@@ -121,7 +120,7 @@ test('transport uses pino config with multistream', async ({ same, teardown, pla
121
120
  options: { destination }
122
121
  }]
123
122
  })
124
- teardown(transport.end.bind(transport))
123
+ t.after(transport.end.bind(transport))
125
124
  const instance = pino({
126
125
  messageKey: 'customMessageKey',
127
126
  errorKey: 'customErrorKey',
@@ -135,7 +134,7 @@ test('transport uses pino config with multistream', async ({ same, teardown, pla
135
134
  await watchFileCreated(destination)
136
135
  const result = parseLogs(await readFile(destination))
137
136
 
138
- same(result, [{
137
+ assert.deepEqual(result, [{
139
138
  severityText: 'custom',
140
139
  body: 'fizz',
141
140
  attributes: {
@@ -152,7 +151,7 @@ test('transport uses pino config with multistream', async ({ same, teardown, pla
152
151
  error: serializedError
153
152
  }])
154
153
 
155
- same(messages, [{
154
+ assert.deepEqual(messages, [{
156
155
  level: 35,
157
156
  pid,
158
157
  hostname,
@@ -0,0 +1,40 @@
1
+ 'use strict'
2
+
3
+ const test = require('node:test')
4
+ const proxyquire = require('proxyquire')
5
+ const tspl = require('@matteo.collina/tspl')
6
+
7
+ test('should import', async (t) => {
8
+ const plan = tspl(t, { plan: 2 })
9
+ const mockRealRequire = (target) => {
10
+ return {
11
+ default: {
12
+ default: () => {
13
+ plan.equal(target, 'pino-pretty')
14
+ return Promise.resolve()
15
+ }
16
+ }
17
+ }
18
+ }
19
+ const mockRealImport = async () => {
20
+ await Promise.resolve()
21
+ throw Object.assign(new Error(), { code: 'ERR_MODULE_NOT_FOUND' })
22
+ }
23
+
24
+ const loadTransportStreamBuilder = proxyquire(
25
+ '../lib/transport-stream.js',
26
+ {
27
+ 'real-require': {
28
+ realRequire: mockRealRequire,
29
+ realImport: mockRealImport
30
+ }
31
+ }
32
+ )
33
+
34
+ const fn = await loadTransportStreamBuilder('pino-pretty')
35
+
36
+ await fn()
37
+ plan.ok('returned promise resolved')
38
+
39
+ await plan
40
+ })
@@ -1,8 +1,7 @@
1
1
  import { expectType } from "tsd";
2
2
 
3
- import pino from '../../pino';
4
- import { pino as pinoNamed, P } from "../../pino";
5
3
  import * as pinoStar from "../../pino";
4
+ import { default as P, default as pino, pino as pinoNamed } from '../../pino';
6
5
  import pinoCjsImport = require ("../../pino");
7
6
  const pinoCjs = require("../../pino");
8
7
  const { P: pinoCjsNamed } = require('pino')
@@ -15,10 +14,12 @@ expectType<pino.Logger>(pinoNamed());
15
14
  expectType<P.Logger>(pinoNamed());
16
15
  expectType<pino.Logger>(pinoStar.default());
17
16
  expectType<pino.Logger>(pinoStar.pino());
18
- expectType<pino.Logger>(pinoCjsImport.default());
17
+ // expectType<pino.Logger>(pinoCjsImport.default());
19
18
  expectType<pino.Logger>(pinoCjsImport.pino());
20
19
  expectType<any>(pinoCjsNamed());
21
20
  expectType<any>(pinoCjs());
21
+ expectType<P.TimeFn>(pinoNamed.stdTimeFunctions.isoTimeNano)
22
+ expectType<string>(pinoNamed.stdTimeFunctions.isoTimeNano())
22
23
 
23
24
  const levelChangeEventListener: P.LevelChangeEventListener = (
24
25
  lvl: P.LevelWithSilent | string,
@@ -1,6 +1,6 @@
1
1
  import { expectType } from 'tsd'
2
2
 
3
- import { createWriteStream } from 'fs'
3
+ import { createWriteStream } from 'node:fs'
4
4
 
5
5
  import pino, { multistream } from '../../pino'
6
6
 
@@ -22,6 +22,7 @@ expectType<LevelMapping>(levels);
22
22
  expectType<MultiStreamRes>(multistream(process.stdout));
23
23
  expectType<SerializedError>(stdSerializers.err({} as any));
24
24
  expectType<string>(stdTimeFunctions.isoTime());
25
+ expectType<string>(stdTimeFunctions.isoTimeNano());
25
26
  expectType<string>(version);
26
27
 
27
28
  // Can't test against `unique symbol`, see https://github.com/SamVerschueren/tsd/issues/49
@@ -1,4 +1,4 @@
1
- import { pino } from '../../pino'
1
+ import pino from '../../pino'
2
2
  import { expectType } from "tsd";
3
3
 
4
4
  // Single
@@ -1,7 +1,7 @@
1
1
  import { expectAssignable, expectType, expectNotAssignable } from "tsd";
2
2
 
3
3
  import pino from "../../";
4
- import type {LevelWithSilent, Logger, LogFn, P, DestinationStreamWithMetadata, Level, LevelOrString, LevelWithSilentOrString, LoggerExtras } from "../../pino";
4
+ import type {LevelWithSilent, Logger, LogFn, DestinationStreamWithMetadata, Level, LevelOrString, LevelWithSilentOrString, LoggerExtras, LoggerOptions } from "../../pino";
5
5
 
6
6
  // NB: can also use `import * as pino`, but that form is callable as `pino()`
7
7
  // under `esModuleInterop: false` or `pino.default()` under `esModuleInterop: true`.
@@ -10,18 +10,13 @@ expectAssignable<LoggerExtras>(log);
10
10
  expectType<Logger>(log);
11
11
  expectType<LogFn>(log.info);
12
12
 
13
- expectType<P.Logger>(log);
14
- expectType<P.LogFn>(log.info);
15
-
16
13
  expectType<Parameters<typeof log.isLevelEnabled>>([log.level]);
17
14
 
18
15
  const level: Level = 'debug';
19
16
  expectAssignable<string>(level);
20
- expectAssignable<P.Level>(level);
21
17
 
22
18
  const levelWithSilent: LevelWithSilent = 'silent';
23
19
  expectAssignable<string>(levelWithSilent);
24
- expectAssignable<P.LevelWithSilent>(levelWithSilent);
25
20
 
26
21
  const levelOrString: LevelOrString = "myCustomLevel";
27
22
  expectAssignable<string>(levelOrString);
@@ -46,3 +41,26 @@ const needsMetadata: typeof pino.symbols.needsMetadataGsym = pino.symbols.needsM
46
41
  if (stream[needsMetadata]) {
47
42
  expectType<number>(stream.lastLevel);
48
43
  }
44
+
45
+ const loggerOptions:LoggerOptions = {
46
+ browser: {
47
+ formatters: {
48
+ log(obj) {
49
+ return obj
50
+ },
51
+ level(label, number) {
52
+ return { label, number}
53
+ }
54
+
55
+ }
56
+ }
57
+ }
58
+
59
+ expectType<LoggerOptions>(loggerOptions)
60
+
61
+ // Reference: https://github.com/pinojs/pino/issues/2285
62
+ const someConst = "test" as const;
63
+ pino().error({}, someConst);
64
+ const someFunc = <T extends typeof someConst>(someConst: T) => {
65
+ pino().error({}, someConst);
66
+ };
@@ -1,8 +1,9 @@
1
1
  import { IncomingMessage, ServerResponse } from "http";
2
+ import { mock } from 'node:test'
2
3
  import { Socket } from "net";
3
4
  import { expectError, expectType } from 'tsd';
4
- import P, { pino } from "../../";
5
- import Logger = P.Logger;
5
+ import pino, { LogFn, LoggerOptions } from "../../";
6
+ import Logger = pino.Logger;
6
7
 
7
8
  const log = pino();
8
9
  const info = log.info;
@@ -10,10 +11,77 @@ const error = log.error;
10
11
 
11
12
  info("hello world");
12
13
  error("this is at error level");
13
- info("the answer is %d", 42);
14
+
15
+ // primitive types
16
+ info('simple string');
17
+ info(true)
18
+ info(42);
19
+ info(3.14);
20
+ info(null);
21
+ info(undefined);
22
+
23
+ // object types
24
+ info({ a: 1, b: '2' });
25
+ info(new Error());
26
+ info(new Date());
27
+ info([])
28
+ info(new Map());
29
+ info(new Set());
30
+
31
+ // placeholder messages
32
+ info('Hello %s', 'world');
33
+ info('The answer is %d', 42);
34
+ info('The object is %o', { a: 1, b: '2' });
35
+ info('The json is %j', { a: 1, b: '2' });
36
+ info('The object is %O', { a: 1, b: '2' });
37
+ info('The answer is %d and the question is %s with %o', 42, 'unknown', { correct: 'order' });
38
+ info('Missing placeholder is fine %s');
39
+
40
+ // %s placeholder supports all primitive types
41
+ info('Boolean %s', true);
42
+ info('Boolean %s', false);
43
+ info('Number %s', 123);
44
+ info('Number %s', 3.14);
45
+ info('BigInt %s', BigInt(123));
46
+ info('Null %s', null);
47
+ info('Undefined %s', undefined);
48
+ info('Symbol %s', Symbol('test'));
49
+ info('String %s', 'hello');
50
+
51
+ // %s placeholder with multiple primitives
52
+ info('Multiple primitives %s %s %s', true, 42, 'world');
53
+ info('All primitive types %s %s %s %s %s %s %s', 'string', 123, true, BigInt(123), null, undefined, Symbol('test'));
54
+ declare const errorOrString: string | Error;
55
+ info(errorOrString)
56
+
57
+ // placeholder messages type errors
58
+ expectError(info('The answer is %d', 'not a number'));
59
+ expectError(info('The object is %o', 'not an object'));
60
+ expectError(info('The object is %j', 'not a JSON'));
61
+ expectError(info('The object is %O', 'not an object'));
62
+ expectError(info('The answer is %d and the question is %s with %o', 42, { incorrect: 'order' }, 'unknown'));
63
+ expectError(info('Extra message %s', 'after placeholder', 'not allowed'));
64
+
65
+ // object types with messages
14
66
  info({ obj: 42 }, "hello world");
15
67
  info({ obj: 42, b: 2 }, "hello world");
16
68
  info({ obj: { aa: "bbb" } }, "another");
69
+ info({ a: 1, b: '2' }, 'hello world with %s', 'extra data');
70
+
71
+ // Extra message after placeholder
72
+ expectError(info({ a: 1, b: '2' }, 'hello world with %d', 2, 'extra' ));
73
+
74
+ // metadata with messages type passes, because of custom toString method
75
+ // We can't detect if the object has a custom toString method that returns a string
76
+ info({ a: 1, b: '2' }, 'hello world with %s', {});
77
+
78
+ // metadata after message
79
+ expectError(info('message', { a: 1, b: '2' }));
80
+
81
+ // multiple strings without placeholder
82
+ expectError(info('string1', 'string2'));
83
+ expectError(info('string1', 'string2', 'string3'));
84
+
17
85
  setImmediate(info, "after setImmediate");
18
86
  error(new Error("an error"));
19
87
 
@@ -23,7 +91,7 @@ const testUniqSymbol = {
23
91
  [pino.symbols.needsMetadataGsym]: true,
24
92
  }[pino.symbols.needsMetadataGsym];
25
93
 
26
- const log2: P.Logger = pino({
94
+ const log2: pino.Logger = pino({
27
95
  name: "myapp",
28
96
  safe: true,
29
97
  serializers: {
@@ -71,6 +139,17 @@ pino({
71
139
  redact: { paths: [], censor: (value, path) => path.join() },
72
140
  });
73
141
 
142
+ pino({
143
+ redact: {
144
+ paths: [],
145
+ censor: (value): string => 'SECRET',
146
+ },
147
+ });
148
+
149
+ expectError(pino({
150
+ redact: { paths: [], censor: (value: string) => value },
151
+ }));
152
+
74
153
  pino({
75
154
  depthLimit: 1
76
155
  });
@@ -107,6 +186,12 @@ pino({
107
186
  },
108
187
  });
109
188
 
189
+ pino({
190
+ browser: {
191
+ asObjectBindingsOnly: true,
192
+ }
193
+ });
194
+
110
195
  pino({}, undefined);
111
196
 
112
197
  pino({ base: null });
@@ -199,6 +284,10 @@ const withTimeFn = pino({
199
284
  timestamp: pino.stdTimeFunctions.isoTime,
200
285
  });
201
286
 
287
+ const withRFC3339TimeFn = pino({
288
+ timestamp: pino.stdTimeFunctions.isoTimeNano,
289
+ });
290
+
202
291
  const withNestedKey = pino({
203
292
  nestedKey: "payload",
204
293
  });
@@ -209,6 +298,10 @@ const withHooks = pino({
209
298
  expectType<pino.Logger>(this);
210
299
  return method.apply(this, args);
211
300
  },
301
+ streamWrite(s) {
302
+ expectType<string>(s);
303
+ return s.replaceAll('secret-key', 'xxx');
304
+ },
212
305
  },
213
306
  });
214
307
 
@@ -296,7 +389,8 @@ const customBaseLogger: CustomBaseLogger = {
296
389
  debug() {},
297
390
  trace() {},
298
391
  silent() {},
299
- child() { return this }
392
+ child() { return this },
393
+ msgPrefix: 'prefix',
300
394
  }
301
395
 
302
396
  // custom levels
@@ -394,6 +488,32 @@ const bLogger = pino({
394
488
  },
395
489
  });
396
490
 
491
+ // Test that we can properly extract parameters from the log fn type
492
+ type LogParam = Parameters<LogFn>
493
+ const [param1, param2, param3, param4]: LogParam = [{ multiple: 'params' }, 'should', 'be', 'accepted']
494
+
495
+ expectType<unknown>(param1)
496
+ expectType<string>(param2)
497
+ expectType<unknown>(param3)
498
+ expectType<unknown>(param4)
499
+
500
+ const logger = mock.fn<LogFn>()
501
+ logger.mock.calls[0].arguments[1]?.includes('I should be able to get params')
502
+
503
+ const hooks: LoggerOptions['hooks'] = {
504
+ logMethod(this, parameters, method) {
505
+ if (parameters.length >= 2) {
506
+ const [parameter1, parameter2, ...remainingParameters] = parameters;
507
+ if (typeof parameter1 === 'string') {
508
+ return method.apply(this, [parameter2, parameter1, ...remainingParameters]);
509
+ }
510
+ return method.apply(this, [parameter2]);
511
+ }
512
+
513
+ return method.apply(this, parameters);
514
+ }
515
+ }
516
+
397
517
  expectType<Logger<'log'>>(pino({
398
518
  customLevels: {
399
519
  log: 5,
@@ -438,4 +558,39 @@ expectError(pino({ levelComparison: 123}), process.stdout);
438
558
  // with wrong custom level comparison return type
439
559
  expectError(pino({ levelComparison: () => null }), process.stdout);
440
560
  expectError(pino({ levelComparison: () => 1 }), process.stdout);
441
- expectError(pino({ levelComparison: () => 'string' }), process.stdout);
561
+ expectError(pino({ levelComparison: () => 'string' }), process.stdout);
562
+
563
+ const customLevelsOnlyOpts = {
564
+ useOnlyCustomLevels: true,
565
+ customLevels: {
566
+ customDebug: 10,
567
+ info: 20, // to make sure the default names are also available for override
568
+ customNetwork: 30,
569
+ customError: 40,
570
+ },
571
+ level: 'customDebug',
572
+ } satisfies LoggerOptions;
573
+
574
+ const loggerWithCustomLevelOnly = pino(customLevelsOnlyOpts);
575
+ loggerWithCustomLevelOnly.customDebug('test3')
576
+ loggerWithCustomLevelOnly.info('test4')
577
+ loggerWithCustomLevelOnly.customError('test5')
578
+ loggerWithCustomLevelOnly.customNetwork('test6')
579
+
580
+ expectError(loggerWithCustomLevelOnly.fatal('test'));
581
+ expectError(loggerWithCustomLevelOnly.error('test'));
582
+ expectError(loggerWithCustomLevelOnly.warn('test'));
583
+ expectError(loggerWithCustomLevelOnly.debug('test'));
584
+ expectError(loggerWithCustomLevelOnly.trace('test'));
585
+
586
+ // Module extension
587
+ declare module "../../" {
588
+ interface LogFnFields {
589
+ bannedField?: never;
590
+ typeCheckedField?: string
591
+ }
592
+ }
593
+
594
+ info({typeCheckedField: 'bar'})
595
+ expectError(info({bannedField: 'bar'}))
596
+ expectError(info({typeCheckedField: 123}))
@@ -1,7 +1,8 @@
1
- import { StreamEntry, pino } from '../../pino'
2
- import { join } from 'path'
3
- import { tmpdir } from 'os'
1
+ import { join } from 'node:path'
2
+ import { tmpdir } from 'node:os'
4
3
  import pinoPretty from 'pino-pretty'
4
+ // Test both default ("Pino") and named ("pino") imports.
5
+ import Pino, { LoggerOptions, StreamEntry, pino, multistream, transport } from '../../pino'
5
6
 
6
7
  const destination = join(
7
8
  tmpdir(),
@@ -9,25 +10,31 @@ const destination = join(
9
10
  )
10
11
 
11
12
  // Single
12
- const transport = pino.transport({
13
+ const transport1 = transport({
13
14
  target: 'pino-pretty',
14
15
  options: { some: 'options for', the: 'transport' }
15
16
  })
16
- const logger = pino(transport)
17
+ const logger = pino(transport1)
17
18
  logger.setBindings({ some: 'bindings' })
18
19
  logger.info('test2')
19
20
  logger.flush()
21
+ const loggerDefault = Pino(transport1)
22
+ loggerDefault.setBindings({ some: 'bindings' })
23
+ loggerDefault.info('test2')
24
+ loggerDefault.flush()
20
25
 
21
- const transport2 = pino.transport({
26
+ const transport2 = transport({
22
27
  target: 'pino-pretty',
23
28
  })
24
29
  const logger2 = pino(transport2)
25
30
  logger2.info('test2')
31
+ const logger2Default = Pino(transport2)
32
+ logger2Default.info('test2')
26
33
 
27
34
 
28
35
  // Multiple
29
36
 
30
- const transports = pino.transport({targets: [
37
+ const transports = transport({targets: [
31
38
  {
32
39
  level: 'info',
33
40
  target: 'pino-pretty',
@@ -45,19 +52,19 @@ loggerMulti.info('test2')
45
52
  // custom levels
46
53
 
47
54
  const customLevels = {
48
- debug : 1,
55
+ customDebug : 1,
49
56
  info : 2,
50
- network : 3,
51
- error : 4,
57
+ customNetwork : 3,
58
+ customError : 4,
52
59
  };
53
60
 
54
61
  type CustomLevels = keyof typeof customLevels;
55
62
 
56
63
  const pinoOpts = {
57
- level: 'debug',
58
64
  useOnlyCustomLevels: true,
59
65
  customLevels: customLevels,
60
- };
66
+ level: 'customDebug',
67
+ } satisfies LoggerOptions;
61
68
 
62
69
  const multistreamOpts = {
63
70
  dedupe: true,
@@ -65,14 +72,19 @@ const multistreamOpts = {
65
72
  };
66
73
 
67
74
  const streams: StreamEntry<CustomLevels>[] = [
68
- { level : 'debug', stream : pinoPretty() },
75
+ { level : 'customDebug', stream : pinoPretty() },
69
76
  { level : 'info', stream : pinoPretty() },
70
- { level : 'network', stream : pinoPretty() },
71
- { level : 'error', stream : pinoPretty() },
77
+ { level : 'customNetwork', stream : pinoPretty() },
78
+ { level : 'customError', stream : pinoPretty() },
72
79
  ];
73
80
 
74
- const loggerCustomLevel = pino(pinoOpts, pino.multistream(streams, multistreamOpts));
75
- loggerCustomLevel.debug('test3')
81
+ const loggerCustomLevel = pino(pinoOpts, multistream(streams, multistreamOpts));
82
+ loggerCustomLevel.customDebug('test3')
76
83
  loggerCustomLevel.info('test4')
77
- loggerCustomLevel.error('test5')
78
- loggerCustomLevel.network('test6')
84
+ loggerCustomLevel.customError('test5')
85
+ loggerCustomLevel.customNetwork('test6')
86
+ const loggerCustomLevelDefault = Pino(pinoOpts, multistream(streams, multistreamOpts));
87
+ loggerCustomLevelDefault.customDebug('test3')
88
+ loggerCustomLevelDefault.info('test4')
89
+ loggerCustomLevelDefault.customError('test5')
90
+ loggerCustomLevelDefault.customNetwork('test6')
@@ -5,7 +5,7 @@
5
5
  "module": "commonjs",
6
6
  "noEmit": true,
7
7
  "strict": true,
8
- "esModuleInterop": true,
8
+ "esModuleInterop": true
9
9
  },
10
10
  "exclude": [
11
11
  "./test/types/*.test-d.ts",
@@ -38,11 +38,9 @@ jobs:
38
38
  contents: read
39
39
  strategy:
40
40
  matrix:
41
- node-version: [14, 16, 18, 20]
41
+ node-version: [18, 20, 22]
42
42
  os: [macos-latest, ubuntu-latest, windows-latest]
43
- exclude:
44
- - node-version: 14
45
- os: windows-latest
43
+
46
44
  steps:
47
45
  - name: Check out repo
48
46
  uses: actions/checkout@v4
@@ -2,7 +2,7 @@
2
2
 
3
3
  const metadata = Symbol.for('pino.metadata')
4
4
  const split = require('split2')
5
- const { Duplex } = require('readable-stream')
5
+ const { Duplex } = require('stream')
6
6
  const { parentPort, workerData } = require('worker_threads')
7
7
 
8
8
  function createDeferred () {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pino-abstract-transport",
3
- "version": "1.2.0",
3
+ "version": "2.0.0",
4
4
  "description": "Write Pino transports easily",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -23,7 +23,6 @@
23
23
  },
24
24
  "homepage": "https://github.com/pinojs/pino-abstract-transport#readme",
25
25
  "dependencies": {
26
- "readable-stream": "^4.0.0",
27
26
  "split2": "^4.0.0"
28
27
  },
29
28
  "devDependencies": {
@@ -32,7 +31,7 @@
32
31
  "snazzy": "^9.0.0",
33
32
  "standard": "^17.0.0",
34
33
  "tap": "^16.0.0",
35
- "thread-stream": "^2.4.1",
34
+ "thread-stream": "^2.6.0",
36
35
  "tsd": "^0.31.0"
37
36
  },
38
37
  "tsd": {
@@ -80,7 +80,7 @@ test('broken json', ({ match, same, plan }) => {
80
80
  const stream = build(function (source) {
81
81
  source.on('unknown', function (line, error) {
82
82
  same(expected, line)
83
- const regex = /^(Unexpected end of JSON input|Unterminated string in JSON at position 12)$/
83
+ const regex = /^(Unexpected end of JSON input|Unterminated string in JSON at position 12)( \(line 1 column 13\))?$/
84
84
  match(error.message, regex)
85
85
  })
86
86
  })