node-linux-arm64 17.9.1 → 18.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/CHANGELOG.md +219 -1570
  2. package/LICENSE +111 -9
  3. package/README.md +4 -2
  4. package/bin/node +0 -0
  5. package/include/node/common.gypi +2 -2
  6. package/include/node/config.gypi +233 -228
  7. package/include/node/libplatform/libplatform.h +0 -11
  8. package/include/node/libplatform/v8-tracing.h +0 -1
  9. package/include/node/node.h +7 -3
  10. package/include/node/node_api.h +17 -0
  11. package/include/node/node_version.h +4 -4
  12. package/include/node/openssl/archs/BSD-x86/asm/crypto/buildinf.h +1 -1
  13. package/include/node/openssl/archs/BSD-x86/asm/include/openssl/crypto.h +0 -2
  14. package/include/node/openssl/archs/BSD-x86/asm/include/openssl/opensslv.h +5 -5
  15. package/include/node/openssl/archs/BSD-x86/asm/include/openssl/ssl.h +0 -11
  16. package/include/node/openssl/archs/BSD-x86/asm/include/openssl/x509.h +4 -4
  17. package/include/node/openssl/archs/BSD-x86/asm_avx2/crypto/buildinf.h +1 -1
  18. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/crypto.h +0 -2
  19. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/opensslv.h +5 -5
  20. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/ssl.h +0 -11
  21. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/x509.h +4 -4
  22. package/include/node/openssl/archs/BSD-x86/no-asm/crypto/buildinf.h +1 -1
  23. package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/crypto.h +0 -2
  24. package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/opensslv.h +5 -5
  25. package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/ssl.h +0 -11
  26. package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/x509.h +4 -4
  27. package/include/node/openssl/archs/BSD-x86_64/asm/crypto/buildinf.h +1 -1
  28. package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/crypto.h +0 -2
  29. package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/opensslv.h +5 -5
  30. package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/ssl.h +0 -11
  31. package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/x509.h +4 -4
  32. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/buildinf.h +1 -1
  33. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/crypto.h +0 -2
  34. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/opensslv.h +5 -5
  35. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/ssl.h +0 -11
  36. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/x509.h +4 -4
  37. package/include/node/openssl/archs/BSD-x86_64/no-asm/crypto/buildinf.h +1 -1
  38. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/crypto.h +0 -2
  39. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/opensslv.h +5 -5
  40. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/ssl.h +0 -11
  41. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/x509.h +4 -4
  42. package/include/node/openssl/archs/VC-WIN32/asm/crypto/buildinf.h +1 -1
  43. package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/crypto.h +0 -2
  44. package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/opensslv.h +5 -5
  45. package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/ssl.h +0 -11
  46. package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/x509.h +4 -4
  47. package/include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/buildinf.h +1 -1
  48. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/crypto.h +0 -2
  49. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/opensslv.h +5 -5
  50. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/ssl.h +0 -11
  51. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/x509.h +4 -4
  52. package/include/node/openssl/archs/VC-WIN32/no-asm/crypto/buildinf.h +1 -1
  53. package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/crypto.h +0 -2
  54. package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/opensslv.h +5 -5
  55. package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/ssl.h +0 -11
  56. package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/x509.h +4 -4
  57. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/buildinf.h +1 -1
  58. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/crypto.h +0 -2
  59. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/opensslv.h +5 -5
  60. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/ssl.h +0 -11
  61. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/x509.h +4 -4
  62. package/include/node/openssl/archs/VC-WIN64A/asm/crypto/buildinf.h +1 -1
  63. package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/crypto.h +0 -2
  64. package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/opensslv.h +5 -5
  65. package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/ssl.h +0 -11
  66. package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/x509.h +4 -4
  67. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/buildinf.h +1 -1
  68. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/crypto.h +0 -2
  69. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/opensslv.h +5 -5
  70. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/ssl.h +0 -11
  71. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/x509.h +4 -4
  72. package/include/node/openssl/archs/VC-WIN64A/no-asm/crypto/buildinf.h +1 -1
  73. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/crypto.h +0 -2
  74. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/opensslv.h +5 -5
  75. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/ssl.h +0 -11
  76. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/x509.h +4 -4
  77. package/include/node/openssl/archs/aix-gcc/asm/crypto/buildinf.h +1 -1
  78. package/include/node/openssl/archs/aix-gcc/asm/include/openssl/crypto.h +0 -2
  79. package/include/node/openssl/archs/aix-gcc/asm/include/openssl/opensslv.h +5 -5
  80. package/include/node/openssl/archs/aix-gcc/asm/include/openssl/ssl.h +0 -11
  81. package/include/node/openssl/archs/aix-gcc/asm/include/openssl/x509.h +4 -4
  82. package/include/node/openssl/archs/aix-gcc/asm_avx2/crypto/buildinf.h +1 -1
  83. package/include/node/openssl/archs/aix-gcc/asm_avx2/include/openssl/crypto.h +0 -2
  84. package/include/node/openssl/archs/aix-gcc/asm_avx2/include/openssl/opensslv.h +5 -5
  85. package/include/node/openssl/archs/aix-gcc/asm_avx2/include/openssl/ssl.h +0 -11
  86. package/include/node/openssl/archs/aix-gcc/asm_avx2/include/openssl/x509.h +4 -4
  87. package/include/node/openssl/archs/aix-gcc/no-asm/crypto/buildinf.h +1 -1
  88. package/include/node/openssl/archs/aix-gcc/no-asm/include/openssl/crypto.h +0 -2
  89. package/include/node/openssl/archs/aix-gcc/no-asm/include/openssl/opensslv.h +5 -5
  90. package/include/node/openssl/archs/aix-gcc/no-asm/include/openssl/ssl.h +0 -11
  91. package/include/node/openssl/archs/aix-gcc/no-asm/include/openssl/x509.h +4 -4
  92. package/include/node/openssl/archs/aix64-gcc-as/asm/crypto/buildinf.h +1 -1
  93. package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/crypto.h +0 -2
  94. package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/opensslv.h +5 -5
  95. package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/ssl.h +0 -11
  96. package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/x509.h +4 -4
  97. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/crypto/buildinf.h +1 -1
  98. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/crypto.h +0 -2
  99. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/opensslv.h +5 -5
  100. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/ssl.h +0 -11
  101. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/x509.h +4 -4
  102. package/include/node/openssl/archs/aix64-gcc-as/no-asm/crypto/buildinf.h +1 -1
  103. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/crypto.h +0 -2
  104. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/opensslv.h +5 -5
  105. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/ssl.h +0 -11
  106. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/x509.h +4 -4
  107. package/include/node/openssl/archs/darwin-i386-cc/asm/crypto/buildinf.h +1 -1
  108. package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/crypto.h +0 -2
  109. package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/opensslv.h +5 -5
  110. package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/ssl.h +0 -11
  111. package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/x509.h +4 -4
  112. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/buildinf.h +1 -1
  113. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/crypto.h +0 -2
  114. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  115. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/ssl.h +0 -11
  116. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/x509.h +4 -4
  117. package/include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/buildinf.h +1 -1
  118. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/crypto.h +0 -2
  119. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/opensslv.h +5 -5
  120. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/ssl.h +0 -11
  121. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/x509.h +4 -4
  122. package/include/node/openssl/archs/darwin64-arm64-cc/asm/crypto/buildinf.h +1 -1
  123. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/crypto.h +0 -2
  124. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/opensslv.h +5 -5
  125. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/ssl.h +0 -11
  126. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/x509.h +4 -4
  127. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/crypto/buildinf.h +1 -1
  128. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/crypto.h +0 -2
  129. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  130. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/ssl.h +0 -11
  131. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/x509.h +4 -4
  132. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/crypto/buildinf.h +1 -1
  133. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/crypto.h +0 -2
  134. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/opensslv.h +5 -5
  135. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/ssl.h +0 -11
  136. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/x509.h +4 -4
  137. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h +1 -1
  138. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/crypto.h +0 -2
  139. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/opensslv.h +5 -5
  140. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/ssl.h +0 -11
  141. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/x509.h +4 -4
  142. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/buildinf.h +1 -1
  143. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/crypto.h +0 -2
  144. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  145. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/ssl.h +0 -11
  146. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/x509.h +4 -4
  147. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h +1 -1
  148. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/crypto.h +0 -2
  149. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslv.h +5 -5
  150. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/ssl.h +0 -11
  151. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/x509.h +4 -4
  152. package/include/node/openssl/archs/linux-aarch64/asm/crypto/buildinf.h +1 -1
  153. package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/crypto.h +0 -2
  154. package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/opensslv.h +5 -5
  155. package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/ssl.h +0 -11
  156. package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/x509.h +4 -4
  157. package/include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/buildinf.h +1 -1
  158. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/crypto.h +0 -2
  159. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/opensslv.h +5 -5
  160. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/ssl.h +0 -11
  161. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/x509.h +4 -4
  162. package/include/node/openssl/archs/linux-aarch64/no-asm/crypto/buildinf.h +1 -1
  163. package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/crypto.h +0 -2
  164. package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/opensslv.h +5 -5
  165. package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/ssl.h +0 -11
  166. package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/x509.h +4 -4
  167. package/include/node/openssl/archs/linux-armv4/asm/crypto/buildinf.h +1 -1
  168. package/include/node/openssl/archs/linux-armv4/asm/include/openssl/crypto.h +0 -2
  169. package/include/node/openssl/archs/linux-armv4/asm/include/openssl/opensslv.h +5 -5
  170. package/include/node/openssl/archs/linux-armv4/asm/include/openssl/ssl.h +0 -11
  171. package/include/node/openssl/archs/linux-armv4/asm/include/openssl/x509.h +4 -4
  172. package/include/node/openssl/archs/linux-armv4/asm_avx2/crypto/buildinf.h +1 -1
  173. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/crypto.h +0 -2
  174. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/opensslv.h +5 -5
  175. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/ssl.h +0 -11
  176. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/x509.h +4 -4
  177. package/include/node/openssl/archs/linux-armv4/no-asm/crypto/buildinf.h +1 -1
  178. package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/crypto.h +0 -2
  179. package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/opensslv.h +5 -5
  180. package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/ssl.h +0 -11
  181. package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/x509.h +4 -4
  182. package/include/node/openssl/archs/linux-elf/asm/crypto/buildinf.h +1 -1
  183. package/include/node/openssl/archs/linux-elf/asm/include/openssl/crypto.h +0 -2
  184. package/include/node/openssl/archs/linux-elf/asm/include/openssl/opensslv.h +5 -5
  185. package/include/node/openssl/archs/linux-elf/asm/include/openssl/ssl.h +0 -11
  186. package/include/node/openssl/archs/linux-elf/asm/include/openssl/x509.h +4 -4
  187. package/include/node/openssl/archs/linux-elf/asm_avx2/crypto/buildinf.h +1 -1
  188. package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/crypto.h +0 -2
  189. package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/opensslv.h +5 -5
  190. package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/ssl.h +0 -11
  191. package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/x509.h +4 -4
  192. package/include/node/openssl/archs/linux-elf/no-asm/crypto/buildinf.h +1 -1
  193. package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/crypto.h +0 -2
  194. package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/opensslv.h +5 -5
  195. package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/ssl.h +0 -11
  196. package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/x509.h +4 -4
  197. package/include/node/openssl/archs/linux-ppc/asm/crypto/buildinf.h +1 -1
  198. package/include/node/openssl/archs/linux-ppc/asm/include/openssl/crypto.h +0 -2
  199. package/include/node/openssl/archs/linux-ppc/asm/include/openssl/opensslv.h +5 -5
  200. package/include/node/openssl/archs/linux-ppc/asm/include/openssl/ssl.h +0 -11
  201. package/include/node/openssl/archs/linux-ppc/asm/include/openssl/x509.h +4 -4
  202. package/include/node/openssl/archs/linux-ppc/asm_avx2/crypto/buildinf.h +1 -1
  203. package/include/node/openssl/archs/linux-ppc/asm_avx2/include/openssl/crypto.h +0 -2
  204. package/include/node/openssl/archs/linux-ppc/asm_avx2/include/openssl/opensslv.h +5 -5
  205. package/include/node/openssl/archs/linux-ppc/asm_avx2/include/openssl/ssl.h +0 -11
  206. package/include/node/openssl/archs/linux-ppc/asm_avx2/include/openssl/x509.h +4 -4
  207. package/include/node/openssl/archs/linux-ppc/no-asm/crypto/buildinf.h +1 -1
  208. package/include/node/openssl/archs/linux-ppc/no-asm/include/openssl/crypto.h +0 -2
  209. package/include/node/openssl/archs/linux-ppc/no-asm/include/openssl/opensslv.h +5 -5
  210. package/include/node/openssl/archs/linux-ppc/no-asm/include/openssl/ssl.h +0 -11
  211. package/include/node/openssl/archs/linux-ppc/no-asm/include/openssl/x509.h +4 -4
  212. package/include/node/openssl/archs/linux-ppc64/asm/crypto/buildinf.h +1 -1
  213. package/include/node/openssl/archs/linux-ppc64/asm/include/openssl/crypto.h +0 -2
  214. package/include/node/openssl/archs/linux-ppc64/asm/include/openssl/opensslv.h +5 -5
  215. package/include/node/openssl/archs/linux-ppc64/asm/include/openssl/ssl.h +0 -11
  216. package/include/node/openssl/archs/linux-ppc64/asm/include/openssl/x509.h +4 -4
  217. package/include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/buildinf.h +1 -1
  218. package/include/node/openssl/archs/linux-ppc64/asm_avx2/include/openssl/crypto.h +0 -2
  219. package/include/node/openssl/archs/linux-ppc64/asm_avx2/include/openssl/opensslv.h +5 -5
  220. package/include/node/openssl/archs/linux-ppc64/asm_avx2/include/openssl/ssl.h +0 -11
  221. package/include/node/openssl/archs/linux-ppc64/asm_avx2/include/openssl/x509.h +4 -4
  222. package/include/node/openssl/archs/linux-ppc64/no-asm/crypto/buildinf.h +1 -1
  223. package/include/node/openssl/archs/linux-ppc64/no-asm/include/openssl/crypto.h +0 -2
  224. package/include/node/openssl/archs/linux-ppc64/no-asm/include/openssl/opensslv.h +5 -5
  225. package/include/node/openssl/archs/linux-ppc64/no-asm/include/openssl/ssl.h +0 -11
  226. package/include/node/openssl/archs/linux-ppc64/no-asm/include/openssl/x509.h +4 -4
  227. package/include/node/openssl/archs/linux-ppc64le/asm/crypto/buildinf.h +1 -1
  228. package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/crypto.h +0 -2
  229. package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/opensslv.h +5 -5
  230. package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/ssl.h +0 -11
  231. package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/x509.h +4 -4
  232. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/buildinf.h +1 -1
  233. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/crypto.h +0 -2
  234. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/opensslv.h +5 -5
  235. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/ssl.h +0 -11
  236. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/x509.h +4 -4
  237. package/include/node/openssl/archs/linux-ppc64le/no-asm/crypto/buildinf.h +1 -1
  238. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/crypto.h +0 -2
  239. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/opensslv.h +5 -5
  240. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/ssl.h +0 -11
  241. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/x509.h +4 -4
  242. package/include/node/openssl/archs/linux-x86_64/asm/crypto/buildinf.h +1 -1
  243. package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/crypto.h +0 -2
  244. package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/opensslv.h +5 -5
  245. package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/ssl.h +0 -11
  246. package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/x509.h +4 -4
  247. package/include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/buildinf.h +1 -1
  248. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/crypto.h +0 -2
  249. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/opensslv.h +5 -5
  250. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/ssl.h +0 -11
  251. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/x509.h +4 -4
  252. package/include/node/openssl/archs/linux-x86_64/no-asm/crypto/buildinf.h +1 -1
  253. package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/crypto.h +0 -2
  254. package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/opensslv.h +5 -5
  255. package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/ssl.h +0 -11
  256. package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/x509.h +4 -4
  257. package/include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h +1 -1
  258. package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/crypto.h +0 -2
  259. package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/opensslv.h +5 -5
  260. package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/ssl.h +0 -11
  261. package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/x509.h +4 -4
  262. package/include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/buildinf.h +1 -1
  263. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/crypto.h +0 -2
  264. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/opensslv.h +5 -5
  265. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/ssl.h +0 -11
  266. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/x509.h +4 -4
  267. package/include/node/openssl/archs/linux32-s390x/no-asm/crypto/buildinf.h +1 -1
  268. package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/crypto.h +0 -2
  269. package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/opensslv.h +5 -5
  270. package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/ssl.h +0 -11
  271. package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/x509.h +4 -4
  272. package/include/node/openssl/archs/linux64-mips64/asm/crypto/buildinf.h +1 -1
  273. package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/crypto.h +0 -2
  274. package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/opensslv.h +5 -5
  275. package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/ssl.h +0 -11
  276. package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/x509.h +4 -4
  277. package/include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/buildinf.h +1 -1
  278. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/crypto.h +0 -2
  279. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/opensslv.h +5 -5
  280. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/ssl.h +0 -11
  281. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/x509.h +4 -4
  282. package/include/node/openssl/archs/linux64-mips64/no-asm/crypto/buildinf.h +1 -1
  283. package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/crypto.h +0 -2
  284. package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/opensslv.h +5 -5
  285. package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/ssl.h +0 -11
  286. package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/x509.h +4 -4
  287. package/include/node/openssl/archs/linux64-riscv64/no-asm/crypto/buildinf.h +1 -1
  288. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/crypto.h +0 -2
  289. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/opensslv.h +5 -5
  290. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/ssl.h +0 -11
  291. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/x509.h +4 -4
  292. package/include/node/openssl/archs/linux64-s390x/asm/crypto/buildinf.h +1 -1
  293. package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/crypto.h +0 -2
  294. package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/opensslv.h +5 -5
  295. package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/ssl.h +0 -11
  296. package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/x509.h +4 -4
  297. package/include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/buildinf.h +1 -1
  298. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/crypto.h +0 -2
  299. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/opensslv.h +5 -5
  300. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/ssl.h +0 -11
  301. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/x509.h +4 -4
  302. package/include/node/openssl/archs/linux64-s390x/no-asm/crypto/buildinf.h +1 -1
  303. package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/crypto.h +0 -2
  304. package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/opensslv.h +5 -5
  305. package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/ssl.h +0 -11
  306. package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/x509.h +4 -4
  307. package/include/node/openssl/archs/solaris-x86-gcc/asm/crypto/buildinf.h +1 -1
  308. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/crypto.h +0 -2
  309. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/opensslv.h +5 -5
  310. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/ssl.h +0 -11
  311. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/x509.h +4 -4
  312. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/buildinf.h +1 -1
  313. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/crypto.h +0 -2
  314. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/opensslv.h +5 -5
  315. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/ssl.h +0 -11
  316. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/x509.h +4 -4
  317. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h +1 -1
  318. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/crypto.h +0 -2
  319. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/opensslv.h +5 -5
  320. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/ssl.h +0 -11
  321. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/x509.h +4 -4
  322. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h +1 -1
  323. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/crypto.h +0 -2
  324. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslv.h +5 -5
  325. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/ssl.h +0 -11
  326. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/x509.h +4 -4
  327. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/buildinf.h +1 -1
  328. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/crypto.h +0 -2
  329. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/opensslv.h +5 -5
  330. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/ssl.h +0 -11
  331. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/x509.h +4 -4
  332. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h +1 -1
  333. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/crypto.h +0 -2
  334. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslv.h +5 -5
  335. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/ssl.h +0 -11
  336. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/x509.h +4 -4
  337. package/include/node/openssl/ecerr.h +1 -2
  338. package/include/node/v8-array-buffer.h +2 -2
  339. package/include/node/v8-callbacks.h +26 -6
  340. package/include/node/v8-context.h +3 -14
  341. package/include/node/v8-data.h +15 -0
  342. package/include/node/v8-debug.h +21 -4
  343. package/include/node/v8-embedder-heap.h +10 -30
  344. package/include/node/v8-embedder-state-scope.h +51 -0
  345. package/include/node/v8-exception.h +0 -7
  346. package/include/node/v8-function.h +3 -0
  347. package/include/node/v8-initialization.h +64 -31
  348. package/include/node/v8-internal.h +189 -102
  349. package/include/node/v8-isolate.h +49 -2
  350. package/include/node/v8-local-handle.h +0 -4
  351. package/include/node/v8-locker.h +2 -1
  352. package/include/node/v8-message.h +19 -44
  353. package/include/node/v8-object.h +11 -6
  354. package/include/node/v8-platform.h +365 -6
  355. package/include/node/v8-primitive.h +14 -6
  356. package/include/node/v8-profiler.h +78 -2
  357. package/include/node/v8-script.h +27 -51
  358. package/include/node/v8-snapshot.h +0 -2
  359. package/include/node/v8-statistics.h +2 -0
  360. package/include/node/v8-template.h +31 -4
  361. package/include/node/v8-traced-handle.h +39 -224
  362. package/include/node/v8-unwinder.h +10 -7
  363. package/include/node/v8-value-serializer.h +32 -2
  364. package/include/node/v8-version.h +4 -4
  365. package/include/node/v8-wasm.h +13 -1
  366. package/include/node/v8-weak-callback-info.h +20 -6
  367. package/include/node/v8.h +0 -1
  368. package/include/node/v8config.h +56 -11
  369. package/package.json +1 -1
  370. package/share/doc/node/gdbinit +14 -6
  371. package/share/man/man1/node.1 +7 -3
@@ -11,10 +11,8 @@
11
11
 
12
12
  #include <atomic>
13
13
  #include <memory>
14
- #include <string>
15
14
  #include <type_traits>
16
15
  #include <utility>
17
- #include <vector>
18
16
 
19
17
  #include "v8-internal.h" // NOLINT(build/include_directory)
20
18
  #include "v8-local-handle.h" // NOLINT(build/include_directory)
@@ -26,28 +24,24 @@ namespace v8 {
26
24
  class Value;
27
25
 
28
26
  namespace internal {
27
+
29
28
  class BasicTracedReferenceExtractor;
30
- } // namespace internal
31
29
 
32
- namespace api_internal {
30
+ enum class GlobalHandleStoreMode {
31
+ kInitializingStore,
32
+ kAssigningStore,
33
+ };
34
+
33
35
  V8_EXPORT internal::Address* GlobalizeTracedReference(
34
36
  internal::Isolate* isolate, internal::Address* handle,
35
- internal::Address* slot, bool has_destructor);
36
- V8_EXPORT void MoveTracedGlobalReference(internal::Address** from,
37
- internal::Address** to);
38
- V8_EXPORT void CopyTracedGlobalReference(const internal::Address* const* from,
39
- internal::Address** to);
40
- V8_EXPORT void DisposeTracedGlobal(internal::Address* global_handle);
41
- V8_EXPORT void SetFinalizationCallbackTraced(
42
- internal::Address* location, void* parameter,
43
- WeakCallbackInfo<void>::Callback callback);
44
- } // namespace api_internal
37
+ internal::Address* slot, GlobalHandleStoreMode store_mode);
38
+ V8_EXPORT void MoveTracedReference(internal::Address** from,
39
+ internal::Address** to);
40
+ V8_EXPORT void CopyTracedReference(const internal::Address* const* from,
41
+ internal::Address** to);
42
+ V8_EXPORT void DisposeTracedReference(internal::Address* global_handle);
45
43
 
46
- /**
47
- * Deprecated. Use |TracedReference<T>| instead.
48
- */
49
- template <typename T>
50
- struct TracedGlobalTrait {};
44
+ } // namespace internal
51
45
 
52
46
  class TracedReferenceBase {
53
47
  public:
@@ -132,9 +126,8 @@ class TracedReferenceBase {
132
126
  * |v8::EmbedderRootsHandler::IsRoot()| whether the handle should
133
127
  * be treated as root or not.
134
128
  *
135
- * Note that the base class cannot be instantiated itself. Choose from
136
- * - TracedGlobal
137
- * - TracedReference
129
+ * Note that the base class cannot be instantiated itself, use |TracedReference|
130
+ * instead.
138
131
  */
139
132
  template <typename T>
140
133
  class BasicTracedReference : public TracedReferenceBase {
@@ -164,23 +157,20 @@ class BasicTracedReference : public TracedReferenceBase {
164
157
  }
165
158
 
166
159
  private:
167
- enum DestructionMode { kWithDestructor, kWithoutDestructor };
168
-
169
160
  /**
170
161
  * An empty BasicTracedReference without storage cell.
171
162
  */
172
163
  BasicTracedReference() = default;
173
164
 
174
- V8_INLINE static internal::Address* New(Isolate* isolate, T* that, void* slot,
175
- DestructionMode destruction_mode);
165
+ V8_INLINE static internal::Address* New(
166
+ Isolate* isolate, T* that, void* slot,
167
+ internal::GlobalHandleStoreMode store_mode);
176
168
 
177
169
  friend class EmbedderHeapTracer;
178
170
  template <typename F>
179
171
  friend class Local;
180
172
  friend class Object;
181
173
  template <typename F>
182
- friend class TracedGlobal;
183
- template <typename F>
184
174
  friend class TracedReference;
185
175
  template <typename F>
186
176
  friend class BasicTracedReference;
@@ -188,127 +178,6 @@ class BasicTracedReference : public TracedReferenceBase {
188
178
  friend class ReturnValue;
189
179
  };
190
180
 
191
- /**
192
- * A traced handle with destructor that clears the handle. For more details see
193
- * BasicTracedReference.
194
- */
195
- template <typename T>
196
- class TracedGlobal : public BasicTracedReference<T> {
197
- public:
198
- using BasicTracedReference<T>::Reset;
199
-
200
- /**
201
- * Destructor resetting the handle.Is
202
- */
203
- ~TracedGlobal() { this->Reset(); }
204
-
205
- /**
206
- * An empty TracedGlobal without storage cell.
207
- */
208
- TracedGlobal() : BasicTracedReference<T>() {}
209
-
210
- /**
211
- * Construct a TracedGlobal from a Local.
212
- *
213
- * When the Local is non-empty, a new storage cell is created
214
- * pointing to the same object.
215
- */
216
- template <class S>
217
- TracedGlobal(Isolate* isolate, Local<S> that) : BasicTracedReference<T>() {
218
- this->val_ = this->New(isolate, that.val_, &this->val_,
219
- BasicTracedReference<T>::kWithDestructor);
220
- static_assert(std::is_base_of<T, S>::value, "type check");
221
- }
222
-
223
- /**
224
- * Move constructor initializing TracedGlobal from an existing one.
225
- */
226
- V8_INLINE TracedGlobal(TracedGlobal&& other) {
227
- // Forward to operator=.
228
- *this = std::move(other);
229
- }
230
-
231
- /**
232
- * Move constructor initializing TracedGlobal from an existing one.
233
- */
234
- template <typename S>
235
- V8_INLINE TracedGlobal(TracedGlobal<S>&& other) {
236
- // Forward to operator=.
237
- *this = std::move(other);
238
- }
239
-
240
- /**
241
- * Copy constructor initializing TracedGlobal from an existing one.
242
- */
243
- V8_INLINE TracedGlobal(const TracedGlobal& other) {
244
- // Forward to operator=;
245
- *this = other;
246
- }
247
-
248
- /**
249
- * Copy constructor initializing TracedGlobal from an existing one.
250
- */
251
- template <typename S>
252
- V8_INLINE TracedGlobal(const TracedGlobal<S>& other) {
253
- // Forward to operator=;
254
- *this = other;
255
- }
256
-
257
- /**
258
- * Move assignment operator initializing TracedGlobal from an existing one.
259
- */
260
- V8_INLINE TracedGlobal& operator=(TracedGlobal&& rhs);
261
-
262
- /**
263
- * Move assignment operator initializing TracedGlobal from an existing one.
264
- */
265
- template <class S>
266
- V8_INLINE TracedGlobal& operator=(TracedGlobal<S>&& rhs);
267
-
268
- /**
269
- * Copy assignment operator initializing TracedGlobal from an existing one.
270
- *
271
- * Note: Prohibited when |other| has a finalization callback set through
272
- * |SetFinalizationCallback|.
273
- */
274
- V8_INLINE TracedGlobal& operator=(const TracedGlobal& rhs);
275
-
276
- /**
277
- * Copy assignment operator initializing TracedGlobal from an existing one.
278
- *
279
- * Note: Prohibited when |other| has a finalization callback set through
280
- * |SetFinalizationCallback|.
281
- */
282
- template <class S>
283
- V8_INLINE TracedGlobal& operator=(const TracedGlobal<S>& rhs);
284
-
285
- /**
286
- * If non-empty, destroy the underlying storage cell and create a new one with
287
- * the contents of other if other is non empty
288
- */
289
- template <class S>
290
- V8_INLINE void Reset(Isolate* isolate, const Local<S>& other);
291
-
292
- template <class S>
293
- V8_INLINE TracedGlobal<S>& As() const {
294
- return reinterpret_cast<TracedGlobal<S>&>(
295
- const_cast<TracedGlobal<T>&>(*this));
296
- }
297
-
298
- /**
299
- * Adds a finalization callback to the handle. The type of this callback is
300
- * similar to WeakCallbackType::kInternalFields, i.e., it will pass the
301
- * parameter and the first two internal fields of the object.
302
- *
303
- * The callback is then supposed to reset the handle in the callback. No
304
- * further V8 API may be called in this callback. In case additional work
305
- * involving V8 needs to be done, a second callback can be scheduled using
306
- * WeakCallbackInfo<void>::SetSecondPassCallback.
307
- */
308
- V8_INLINE void SetFinalizationCallback(
309
- void* parameter, WeakCallbackInfo<void>::Callback callback);
310
- };
311
-
312
181
  /**
313
182
  * A traced handle without destructor that clears the handle. The embedder needs
314
183
  * to ensure that the handle is not accessed once the V8 object has been
@@ -339,7 +208,7 @@ class TracedReference : public BasicTracedReference<T> {
339
208
  template <class S>
340
209
  TracedReference(Isolate* isolate, Local<S> that) : BasicTracedReference<T>() {
341
210
  this->val_ = this->New(isolate, that.val_, &this->val_,
342
- BasicTracedReference<T>::kWithoutDestructor);
211
+ internal::GlobalHandleStoreMode::kInitializingStore);
343
212
  static_assert(std::is_base_of<T, S>::value, "type check");
344
213
  }
345
214
 
@@ -347,7 +216,7 @@ class TracedReference : public BasicTracedReference<T> {
347
216
  * Move constructor initializing TracedReference from an
348
217
  * existing one.
349
218
  */
350
- V8_INLINE TracedReference(TracedReference&& other) {
219
+ V8_INLINE TracedReference(TracedReference&& other) noexcept {
351
220
  // Forward to operator=.
352
221
  *this = std::move(other);
353
222
  }
@@ -357,7 +226,7 @@ class TracedReference : public BasicTracedReference<T> {
357
226
  * existing one.
358
227
  */
359
228
  template <typename S>
360
- V8_INLINE TracedReference(TracedReference<S>&& other) {
229
+ V8_INLINE TracedReference(TracedReference<S>&& other) noexcept {
361
230
  // Forward to operator=.
362
231
  *this = std::move(other);
363
232
  }
@@ -382,23 +251,23 @@ class TracedReference : public BasicTracedReference<T> {
382
251
  }
383
252
 
384
253
  /**
385
- * Move assignment operator initializing TracedGlobal from an existing one.
254
+ * Move assignment operator initializing TracedReference from an existing one.
386
255
  */
387
- V8_INLINE TracedReference& operator=(TracedReference&& rhs);
256
+ V8_INLINE TracedReference& operator=(TracedReference&& rhs) noexcept;
388
257
 
389
258
  /**
390
- * Move assignment operator initializing TracedGlobal from an existing one.
259
+ * Move assignment operator initializing TracedReference from an existing one.
391
260
  */
392
261
  template <class S>
393
- V8_INLINE TracedReference& operator=(TracedReference<S>&& rhs);
262
+ V8_INLINE TracedReference& operator=(TracedReference<S>&& rhs) noexcept;
394
263
 
395
264
  /**
396
- * Copy assignment operator initializing TracedGlobal from an existing one.
265
+ * Copy assignment operator initializing TracedReference from an existing one.
397
266
  */
398
267
  V8_INLINE TracedReference& operator=(const TracedReference& rhs);
399
268
 
400
269
  /**
401
- * Copy assignment operator initializing TracedGlobal from an existing one.
270
+ * Copy assignment operator initializing TracedReference from an existing one.
402
271
  */
403
272
  template <class S>
404
273
  V8_INLINE TracedReference& operator=(const TracedReference<S>& rhs);
@@ -420,18 +289,18 @@ class TracedReference : public BasicTracedReference<T> {
420
289
  // --- Implementation ---
421
290
  template <class T>
422
291
  internal::Address* BasicTracedReference<T>::New(
423
- Isolate* isolate, T* that, void* slot, DestructionMode destruction_mode) {
292
+ Isolate* isolate, T* that, void* slot,
293
+ internal::GlobalHandleStoreMode store_mode) {
424
294
  if (that == nullptr) return nullptr;
425
295
  internal::Address* p = reinterpret_cast<internal::Address*>(that);
426
- return api_internal::GlobalizeTracedReference(
296
+ return internal::GlobalizeTracedReference(
427
297
  reinterpret_cast<internal::Isolate*>(isolate), p,
428
- reinterpret_cast<internal::Address*>(slot),
429
- destruction_mode == kWithDestructor);
298
+ reinterpret_cast<internal::Address*>(slot), store_mode);
430
299
  }
431
300
 
432
301
  void TracedReferenceBase::Reset() {
433
302
  if (IsEmpty()) return;
434
- api_internal::DisposeTracedGlobal(reinterpret_cast<internal::Address*>(val_));
303
+ internal::DisposeTracedReference(reinterpret_cast<internal::Address*>(val_));
435
304
  SetSlotThreadSafe(nullptr);
436
305
  }
437
306
 
@@ -477,55 +346,6 @@ V8_INLINE bool operator!=(const v8::Local<U>& lhs,
477
346
  return !(rhs == lhs);
478
347
  }
479
348
 
480
- template <class T>
481
- template <class S>
482
- void TracedGlobal<T>::Reset(Isolate* isolate, const Local<S>& other) {
483
- static_assert(std::is_base_of<T, S>::value, "type check");
484
- Reset();
485
- if (other.IsEmpty()) return;
486
- this->val_ = this->New(isolate, other.val_, &this->val_,
487
- BasicTracedReference<T>::kWithDestructor);
488
- }
489
-
490
- template <class T>
491
- template <class S>
492
- TracedGlobal<T>& TracedGlobal<T>::operator=(TracedGlobal<S>&& rhs) {
493
- static_assert(std::is_base_of<T, S>::value, "type check");
494
- *this = std::move(rhs.template As<T>());
495
- return *this;
496
- }
497
-
498
- template <class T>
499
- template <class S>
500
- TracedGlobal<T>& TracedGlobal<T>::operator=(const TracedGlobal<S>& rhs) {
501
- static_assert(std::is_base_of<T, S>::value, "type check");
502
- *this = rhs.template As<T>();
503
- return *this;
504
- }
505
-
506
- template <class T>
507
- TracedGlobal<T>& TracedGlobal<T>::operator=(TracedGlobal&& rhs) {
508
- if (this != &rhs) {
509
- api_internal::MoveTracedGlobalReference(
510
- reinterpret_cast<internal::Address**>(&rhs.val_),
511
- reinterpret_cast<internal::Address**>(&this->val_));
512
- }
513
- return *this;
514
- }
515
-
516
- template <class T>
517
- TracedGlobal<T>& TracedGlobal<T>::operator=(const TracedGlobal& rhs) {
518
- if (this != &rhs) {
519
- this->Reset();
520
- if (rhs.val_ != nullptr) {
521
- api_internal::CopyTracedGlobalReference(
522
- reinterpret_cast<const internal::Address* const*>(&rhs.val_),
523
- reinterpret_cast<internal::Address**>(&this->val_));
524
- }
525
- }
526
- return *this;
527
- }
528
-
529
349
  template <class T>
530
350
  template <class S>
531
351
  void TracedReference<T>::Reset(Isolate* isolate, const Local<S>& other) {
@@ -534,12 +354,13 @@ void TracedReference<T>::Reset(Isolate* isolate, const Local<S>& other) {
534
354
  if (other.IsEmpty()) return;
535
355
  this->SetSlotThreadSafe(
536
356
  this->New(isolate, other.val_, &this->val_,
537
- BasicTracedReference<T>::kWithoutDestructor));
357
+ internal::GlobalHandleStoreMode::kAssigningStore));
538
358
  }
539
359
 
540
360
  template <class T>
541
361
  template <class S>
542
- TracedReference<T>& TracedReference<T>::operator=(TracedReference<S>&& rhs) {
362
+ TracedReference<T>& TracedReference<T>::operator=(
363
+ TracedReference<S>&& rhs) noexcept {
543
364
  static_assert(std::is_base_of<T, S>::value, "type check");
544
365
  *this = std::move(rhs.template As<T>());
545
366
  return *this;
@@ -555,9 +376,10 @@ TracedReference<T>& TracedReference<T>::operator=(
555
376
  }
556
377
 
557
378
  template <class T>
558
- TracedReference<T>& TracedReference<T>::operator=(TracedReference&& rhs) {
379
+ TracedReference<T>& TracedReference<T>::operator=(
380
+ TracedReference&& rhs) noexcept {
559
381
  if (this != &rhs) {
560
- api_internal::MoveTracedGlobalReference(
382
+ internal::MoveTracedReference(
561
383
  reinterpret_cast<internal::Address**>(&rhs.val_),
562
384
  reinterpret_cast<internal::Address**>(&this->val_));
563
385
  }
@@ -569,7 +391,7 @@ TracedReference<T>& TracedReference<T>::operator=(const TracedReference& rhs) {
569
391
  if (this != &rhs) {
570
392
  this->Reset();
571
393
  if (rhs.val_ != nullptr) {
572
- api_internal::CopyTracedGlobalReference(
394
+ internal::CopyTracedReference(
573
395
  reinterpret_cast<const internal::Address* const*>(&rhs.val_),
574
396
  reinterpret_cast<internal::Address**>(&this->val_));
575
397
  }
@@ -593,13 +415,6 @@ uint16_t TracedReferenceBase::WrapperClassId() const {
593
415
  return *reinterpret_cast<uint16_t*>(addr);
594
416
  }
595
417
 
596
- template <class T>
597
- void TracedGlobal<T>::SetFinalizationCallback(
598
- void* parameter, typename WeakCallbackInfo<void>::Callback callback) {
599
- api_internal::SetFinalizationCallbackTraced(
600
- reinterpret_cast<internal::Address*>(this->val_), parameter, callback);
601
- }
602
-
603
418
  } // namespace v8
604
419
 
605
420
  #endif // INCLUDE_V8_TRACED_HANDLE_H_
@@ -7,7 +7,8 @@
7
7
 
8
8
  #include <memory>
9
9
 
10
- #include "v8config.h" // NOLINT(build/include_directory)
10
+ #include "v8-embedder-state-scope.h" // NOLINT(build/include_directory)
11
+ #include "v8config.h" // NOLINT(build/include_directory)
11
12
 
12
13
  namespace v8 {
13
14
  // Holds the callee saved registers needed for the stack unwinder. It is the
@@ -32,7 +33,7 @@ struct V8_EXPORT RegisterState {
32
33
  };
33
34
 
34
35
  // A StateTag represents a possible state of the VM.
35
- enum StateTag {
36
+ enum StateTag : int {
36
37
  JS,
37
38
  GC,
38
39
  PARSER,
@@ -46,11 +47,13 @@ enum StateTag {
46
47
 
47
48
  // The output structure filled up by GetStackSample API function.
48
49
  struct SampleInfo {
49
- size_t frames_count; // Number of frames collected.
50
- StateTag vm_state; // Current VM state.
51
- void* external_callback_entry; // External callback address if VM is
52
- // executing an external callback.
53
- void* context; // Incumbent native context address.
50
+ size_t frames_count; // Number of frames collected.
51
+ void* external_callback_entry; // External callback address if VM is
52
+ // executing an external callback.
53
+ void* context; // Incumbent native context address.
54
+ void* embedder_context; // Native context address for embedder state
55
+ StateTag vm_state; // Current VM state.
56
+ EmbedderStateTag embedder_state; // Current Embedder state
54
57
  };
55
58
 
56
59
  struct MemoryRange {
@@ -67,6 +67,23 @@ class V8_EXPORT ValueSerializer {
67
67
 
68
68
  virtual Maybe<uint32_t> GetWasmModuleTransferId(
69
69
  Isolate* isolate, Local<WasmModuleObject> module);
70
+
71
+ /**
72
+ * Returns whether shared values are supported. GetSharedValueId is only
73
+ * called if SupportsSharedValues() returns true.
74
+ */
75
+ virtual bool SupportsSharedValues() const;
76
+
77
+ /**
78
+ * Called when the ValueSerializer serializes a value that is shared across
79
+ * Isolates. The embedder must return an ID for the object. This function
80
+ * must be idempotent for the same object. When deserializing, the ID will
81
+ * be passed to ValueDeserializer::Delegate::GetSharedValueFromId as
82
+ * |shared_value_id|.
83
+ */
84
+ virtual Maybe<uint32_t> GetSharedValueId(Isolate* isolate,
85
+ Local<Value> shared_value);
86
+
70
87
  /**
71
88
  * Allocates memory for the buffer of at least the size provided. The actual
72
89
  * size (which may be greater or equal) is written to |actual_size|. If no
@@ -166,17 +183,30 @@ class V8_EXPORT ValueDeserializer {
166
183
 
167
184
  /**
168
185
  * Get a WasmModuleObject given a transfer_id previously provided
169
- * by ValueSerializer::GetWasmModuleTransferId
186
+ * by ValueSerializer::Delegate::GetWasmModuleTransferId
170
187
  */
171
188
  virtual MaybeLocal<WasmModuleObject> GetWasmModuleFromId(
172
189
  Isolate* isolate, uint32_t transfer_id);
173
190
 
174
191
  /**
175
192
  * Get a SharedArrayBuffer given a clone_id previously provided
176
- * by ValueSerializer::GetSharedArrayBufferId
193
+ * by ValueSerializer::Delegate::GetSharedArrayBufferId
177
194
  */
178
195
  virtual MaybeLocal<SharedArrayBuffer> GetSharedArrayBufferFromId(
179
196
  Isolate* isolate, uint32_t clone_id);
197
+
198
+ /**
199
+ * Returns whether shared values are supported. GetSharedValueFromId is only
200
+ * called if SupportsSharedValues() returns true.
201
+ */
202
+ virtual bool SupportsSharedValues() const;
203
+
204
+ /**
205
+ * Get a value shared across Isolates given a shared_value_id provided by
206
+ * ValueSerializer::Delegate::GetSharedValueId.
207
+ */
208
+ virtual MaybeLocal<Value> GetSharedValueFromId(Isolate* isolate,
209
+ uint32_t shared_value_id);
180
210
  };
181
211
 
182
212
  ValueDeserializer(Isolate* isolate, const uint8_t* data, size_t size);
@@ -8,10 +8,10 @@
8
8
  // These macros define the version number for the current version.
9
9
  // NOTE these macros are used by some of the tool scripts and the build
10
10
  // system so their names cannot be changed without changing the scripts.
11
- #define V8_MAJOR_VERSION 9
12
- #define V8_MINOR_VERSION 6
13
- #define V8_BUILD_NUMBER 180
14
- #define V8_PATCH_LEVEL 15
11
+ #define V8_MAJOR_VERSION 10
12
+ #define V8_MINOR_VERSION 1
13
+ #define V8_BUILD_NUMBER 124
14
+ #define V8_PATCH_LEVEL 8
15
15
 
16
16
  // Use 1 for candidates and 0 otherwise.
17
17
  // (Boolean macro values are not supported by all preprocessors.)
@@ -103,6 +103,12 @@ class V8_EXPORT WasmModuleObject : public Object {
103
103
  */
104
104
  CompiledWasmModule GetCompiledModule();
105
105
 
106
+ /**
107
+ * Compile a Wasm module from the provided uncompiled bytes.
108
+ */
109
+ static MaybeLocal<WasmModuleObject> Compile(
110
+ Isolate* isolate, MemorySpan<const uint8_t> wire_bytes);
111
+
106
112
  V8_INLINE static WasmModuleObject* Cast(Value* value) {
107
113
  #ifdef V8_ENABLE_CHECKS
108
114
  CheckCast(value);
@@ -151,8 +157,12 @@ class V8_EXPORT WasmStreaming final {
151
157
  * {Finish} should be called after all received bytes where passed to
152
158
  * {OnBytesReceived} to tell V8 that there will be no more bytes. {Finish}
153
159
  * does not have to be called after {Abort} has been called already.
160
+ * If {can_use_compiled_module} is true and {SetCompiledModuleBytes} was
161
+ * previously called, the compiled module bytes can be used.
162
+ * If {can_use_compiled_module} is false, the compiled module bytes previously
163
+ * set by {SetCompiledModuleBytes} should not be used.
154
164
  */
155
- void Finish();
165
+ void Finish(bool can_use_compiled_module = true);
156
166
 
157
167
  /**
158
168
  * Abort streaming compilation. If {exception} has a value, then the promise
@@ -167,6 +177,8 @@ class V8_EXPORT WasmStreaming final {
167
177
  * can be used, false otherwise. The buffer passed via {bytes} and {size}
168
178
  * is owned by the caller. If {SetCompiledModuleBytes} returns true, the
169
179
  * buffer must remain valid until either {Finish} or {Abort} completes.
180
+ * The compiled module bytes should not be used until {Finish(true)} is
181
+ * called, because they can be invalidated later by {Finish(false)}.
170
182
  */
171
183
  bool SetCompiledModuleBytes(const uint8_t* bytes, size_t size);
172
184
 
@@ -51,12 +51,26 @@ class WeakCallbackInfo {
51
51
  void* embedder_fields_[kEmbedderFieldsInWeakCallback];
52
52
  };
53
53
 
54
- // kParameter will pass a void* parameter back to the callback, kInternalFields
55
- // will pass the first two internal fields back to the callback, kFinalizer
56
- // will pass a void* parameter back, but is invoked before the object is
57
- // actually collected, so it can be resurrected. In the last case, it is not
58
- // possible to request a second pass callback.
59
- enum class WeakCallbackType { kParameter, kInternalFields, kFinalizer };
54
+ /**
55
+ * Weakness type for weak handles.
56
+ */
57
+ enum class WeakCallbackType {
58
+ /**
59
+ * Passes a user-defined void* parameter back to the callback.
60
+ */
61
+ kParameter,
62
+ /**
63
+ * Passes the first two internal fields of the object back to the callback.
64
+ */
65
+ kInternalFields,
66
+ /**
67
+ * Passes a user-defined void* parameter back to the callback. Will do so
68
+ * before the object is actually reclaimed, allowing it to be resurrected. In
69
+ * this case it is not possible to set a second-pass callback.
70
+ */
71
+ kFinalizer V8_ENUM_DEPRECATED("Resurrecting finalizers are deprecated "
72
+ "and will not be supported going forward.")
73
+ };
60
74
 
61
75
  template <class T>
62
76
  void* WeakCallbackInfo<T>::GetInternalField(int index) const {
package/include/node/v8.h CHANGED
@@ -19,7 +19,6 @@
19
19
  #include <stdint.h>
20
20
 
21
21
  #include <memory>
22
- #include <vector>
23
22
 
24
23
  #include "cppgc/common.h"
25
24
  #include "v8-array-buffer.h" // NOLINT(build/include_directory)