@encharm/cws 4.1.0 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (370) hide show
  1. package/dist/bindings/cws_linux_108.node +0 -0
  2. package/dist/bindings/cws_linux_64.node +0 -0
  3. package/dist/bindings/cws_linux_72.node +0 -0
  4. package/dist/bindings/cws_linux_79.node +0 -0
  5. package/dist/bindings/cws_linux_83.node +0 -0
  6. package/dist/bindings/cws_linux_93.node +0 -0
  7. package/dist/bindings/cws_win32_64.node +0 -0
  8. package/dist/bindings/cws_win32_72.node +0 -0
  9. package/dist/bindings/cws_win32_79.node +0 -0
  10. package/dist/bindings/cws_win32_83.node +0 -0
  11. package/dist/bindings/cws_win32_93.node +0 -0
  12. package/package.json +1 -1
  13. package/src/Addon.h +24 -2
  14. package/src/HTTPSocket.cpp +1 -1
  15. package/src/headers/{13 → 18}/aliased_buffer.h +61 -9
  16. package/src/headers/18/aliased_struct-inl.h +54 -0
  17. package/src/headers/18/aliased_struct.h +63 -0
  18. package/src/headers/{12 → 18}/async_wrap-inl.h +0 -0
  19. package/src/headers/{12 → 18}/async_wrap.h +26 -2
  20. package/src/headers/{12/base64.h → 18/base64-inl.h} +78 -86
  21. package/src/headers/18/base64.h +69 -0
  22. package/src/headers/{12 → 18}/base_object-inl.h +46 -25
  23. package/src/headers/{12 → 18}/base_object.h +82 -17
  24. package/src/headers/{12 → 18}/callback_queue-inl.h +9 -9
  25. package/src/headers/{12 → 18}/callback_queue.h +13 -5
  26. package/src/headers/18/cares_wrap.h +523 -0
  27. package/src/headers/{12 → 18}/connect_wrap.h +0 -0
  28. package/src/headers/{12 → 18}/connection_wrap.h +0 -0
  29. package/src/headers/18/crypto/crypto_aes.h +89 -0
  30. package/src/headers/{13/node_crypto_bio.h → 18/crypto/crypto_bio.h} +3 -4
  31. package/src/headers/18/crypto/crypto_cipher.h +291 -0
  32. package/src/headers/{13/node_crypto_clienthello-inl.h → 18/crypto/crypto_clienthello-inl.h} +4 -5
  33. package/src/headers/{13/node_crypto_clienthello.h → 18/crypto/crypto_clienthello.h} +3 -4
  34. package/src/headers/{12/node_crypto_common.h → 18/crypto/crypto_common.h} +49 -36
  35. package/src/headers/18/crypto/crypto_context.h +147 -0
  36. package/src/headers/18/crypto/crypto_dh.h +156 -0
  37. package/src/headers/18/crypto/crypto_dsa.h +77 -0
  38. package/src/headers/18/crypto/crypto_ec.h +170 -0
  39. package/src/headers/{12/node_crypto_groups.h → 18/crypto/crypto_groups.h} +3 -3
  40. package/src/headers/18/crypto/crypto_hash.h +89 -0
  41. package/src/headers/18/crypto/crypto_hkdf.h +65 -0
  42. package/src/headers/18/crypto/crypto_hmac.h +94 -0
  43. package/src/headers/18/crypto/crypto_keygen.h +305 -0
  44. package/src/headers/18/crypto/crypto_keys.h +420 -0
  45. package/src/headers/18/crypto/crypto_pbkdf2.h +76 -0
  46. package/src/headers/18/crypto/crypto_random.h +130 -0
  47. package/src/headers/18/crypto/crypto_rsa.h +141 -0
  48. package/src/headers/18/crypto/crypto_scrypt.h +87 -0
  49. package/src/headers/18/crypto/crypto_sig.h +168 -0
  50. package/src/headers/18/crypto/crypto_spkac.h +21 -0
  51. package/src/headers/18/crypto/crypto_timing.h +20 -0
  52. package/src/headers/{13/tls_wrap.h → 18/crypto/crypto_tls.h} +137 -66
  53. package/src/headers/18/crypto/crypto_util.h +791 -0
  54. package/src/headers/18/crypto/crypto_x509.h +143 -0
  55. package/src/headers/{12 → 18}/debug_utils-inl.h +0 -0
  56. package/src/headers/{13 → 18}/debug_utils.h +7 -4
  57. package/src/headers/{12 → 18}/diagnosticfilename-inl.h +0 -0
  58. package/src/headers/{12 → 18}/env-inl.h +397 -304
  59. package/src/headers/{12 → 18}/env.h +397 -172
  60. package/src/headers/{12 → 18}/handle_wrap.h +7 -3
  61. package/src/headers/18/histogram-inl.h +107 -0
  62. package/src/headers/18/histogram.h +239 -0
  63. package/src/headers/{13 → 18}/inspector_agent.h +4 -7
  64. package/src/headers/{12 → 18}/inspector_io.h +0 -0
  65. package/src/headers/{13 → 18}/inspector_profiler.h +17 -5
  66. package/src/headers/{12 → 18}/inspector_socket.h +0 -0
  67. package/src/headers/{12 → 18}/inspector_socket_server.h +0 -0
  68. package/src/headers/18/js_native_api.h +571 -0
  69. package/src/headers/{13 → 18}/js_native_api_types.h +30 -7
  70. package/src/headers/{12 → 18}/js_native_api_v8.h +220 -83
  71. package/src/headers/{12 → 18}/js_native_api_v8_internals.h +6 -5
  72. package/src/headers/{12 → 18}/js_stream.h +0 -0
  73. package/src/headers/{12 → 18}/json_utils.h +0 -0
  74. package/src/headers/{13 → 18}/memory_tracker-inl.h +6 -5
  75. package/src/headers/{13 → 18}/memory_tracker.h +0 -7
  76. package/src/headers/{13 → 18}/module_wrap.h +24 -7
  77. package/src/headers/{13 → 18}/node.h +329 -68
  78. package/src/headers/18/node_api.h +288 -0
  79. package/src/headers/18/node_api_internals.h +38 -0
  80. package/src/headers/{12 → 18}/node_api_types.h +12 -9
  81. package/src/headers/{12 → 18}/node_binding.h +0 -0
  82. package/src/headers/18/node_blob.h +191 -0
  83. package/src/headers/18/node_bob-inl.h +37 -0
  84. package/src/headers/18/node_bob.h +111 -0
  85. package/src/headers/{13 → 18}/node_buffer.h +0 -0
  86. package/src/headers/{13 → 18}/node_constants.h +5 -1
  87. package/src/headers/{12 → 18}/node_context_data.h +5 -0
  88. package/src/headers/{12 → 18}/node_contextify.h +37 -2
  89. package/src/headers/{10/node_win32_perfctr_provider.h → 18/node_crypto.h} +30 -31
  90. package/src/headers/{12 → 18}/node_dir.h +0 -0
  91. package/src/headers/{12 → 18}/node_dtrace.h +0 -0
  92. package/src/headers/{12 → 18}/node_errors.h +90 -24
  93. package/src/headers/18/node_external_reference.h +145 -0
  94. package/src/headers/{13 → 18}/node_file-inl.h +38 -21
  95. package/src/headers/{12 → 18}/node_file.h +74 -13
  96. package/src/headers/{13 → 18}/node_http2.h +365 -269
  97. package/src/headers/{12 → 18}/node_http2_state.h +40 -50
  98. package/src/headers/{13 → 18}/node_http_common-inl.h +25 -5
  99. package/src/headers/{13 → 18}/node_http_common.h +24 -20
  100. package/src/headers/{13 → 18}/node_i18n.h +2 -1
  101. package/src/headers/{12 → 18}/node_internals.h +39 -41
  102. package/src/headers/{13 → 18}/node_main_instance.h +15 -18
  103. package/src/headers/{12 → 18}/node_mem-inl.h +0 -0
  104. package/src/headers/{12 → 18}/node_mem.h +1 -1
  105. package/src/headers/{13 → 18}/node_messaging.h +170 -23
  106. package/src/headers/{12 → 18}/node_metadata.h +17 -4
  107. package/src/headers/{12 → 18}/node_mutex.h +77 -1
  108. package/src/headers/{12 → 18}/node_native_module.h +11 -1
  109. package/src/headers/{13 → 18}/node_native_module_env.h +14 -8
  110. package/src/headers/{12 → 18}/node_object_wrap.h +0 -0
  111. package/src/headers/{13 → 18}/node_options-inl.h +51 -21
  112. package/src/headers/{13 → 18}/node_options.h +46 -14
  113. package/src/headers/18/node_perf.h +168 -0
  114. package/src/headers/{12 → 18}/node_perf_common.h +16 -22
  115. package/src/headers/{12 → 18}/node_platform.h +21 -16
  116. package/src/headers/18/node_process-inl.h +26 -0
  117. package/src/headers/18/node_process.h +97 -0
  118. package/src/headers/{13 → 18}/node_report.h +2 -2
  119. package/src/headers/{13 → 18}/node_revert.h +10 -0
  120. package/src/headers/{12 → 18}/node_root_certs.h +439 -651
  121. package/src/headers/18/node_snapshot_builder.h +43 -0
  122. package/src/headers/18/node_snapshotable.h +130 -0
  123. package/src/headers/{12 → 18}/node_sockaddr-inl.h +100 -4
  124. package/src/headers/18/node_sockaddr.h +405 -0
  125. package/src/headers/{12 → 18}/node_stat_watcher.h +7 -1
  126. package/src/headers/{12 → 18}/node_union_bytes.h +0 -0
  127. package/src/headers/{13 → 18}/node_url.h +18 -1
  128. package/src/headers/18/node_v8.h +41 -0
  129. package/src/headers/{12 → 18}/node_v8_platform-inl.h +10 -0
  130. package/src/headers/{13 → 18}/node_version.h +7 -7
  131. package/src/headers/{12 → 18}/node_wasi.h +0 -0
  132. package/src/headers/18/node_wasm_web_api.h +55 -0
  133. package/src/headers/{13 → 18}/node_watchdog.h +0 -0
  134. package/src/headers/{10 → 18}/node_win32_etw_provider-inl.h +7 -6
  135. package/src/headers/{10 → 18}/node_win32_etw_provider.h +0 -0
  136. package/src/headers/{13 → 18}/node_worker.h +24 -17
  137. package/src/headers/{12 → 18}/pipe_wrap.h +2 -0
  138. package/src/headers/{12 → 18}/req_wrap-inl.h +0 -0
  139. package/src/headers/{12 → 18}/req_wrap.h +1 -1
  140. package/src/headers/{12 → 18}/spawn_sync.h +0 -0
  141. package/src/headers/{13 → 18}/stream_base-inl.h +58 -22
  142. package/src/headers/{13 → 18}/stream_base.h +29 -3
  143. package/src/headers/{13 → 18}/stream_pipe.h +8 -3
  144. package/src/headers/{12 → 18}/stream_wrap.h +4 -1
  145. package/src/headers/{13 → 18}/string_bytes.h +0 -7
  146. package/src/headers/{12 → 18}/string_decoder-inl.h +0 -0
  147. package/src/headers/{10 → 18}/string_decoder.h +0 -0
  148. package/src/headers/{13 → 18}/string_search.h +2 -2
  149. package/src/headers/{12 → 18}/tcp_wrap.h +4 -0
  150. package/src/headers/{12 → 18}/threadpoolwork-inl.h +0 -0
  151. package/src/headers/18/timer_wrap-inl.h +32 -0
  152. package/src/headers/18/timer_wrap.h +85 -0
  153. package/src/headers/{13 → 18}/tracing/agent.h +1 -1
  154. package/src/headers/{12 → 18}/tracing/node_trace_buffer.h +0 -0
  155. package/src/headers/{12 → 18}/tracing/node_trace_writer.h +0 -0
  156. package/src/headers/{13 → 18}/tracing/trace_event.h +23 -13
  157. package/src/headers/{12 → 18}/tracing/trace_event_common.h +0 -0
  158. package/src/headers/{12 → 18}/tracing/traced_value.h +0 -0
  159. package/src/headers/{13 → 18}/tty_wrap.h +2 -1
  160. package/src/headers/{13 → 18}/udp_wrap.h +5 -0
  161. package/src/headers/{13 → 18}/util-inl.h +69 -15
  162. package/src/headers/{13 → 18}/util.h +93 -31
  163. package/src/headers/18/v8-fast-api-calls.h +939 -0
  164. package/src/headers/{12 → 18}/v8abbr.h +2 -2
  165. package/src/headers/10/aliased_buffer.h +0 -241
  166. package/src/headers/10/async_wrap-inl.h +0 -106
  167. package/src/headers/10/async_wrap.h +0 -218
  168. package/src/headers/10/base64.h +0 -197
  169. package/src/headers/10/base_object-inl.h +0 -132
  170. package/src/headers/10/base_object.h +0 -115
  171. package/src/headers/10/connect_wrap.h +0 -28
  172. package/src/headers/10/connection_wrap.h +0 -30
  173. package/src/headers/10/debug_utils.h +0 -128
  174. package/src/headers/10/env-inl.h +0 -906
  175. package/src/headers/10/env.h +0 -1046
  176. package/src/headers/10/handle_wrap.h +0 -114
  177. package/src/headers/10/inspector_agent.h +0 -137
  178. package/src/headers/10/inspector_io.h +0 -97
  179. package/src/headers/10/inspector_socket.h +0 -59
  180. package/src/headers/10/inspector_socket_server.h +0 -104
  181. package/src/headers/10/js_stream.h +0 -57
  182. package/src/headers/10/memory_tracker-inl.h +0 -318
  183. package/src/headers/10/memory_tracker.h +0 -246
  184. package/src/headers/10/module_wrap.h +0 -100
  185. package/src/headers/10/node.h +0 -863
  186. package/src/headers/10/node_api.h +0 -752
  187. package/src/headers/10/node_api_types.h +0 -171
  188. package/src/headers/10/node_buffer.h +0 -90
  189. package/src/headers/10/node_code_cache.h +0 -17
  190. package/src/headers/10/node_constants.h +0 -74
  191. package/src/headers/10/node_context_data.h +0 -39
  192. package/src/headers/10/node_contextify.h +0 -141
  193. package/src/headers/10/node_counters.h +0 -59
  194. package/src/headers/10/node_crypto.h +0 -699
  195. package/src/headers/10/node_crypto_bio.h +0 -177
  196. package/src/headers/10/node_crypto_clienthello-inl.h +0 -92
  197. package/src/headers/10/node_crypto_clienthello.h +0 -131
  198. package/src/headers/10/node_crypto_groups.h +0 -416
  199. package/src/headers/10/node_dtrace.h +0 -84
  200. package/src/headers/10/node_errors.h +0 -118
  201. package/src/headers/10/node_file.h +0 -373
  202. package/src/headers/10/node_http2.h +0 -1304
  203. package/src/headers/10/node_http2_state.h +0 -158
  204. package/src/headers/10/node_i18n.h +0 -69
  205. package/src/headers/10/node_internals.h +0 -952
  206. package/src/headers/10/node_javascript.h +0 -41
  207. package/src/headers/10/node_messaging.h +0 -219
  208. package/src/headers/10/node_mutex.h +0 -191
  209. package/src/headers/10/node_object_wrap.h +0 -130
  210. package/src/headers/10/node_options-inl.h +0 -444
  211. package/src/headers/10/node_options.h +0 -397
  212. package/src/headers/10/node_perf.h +0 -134
  213. package/src/headers/10/node_perf_common.h +0 -96
  214. package/src/headers/10/node_persistent.h +0 -30
  215. package/src/headers/10/node_platform.h +0 -170
  216. package/src/headers/10/node_revert.h +0 -75
  217. package/src/headers/10/node_root_certs.h +0 -3393
  218. package/src/headers/10/node_stat_watcher.h +0 -65
  219. package/src/headers/10/node_url.h +0 -193
  220. package/src/headers/10/node_version.h +0 -120
  221. package/src/headers/10/node_watchdog.h +0 -114
  222. package/src/headers/10/node_worker.h +0 -94
  223. package/src/headers/10/pipe_wrap.h +0 -76
  224. package/src/headers/10/req_wrap-inl.h +0 -166
  225. package/src/headers/10/req_wrap.h +0 -61
  226. package/src/headers/10/sharedarraybuffer_metadata.h +0 -67
  227. package/src/headers/10/spawn_sync.h +0 -240
  228. package/src/headers/10/stream_base-inl.h +0 -458
  229. package/src/headers/10/stream_base.h +0 -378
  230. package/src/headers/10/stream_pipe.h +0 -72
  231. package/src/headers/10/stream_wrap.h +0 -130
  232. package/src/headers/10/string_bytes.h +0 -126
  233. package/src/headers/10/string_decoder-inl.h +0 -38
  234. package/src/headers/10/string_search.h +0 -620
  235. package/src/headers/10/tcp_wrap.h +0 -99
  236. package/src/headers/10/tls_wrap.h +0 -195
  237. package/src/headers/10/tracing/agent.h +0 -178
  238. package/src/headers/10/tracing/node_trace_buffer.h +0 -83
  239. package/src/headers/10/tracing/node_trace_writer.h +0 -75
  240. package/src/headers/10/tracing/trace_event.h +0 -706
  241. package/src/headers/10/tracing/trace_event_common.h +0 -1102
  242. package/src/headers/10/tracing/traced_value.h +0 -68
  243. package/src/headers/10/tty_wrap.h +0 -63
  244. package/src/headers/10/udp_wrap.h +0 -102
  245. package/src/headers/10/util-inl.h +0 -459
  246. package/src/headers/10/util.h +0 -508
  247. package/src/headers/10/v8abbr.h +0 -121
  248. package/src/headers/12/aliased_buffer.h +0 -263
  249. package/src/headers/12/debug_utils.h +0 -181
  250. package/src/headers/12/histogram-inl.h +0 -83
  251. package/src/headers/12/histogram.h +0 -98
  252. package/src/headers/12/http_parser_adaptor.h +0 -24
  253. package/src/headers/12/inspector_agent.h +0 -147
  254. package/src/headers/12/inspector_profiler.h +0 -137
  255. package/src/headers/12/js_native_api.h +0 -541
  256. package/src/headers/12/js_native_api_types.h +0 -139
  257. package/src/headers/12/memory_tracker-inl.h +0 -339
  258. package/src/headers/12/memory_tracker.h +0 -283
  259. package/src/headers/12/module_wrap.h +0 -99
  260. package/src/headers/12/node.h +0 -887
  261. package/src/headers/12/node_api.h +0 -239
  262. package/src/headers/12/node_buffer.h +0 -92
  263. package/src/headers/12/node_constants.h +0 -80
  264. package/src/headers/12/node_crypto.h +0 -800
  265. package/src/headers/12/node_crypto_bio.h +0 -195
  266. package/src/headers/12/node_crypto_clienthello-inl.h +0 -91
  267. package/src/headers/12/node_crypto_clienthello.h +0 -132
  268. package/src/headers/12/node_file-inl.h +0 -289
  269. package/src/headers/12/node_http2.h +0 -1311
  270. package/src/headers/12/node_http_parser_impl.h +0 -994
  271. package/src/headers/12/node_i18n.h +0 -144
  272. package/src/headers/12/node_main_instance.h +0 -97
  273. package/src/headers/12/node_messaging.h +0 -227
  274. package/src/headers/12/node_native_module_env.h +0 -65
  275. package/src/headers/12/node_options-inl.h +0 -447
  276. package/src/headers/12/node_options.h +0 -479
  277. package/src/headers/12/node_perf.h +0 -181
  278. package/src/headers/12/node_process.h +0 -41
  279. package/src/headers/12/node_report.h +0 -47
  280. package/src/headers/12/node_revert.h +0 -78
  281. package/src/headers/12/node_sockaddr.h +0 -123
  282. package/src/headers/12/node_url.h +0 -188
  283. package/src/headers/12/node_version.h +0 -98
  284. package/src/headers/12/node_watchdog.h +0 -152
  285. package/src/headers/12/node_win32_etw_provider-inl.h +0 -287
  286. package/src/headers/12/node_win32_etw_provider.h +0 -99
  287. package/src/headers/12/node_worker.h +0 -142
  288. package/src/headers/12/sharedarraybuffer_metadata.h +0 -72
  289. package/src/headers/12/stream_base-inl.h +0 -323
  290. package/src/headers/12/stream_base.h +0 -431
  291. package/src/headers/12/stream_pipe.h +0 -72
  292. package/src/headers/12/string_bytes.h +0 -142
  293. package/src/headers/12/string_decoder.h +0 -50
  294. package/src/headers/12/string_search.h +0 -638
  295. package/src/headers/12/tls_wrap.h +0 -221
  296. package/src/headers/12/tracing/agent.h +0 -195
  297. package/src/headers/12/tracing/trace_event.h +0 -710
  298. package/src/headers/12/tty_wrap.h +0 -64
  299. package/src/headers/12/udp_wrap.h +0 -222
  300. package/src/headers/12/util-inl.h +0 -529
  301. package/src/headers/12/util.h +0 -765
  302. package/src/headers/13/async_wrap-inl.h +0 -94
  303. package/src/headers/13/async_wrap.h +0 -224
  304. package/src/headers/13/base64.h +0 -197
  305. package/src/headers/13/base_object-inl.h +0 -353
  306. package/src/headers/13/base_object.h +0 -229
  307. package/src/headers/13/connect_wrap.h +0 -26
  308. package/src/headers/13/connection_wrap.h +0 -30
  309. package/src/headers/13/debug_utils-inl.h +0 -223
  310. package/src/headers/13/diagnosticfilename-inl.h +0 -33
  311. package/src/headers/13/env-inl.h +0 -1293
  312. package/src/headers/13/env.h +0 -1469
  313. package/src/headers/13/handle_wrap.h +0 -117
  314. package/src/headers/13/histogram-inl.h +0 -83
  315. package/src/headers/13/histogram.h +0 -98
  316. package/src/headers/13/inspector_io.h +0 -78
  317. package/src/headers/13/inspector_socket.h +0 -60
  318. package/src/headers/13/inspector_socket_server.h +0 -110
  319. package/src/headers/13/js_native_api.h +0 -541
  320. package/src/headers/13/js_native_api_v8.h +0 -303
  321. package/src/headers/13/js_native_api_v8_internals.h +0 -38
  322. package/src/headers/13/js_stream.h +0 -52
  323. package/src/headers/13/json_utils.h +0 -160
  324. package/src/headers/13/node_api.h +0 -239
  325. package/src/headers/13/node_api_types.h +0 -44
  326. package/src/headers/13/node_binding.h +0 -99
  327. package/src/headers/13/node_context_data.h +0 -39
  328. package/src/headers/13/node_contextify.h +0 -161
  329. package/src/headers/13/node_crypto.h +0 -800
  330. package/src/headers/13/node_crypto_common.h +0 -138
  331. package/src/headers/13/node_crypto_groups.h +0 -415
  332. package/src/headers/13/node_dir.h +0 -52
  333. package/src/headers/13/node_dtrace.h +0 -86
  334. package/src/headers/13/node_errors.h +0 -210
  335. package/src/headers/13/node_file.h +0 -364
  336. package/src/headers/13/node_http2_state.h +0 -144
  337. package/src/headers/13/node_internals.h +0 -405
  338. package/src/headers/13/node_mem-inl.h +0 -112
  339. package/src/headers/13/node_mem.h +0 -41
  340. package/src/headers/13/node_metadata.h +0 -109
  341. package/src/headers/13/node_mutex.h +0 -247
  342. package/src/headers/13/node_native_module.h +0 -99
  343. package/src/headers/13/node_object_wrap.h +0 -132
  344. package/src/headers/13/node_perf.h +0 -181
  345. package/src/headers/13/node_perf_common.h +0 -97
  346. package/src/headers/13/node_platform.h +0 -190
  347. package/src/headers/13/node_process.h +0 -41
  348. package/src/headers/13/node_root_certs.h +0 -3424
  349. package/src/headers/13/node_sockaddr-inl.h +0 -170
  350. package/src/headers/13/node_sockaddr.h +0 -123
  351. package/src/headers/13/node_stat_watcher.h +0 -66
  352. package/src/headers/13/node_union_bytes.h +0 -103
  353. package/src/headers/13/node_v8_platform-inl.h +0 -184
  354. package/src/headers/13/node_wasi.h +0 -108
  355. package/src/headers/13/node_win32_etw_provider-inl.h +0 -287
  356. package/src/headers/13/node_win32_etw_provider.h +0 -99
  357. package/src/headers/13/pipe_wrap.h +0 -78
  358. package/src/headers/13/req_wrap-inl.h +0 -170
  359. package/src/headers/13/req_wrap.h +0 -77
  360. package/src/headers/13/spawn_sync.h +0 -242
  361. package/src/headers/13/stream_wrap.h +0 -130
  362. package/src/headers/13/string_decoder-inl.h +0 -37
  363. package/src/headers/13/string_decoder.h +0 -50
  364. package/src/headers/13/tcp_wrap.h +0 -101
  365. package/src/headers/13/threadpoolwork-inl.h +0 -57
  366. package/src/headers/13/tracing/node_trace_buffer.h +0 -83
  367. package/src/headers/13/tracing/node_trace_writer.h +0 -75
  368. package/src/headers/13/tracing/trace_event_common.h +0 -1109
  369. package/src/headers/13/tracing/traced_value.h +0 -70
  370. package/src/headers/13/v8abbr.h +0 -124
@@ -32,6 +32,7 @@
32
32
  namespace node {
33
33
 
34
34
  class Environment;
35
+ class ExternalReferenceRegistry;
35
36
 
36
37
  // Rules:
37
38
  //
@@ -77,6 +78,7 @@ class HandleWrap : public AsyncWrap {
77
78
 
78
79
  static v8::Local<v8::FunctionTemplate> GetConstructorTemplate(
79
80
  Environment* env);
81
+ static void RegisterExternalReferences(ExternalReferenceRegistry* registry);
80
82
 
81
83
  protected:
82
84
  HandleWrap(Environment* env,
@@ -85,6 +87,7 @@ class HandleWrap : public AsyncWrap {
85
87
  AsyncWrap::ProviderType provider);
86
88
  virtual void OnClose() {}
87
89
  void OnGCCollect() final;
90
+ bool IsNotIndicativeOfMemoryLeakAtExit() const override;
88
91
 
89
92
  void MarkAsInitialized();
90
93
  void MarkAsUninitialized();
@@ -93,19 +96,20 @@ class HandleWrap : public AsyncWrap {
93
96
  return state_ == kClosing || state_ == kClosed;
94
97
  }
95
98
 
99
+ static void OnClose(uv_handle_t* handle);
100
+ enum { kInitialized, kClosing, kClosed } state_;
101
+
96
102
  private:
97
103
  friend class Environment;
98
104
  friend void GetActiveHandles(const v8::FunctionCallbackInfo<v8::Value>&);
99
- static void OnClose(uv_handle_t* handle);
100
105
 
101
106
  // handle_wrap_queue_ needs to be at a fixed offset from the start of the
102
107
  // class because it is used by src/node_postmortem_metadata.cc to calculate
103
108
  // offsets and generate debug symbols for HandleWrap, which assumes that the
104
109
  // position of members in memory are predictable. For more information please
105
- // refer to `doc/guides/node-postmortem-support.md`
110
+ // refer to `doc/contributing/node-postmortem-support.md`
106
111
  friend int GenDebugSymbols();
107
112
  ListNode<HandleWrap> handle_wrap_queue_;
108
- enum { kInitialized, kClosing, kClosed } state_;
109
113
  uv_handle_t* const handle_;
110
114
  };
111
115
 
@@ -0,0 +1,107 @@
1
+ #ifndef SRC_HISTOGRAM_INL_H_
2
+ #define SRC_HISTOGRAM_INL_H_
3
+
4
+ #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
+
6
+ #include "histogram.h"
7
+ #include "base_object-inl.h"
8
+ #include "node_internals.h"
9
+
10
+ namespace node {
11
+
12
+ void Histogram::Reset() {
13
+ Mutex::ScopedLock lock(mutex_);
14
+ hdr_reset(histogram_.get());
15
+ exceeds_ = 0;
16
+ count_ = 0;
17
+ prev_ = 0;
18
+ }
19
+
20
+ double Histogram::Add(const Histogram& other) {
21
+ Mutex::ScopedLock lock(mutex_);
22
+ count_ += other.count_;
23
+ exceeds_ += other.exceeds_;
24
+ if (other.prev_ > prev_)
25
+ prev_ = other.prev_;
26
+ return static_cast<double>(hdr_add(histogram_.get(), other.histogram_.get()));
27
+ }
28
+
29
+ size_t Histogram::Count() const {
30
+ Mutex::ScopedLock lock(mutex_);
31
+ return count_;
32
+ }
33
+
34
+ int64_t Histogram::Min() const {
35
+ Mutex::ScopedLock lock(mutex_);
36
+ return hdr_min(histogram_.get());
37
+ }
38
+
39
+ int64_t Histogram::Max() const {
40
+ Mutex::ScopedLock lock(mutex_);
41
+ return hdr_max(histogram_.get());
42
+ }
43
+
44
+ double Histogram::Mean() const {
45
+ Mutex::ScopedLock lock(mutex_);
46
+ return hdr_mean(histogram_.get());
47
+ }
48
+
49
+ double Histogram::Stddev() const {
50
+ Mutex::ScopedLock lock(mutex_);
51
+ return hdr_stddev(histogram_.get());
52
+ }
53
+
54
+ int64_t Histogram::Percentile(double percentile) const {
55
+ Mutex::ScopedLock lock(mutex_);
56
+ CHECK_GT(percentile, 0);
57
+ CHECK_LE(percentile, 100);
58
+ return hdr_value_at_percentile(histogram_.get(), percentile);
59
+ }
60
+
61
+ template <typename Iterator>
62
+ void Histogram::Percentiles(Iterator&& fn) {
63
+ Mutex::ScopedLock lock(mutex_);
64
+ hdr_iter iter;
65
+ hdr_iter_percentile_init(&iter, histogram_.get(), 1);
66
+ while (hdr_iter_next(&iter)) {
67
+ double key = iter.specifics.percentiles.percentile;
68
+ fn(key, iter.value);
69
+ }
70
+ }
71
+
72
+ bool Histogram::Record(int64_t value) {
73
+ Mutex::ScopedLock lock(mutex_);
74
+ bool recorded = hdr_record_value(histogram_.get(), value);
75
+ if (!recorded)
76
+ exceeds_++;
77
+ else
78
+ count_++;
79
+ return recorded;
80
+ }
81
+
82
+ uint64_t Histogram::RecordDelta() {
83
+ Mutex::ScopedLock lock(mutex_);
84
+ uint64_t time = uv_hrtime();
85
+ int64_t delta = 0;
86
+ if (prev_ > 0) {
87
+ CHECK_GE(time, prev_);
88
+ delta = time - prev_;
89
+ if (hdr_record_value(histogram_.get(), delta))
90
+ count_++;
91
+ else
92
+ exceeds_++;
93
+ }
94
+ prev_ = time;
95
+ return delta;
96
+ }
97
+
98
+ size_t Histogram::GetMemorySize() const {
99
+ Mutex::ScopedLock lock(mutex_);
100
+ return hdr_get_memory_size(histogram_.get());
101
+ }
102
+
103
+ } // namespace node
104
+
105
+ #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
106
+
107
+ #endif // SRC_HISTOGRAM_INL_H_
@@ -0,0 +1,239 @@
1
+ #ifndef SRC_HISTOGRAM_H_
2
+ #define SRC_HISTOGRAM_H_
3
+
4
+ #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
+
6
+ #include "hdr_histogram.h"
7
+ #include "base_object.h"
8
+ #include "memory_tracker.h"
9
+ #include "node_messaging.h"
10
+ #include "util.h"
11
+ #include "v8.h"
12
+ #include "uv.h"
13
+
14
+ #include <functional>
15
+ #include <limits>
16
+ #include <map>
17
+ #include <string>
18
+
19
+ namespace node {
20
+
21
+ class ExternalReferenceRegistry;
22
+
23
+ constexpr int kDefaultHistogramFigures = 3;
24
+
25
+ class Histogram : public MemoryRetainer {
26
+ public:
27
+ struct Options {
28
+ int64_t lowest = 1;
29
+ int64_t highest = std::numeric_limits<int64_t>::max();
30
+ int figures = kDefaultHistogramFigures;
31
+ };
32
+
33
+ explicit Histogram(const Options& options);
34
+ virtual ~Histogram() = default;
35
+
36
+ inline bool Record(int64_t value);
37
+ inline void Reset();
38
+ inline int64_t Min() const;
39
+ inline int64_t Max() const;
40
+ inline double Mean() const;
41
+ inline double Stddev() const;
42
+ inline int64_t Percentile(double percentile) const;
43
+ inline size_t Exceeds() const { return exceeds_; }
44
+ inline size_t Count() const;
45
+
46
+ inline uint64_t RecordDelta();
47
+
48
+ inline double Add(const Histogram& other);
49
+
50
+ // Iterator is a function type that takes two doubles as argument, one for
51
+ // percentile and one for the value at that percentile.
52
+ template <typename Iterator>
53
+ inline void Percentiles(Iterator&& fn);
54
+
55
+ inline size_t GetMemorySize() const;
56
+
57
+ void MemoryInfo(MemoryTracker* tracker) const override;
58
+ SET_MEMORY_INFO_NAME(Histogram)
59
+ SET_SELF_SIZE(Histogram)
60
+
61
+ private:
62
+ using HistogramPointer = DeleteFnPtr<hdr_histogram, hdr_close>;
63
+ HistogramPointer histogram_;
64
+ uint64_t prev_ = 0;
65
+ size_t exceeds_ = 0;
66
+ size_t count_ = 0;
67
+ Mutex mutex_;
68
+ };
69
+
70
+ class HistogramImpl {
71
+ public:
72
+ explicit HistogramImpl(
73
+ const Histogram::Options& options = Histogram::Options {});
74
+ explicit HistogramImpl(std::shared_ptr<Histogram> histogram);
75
+
76
+ Histogram* operator->() { return histogram_.get(); }
77
+
78
+ const std::shared_ptr<Histogram>& histogram() const { return histogram_; }
79
+
80
+ private:
81
+ std::shared_ptr<Histogram> histogram_;
82
+ };
83
+
84
+ class HistogramBase : public BaseObject, public HistogramImpl {
85
+ public:
86
+ static v8::Local<v8::FunctionTemplate> GetConstructorTemplate(
87
+ Environment* env);
88
+ static void Initialize(Environment* env, v8::Local<v8::Object> target);
89
+ static void RegisterExternalReferences(ExternalReferenceRegistry* registry);
90
+
91
+ static BaseObjectPtr<HistogramBase> Create(
92
+ Environment* env,
93
+ const Histogram::Options& options = Histogram::Options {});
94
+
95
+ static BaseObjectPtr<HistogramBase> Create(
96
+ Environment* env,
97
+ std::shared_ptr<Histogram> histogram);
98
+
99
+ static void New(const v8::FunctionCallbackInfo<v8::Value>& args);
100
+
101
+ void MemoryInfo(MemoryTracker* tracker) const override;
102
+ SET_MEMORY_INFO_NAME(HistogramBase)
103
+ SET_SELF_SIZE(HistogramBase)
104
+
105
+ static void GetCountBigInt(const v8::FunctionCallbackInfo<v8::Value>& args);
106
+ static void GetMinBigInt(const v8::FunctionCallbackInfo<v8::Value>& args);
107
+ static void GetMaxBigInt(const v8::FunctionCallbackInfo<v8::Value>& args);
108
+ static void GetExceedsBigInt(const v8::FunctionCallbackInfo<v8::Value>& args);
109
+
110
+ static void GetCount(const v8::FunctionCallbackInfo<v8::Value>& args);
111
+ static void GetMin(const v8::FunctionCallbackInfo<v8::Value>& args);
112
+ static void GetMax(const v8::FunctionCallbackInfo<v8::Value>& args);
113
+ static void GetMean(const v8::FunctionCallbackInfo<v8::Value>& args);
114
+ static void GetExceeds(const v8::FunctionCallbackInfo<v8::Value>& args);
115
+ static void GetStddev(const v8::FunctionCallbackInfo<v8::Value>& args);
116
+ static void GetPercentile(
117
+ const v8::FunctionCallbackInfo<v8::Value>& args);
118
+ static void GetPercentileBigInt(
119
+ const v8::FunctionCallbackInfo<v8::Value>& args);
120
+ static void GetPercentiles(
121
+ const v8::FunctionCallbackInfo<v8::Value>& args);
122
+ static void GetPercentilesBigInt(
123
+ const v8::FunctionCallbackInfo<v8::Value>& args);
124
+ static void DoReset(const v8::FunctionCallbackInfo<v8::Value>& args);
125
+ static void Record(const v8::FunctionCallbackInfo<v8::Value>& args);
126
+ static void RecordDelta(const v8::FunctionCallbackInfo<v8::Value>& args);
127
+ static void Add(const v8::FunctionCallbackInfo<v8::Value>& args);
128
+
129
+ HistogramBase(
130
+ Environment* env,
131
+ v8::Local<v8::Object> wrap,
132
+ const Histogram::Options& options = Histogram::Options {});
133
+
134
+ HistogramBase(
135
+ Environment* env,
136
+ v8::Local<v8::Object> wrap,
137
+ std::shared_ptr<Histogram> histogram);
138
+
139
+ TransferMode GetTransferMode() const override {
140
+ return TransferMode::kCloneable;
141
+ }
142
+ std::unique_ptr<worker::TransferData> CloneForMessaging() const override;
143
+
144
+ class HistogramTransferData : public worker::TransferData {
145
+ public:
146
+ explicit HistogramTransferData(const HistogramBase* histogram)
147
+ : histogram_(histogram->histogram()) {}
148
+
149
+ explicit HistogramTransferData(std::shared_ptr<Histogram> histogram)
150
+ : histogram_(std::move(histogram)) {}
151
+
152
+ BaseObjectPtr<BaseObject> Deserialize(
153
+ Environment* env,
154
+ v8::Local<v8::Context> context,
155
+ std::unique_ptr<worker::TransferData> self) override;
156
+
157
+ void MemoryInfo(MemoryTracker* tracker) const override;
158
+ SET_MEMORY_INFO_NAME(HistogramTransferData)
159
+ SET_SELF_SIZE(HistogramTransferData)
160
+
161
+ private:
162
+ std::shared_ptr<Histogram> histogram_;
163
+ };
164
+ };
165
+
166
+ class IntervalHistogram : public HandleWrap, public HistogramImpl {
167
+ public:
168
+ enum class StartFlags {
169
+ NONE,
170
+ RESET
171
+ };
172
+
173
+ static void RegisterExternalReferences(ExternalReferenceRegistry* registry);
174
+
175
+ static v8::Local<v8::FunctionTemplate> GetConstructorTemplate(
176
+ Environment* env);
177
+
178
+ static BaseObjectPtr<IntervalHistogram> Create(
179
+ Environment* env,
180
+ int32_t interval,
181
+ std::function<void(Histogram&)> on_interval,
182
+ const Histogram::Options& options);
183
+
184
+ IntervalHistogram(
185
+ Environment* env,
186
+ v8::Local<v8::Object> wrap,
187
+ AsyncWrap::ProviderType type,
188
+ int32_t interval,
189
+ std::function<void(Histogram&)> on_interval,
190
+ const Histogram::Options& options = Histogram::Options {});
191
+
192
+ static void GetCountBigInt(const v8::FunctionCallbackInfo<v8::Value>& args);
193
+ static void GetMinBigInt(const v8::FunctionCallbackInfo<v8::Value>& args);
194
+ static void GetMaxBigInt(const v8::FunctionCallbackInfo<v8::Value>& args);
195
+ static void GetExceedsBigInt(const v8::FunctionCallbackInfo<v8::Value>& args);
196
+
197
+ static void GetCount(const v8::FunctionCallbackInfo<v8::Value>& args);
198
+ static void GetMin(const v8::FunctionCallbackInfo<v8::Value>& args);
199
+ static void GetMax(const v8::FunctionCallbackInfo<v8::Value>& args);
200
+ static void GetMean(const v8::FunctionCallbackInfo<v8::Value>& args);
201
+ static void GetExceeds(const v8::FunctionCallbackInfo<v8::Value>& args);
202
+ static void GetStddev(const v8::FunctionCallbackInfo<v8::Value>& args);
203
+ static void GetPercentile(
204
+ const v8::FunctionCallbackInfo<v8::Value>& args);
205
+ static void GetPercentileBigInt(
206
+ const v8::FunctionCallbackInfo<v8::Value>& args);
207
+ static void GetPercentiles(
208
+ const v8::FunctionCallbackInfo<v8::Value>& args);
209
+ static void GetPercentilesBigInt(
210
+ const v8::FunctionCallbackInfo<v8::Value>& args);
211
+ static void DoReset(const v8::FunctionCallbackInfo<v8::Value>& args);
212
+ static void Start(const v8::FunctionCallbackInfo<v8::Value>& args);
213
+ static void Stop(const v8::FunctionCallbackInfo<v8::Value>& args);
214
+
215
+ TransferMode GetTransferMode() const override {
216
+ return TransferMode::kCloneable;
217
+ }
218
+ std::unique_ptr<worker::TransferData> CloneForMessaging() const override;
219
+
220
+ void MemoryInfo(MemoryTracker* tracker) const override;
221
+ SET_MEMORY_INFO_NAME(IntervalHistogram)
222
+ SET_SELF_SIZE(IntervalHistogram)
223
+
224
+ private:
225
+ static void TimerCB(uv_timer_t* handle);
226
+ void OnStart(StartFlags flags = StartFlags::RESET);
227
+ void OnStop();
228
+
229
+ bool enabled_ = false;
230
+ int32_t interval_ = 0;
231
+ std::function<void(Histogram&)> on_interval_;
232
+ uv_timer_t timer_;
233
+ };
234
+
235
+ } // namespace node
236
+
237
+ #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
238
+
239
+ #endif // SRC_HISTOGRAM_H_
@@ -59,8 +59,6 @@ class Agent {
59
59
  // --inspect command line flag) or if inspector JS API had been used.
60
60
  bool IsActive();
61
61
 
62
- // Option is set to wait for session connection
63
- bool WillWaitForConnect();
64
62
  // Blocks till frontend connects and sends "runIfWaitingForDebugger"
65
63
  void WaitForConnect();
66
64
  // Blocks till all the sessions with "WaitForDisconnectOnShutdown" disconnect
@@ -84,7 +82,7 @@ class Agent {
84
82
 
85
83
  void SetParentHandle(std::unique_ptr<ParentInspectorHandle> parent_handle);
86
84
  std::unique_ptr<ParentInspectorHandle> GetParentHandle(
87
- int thread_id, const std::string& url);
85
+ uint64_t thread_id, const std::string& url);
88
86
 
89
87
  // Called to create inspector sessions that can be used from the same thread.
90
88
  // The inspector responds by using the delegate to send messages back.
@@ -116,9 +114,10 @@ class Agent {
116
114
  // Interface for interacting with inspectors in worker threads
117
115
  std::shared_ptr<WorkerManager> GetWorkerManager();
118
116
 
117
+ inline Environment* env() const { return parent_env_; }
118
+
119
119
  private:
120
- void ToggleAsyncHook(v8::Isolate* isolate,
121
- const v8::Global<v8::Function>& fn);
120
+ void ToggleAsyncHook(v8::Isolate* isolate, v8::Local<v8::Function> fn);
122
121
 
123
122
  node::Environment* parent_env_;
124
123
  // Encapsulates majority of the Inspector functionality
@@ -137,8 +136,6 @@ class Agent {
137
136
 
138
137
  bool pending_enable_async_hook_ = false;
139
138
  bool pending_disable_async_hook_ = false;
140
- v8::Global<v8::Function> enable_async_hook_function_;
141
- v8::Global<v8::Function> disable_async_hook_function_;
142
139
  };
143
140
 
144
141
  } // namespace inspector
File without changes
@@ -7,6 +7,7 @@
7
7
  #error("This header can only be used when inspector is enabled")
8
8
  #endif
9
9
 
10
+ #include <unordered_set>
10
11
  #include "inspector_agent.h"
11
12
 
12
13
  namespace node {
@@ -39,7 +40,9 @@ class V8ProfilerConnection {
39
40
  // The optional `params` should be formatted in JSON.
40
41
  // The strings should be in one byte characters - which is enough for
41
42
  // the commands we use here.
42
- size_t DispatchMessage(const char* method, const char* params = nullptr);
43
+ uint32_t DispatchMessage(const char* method,
44
+ const char* params = nullptr,
45
+ bool is_profile_request = false);
43
46
 
44
47
  // Use DispatchMessage() to dispatch necessary inspector messages
45
48
  // to start and end the profiling.
@@ -58,12 +61,19 @@ class V8ProfilerConnection {
58
61
  // which will be then written as a JSON.
59
62
  virtual v8::MaybeLocal<v8::Object> GetProfile(
60
63
  v8::Local<v8::Object> result) = 0;
61
- virtual void WriteProfile(v8::Local<v8::String> message);
64
+ virtual void WriteProfile(v8::Local<v8::Object> result);
65
+
66
+ bool HasProfileId(uint32_t id) const {
67
+ return profile_ids_.find(id) != profile_ids_.end();
68
+ }
69
+
70
+ void RemoveProfileId(uint32_t id) { profile_ids_.erase(id); }
62
71
 
63
72
  private:
64
- size_t next_id() { return id_++; }
73
+ uint32_t next_id() { return id_++; }
65
74
  std::unique_ptr<inspector::InspectorSession> session_;
66
- size_t id_ = 1;
75
+ uint32_t id_ = 1;
76
+ std::unordered_set<uint32_t> profile_ids_;
67
77
 
68
78
  protected:
69
79
  Environment* env_ = nullptr;
@@ -82,8 +92,10 @@ class V8CoverageConnection : public V8ProfilerConnection {
82
92
  std::string GetDirectory() const override;
83
93
  std::string GetFilename() const override;
84
94
  v8::MaybeLocal<v8::Object> GetProfile(v8::Local<v8::Object> result) override;
85
- void WriteProfile(v8::Local<v8::String> message) override;
95
+ void WriteProfile(v8::Local<v8::Object> result) override;
86
96
  void WriteSourceMapCache();
97
+ void TakeCoverage();
98
+ void StopCoverage();
87
99
 
88
100
  private:
89
101
  std::unique_ptr<inspector::InspectorSession> session_;
File without changes
File without changes