node-linux-s390x 20.11.0 → 20.12.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 (246) hide show
  1. package/CHANGELOG.md +668 -0
  2. package/LICENSE +65 -43
  3. package/README.md +20 -16
  4. package/bin/node +0 -0
  5. package/include/node/common.gypi +1 -1
  6. package/include/node/config.gypi +4 -2
  7. package/include/node/js_native_api.h +33 -20
  8. package/include/node/js_native_api_types.h +39 -0
  9. package/include/node/node.h +32 -2
  10. package/include/node/node_api.h +16 -16
  11. package/include/node/node_version.h +1 -1
  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/bio.h +1 -1
  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/progs.h +1 -1
  16. package/include/node/openssl/archs/BSD-x86/asm_avx2/crypto/buildinf.h +1 -1
  17. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/bio.h +1 -1
  18. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/opensslv.h +5 -5
  19. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/progs.h +1 -1
  20. package/include/node/openssl/archs/BSD-x86/no-asm/crypto/buildinf.h +1 -1
  21. package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/bio.h +1 -1
  22. package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/opensslv.h +5 -5
  23. package/include/node/openssl/archs/BSD-x86/no-asm/include/progs.h +1 -1
  24. package/include/node/openssl/archs/BSD-x86_64/asm/crypto/buildinf.h +1 -1
  25. package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/bio.h +1 -1
  26. package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/opensslv.h +5 -5
  27. package/include/node/openssl/archs/BSD-x86_64/asm/include/progs.h +1 -1
  28. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/buildinf.h +1 -1
  29. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/bio.h +1 -1
  30. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/opensslv.h +5 -5
  31. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/progs.h +1 -1
  32. package/include/node/openssl/archs/BSD-x86_64/no-asm/crypto/buildinf.h +1 -1
  33. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/bio.h +1 -1
  34. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/opensslv.h +5 -5
  35. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/progs.h +1 -1
  36. package/include/node/openssl/archs/VC-WIN32/asm/crypto/buildinf.h +1 -1
  37. package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/bio.h +1 -1
  38. package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/opensslv.h +5 -5
  39. package/include/node/openssl/archs/VC-WIN32/asm/include/progs.h +1 -1
  40. package/include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/buildinf.h +1 -1
  41. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/bio.h +1 -1
  42. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/opensslv.h +5 -5
  43. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/progs.h +1 -1
  44. package/include/node/openssl/archs/VC-WIN32/no-asm/crypto/buildinf.h +1 -1
  45. package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/bio.h +1 -1
  46. package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/opensslv.h +5 -5
  47. package/include/node/openssl/archs/VC-WIN32/no-asm/include/progs.h +1 -1
  48. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/buildinf.h +1 -1
  49. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/bio.h +1 -1
  50. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/opensslv.h +5 -5
  51. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/progs.h +1 -1
  52. package/include/node/openssl/archs/VC-WIN64A/asm/crypto/buildinf.h +1 -1
  53. package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/bio.h +1 -1
  54. package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/opensslv.h +5 -5
  55. package/include/node/openssl/archs/VC-WIN64A/asm/include/progs.h +1 -1
  56. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/buildinf.h +1 -1
  57. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/bio.h +1 -1
  58. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/opensslv.h +5 -5
  59. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/progs.h +1 -1
  60. package/include/node/openssl/archs/VC-WIN64A/no-asm/crypto/buildinf.h +1 -1
  61. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/bio.h +1 -1
  62. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/opensslv.h +5 -5
  63. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/progs.h +1 -1
  64. package/include/node/openssl/archs/aix64-gcc-as/asm/crypto/buildinf.h +1 -1
  65. package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/bio.h +1 -1
  66. package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/opensslv.h +5 -5
  67. package/include/node/openssl/archs/aix64-gcc-as/asm/include/progs.h +1 -1
  68. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/crypto/buildinf.h +1 -1
  69. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/bio.h +1 -1
  70. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/opensslv.h +5 -5
  71. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/progs.h +1 -1
  72. package/include/node/openssl/archs/aix64-gcc-as/no-asm/crypto/buildinf.h +1 -1
  73. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/bio.h +1 -1
  74. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/opensslv.h +5 -5
  75. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/progs.h +1 -1
  76. package/include/node/openssl/archs/darwin-i386-cc/asm/crypto/buildinf.h +1 -1
  77. package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/bio.h +1 -1
  78. package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/opensslv.h +5 -5
  79. package/include/node/openssl/archs/darwin-i386-cc/asm/include/progs.h +1 -1
  80. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/buildinf.h +1 -1
  81. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/bio.h +1 -1
  82. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  83. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/progs.h +1 -1
  84. package/include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/buildinf.h +1 -1
  85. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/bio.h +1 -1
  86. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/opensslv.h +5 -5
  87. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/progs.h +1 -1
  88. package/include/node/openssl/archs/darwin64-arm64-cc/asm/crypto/buildinf.h +1 -1
  89. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/bio.h +1 -1
  90. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/opensslv.h +5 -5
  91. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/progs.h +1 -1
  92. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/crypto/buildinf.h +1 -1
  93. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/bio.h +1 -1
  94. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  95. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/progs.h +1 -1
  96. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/crypto/buildinf.h +1 -1
  97. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/bio.h +1 -1
  98. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/opensslv.h +5 -5
  99. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/progs.h +1 -1
  100. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h +1 -1
  101. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/bio.h +1 -1
  102. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/opensslv.h +5 -5
  103. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/progs.h +1 -1
  104. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/buildinf.h +1 -1
  105. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/bio.h +1 -1
  106. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  107. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/progs.h +1 -1
  108. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h +1 -1
  109. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/bio.h +1 -1
  110. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslv.h +5 -5
  111. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/progs.h +1 -1
  112. package/include/node/openssl/archs/linux-aarch64/asm/crypto/buildinf.h +1 -1
  113. package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/bio.h +1 -1
  114. package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/opensslv.h +5 -5
  115. package/include/node/openssl/archs/linux-aarch64/asm/include/progs.h +1 -1
  116. package/include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/buildinf.h +1 -1
  117. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/bio.h +1 -1
  118. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/opensslv.h +5 -5
  119. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/progs.h +1 -1
  120. package/include/node/openssl/archs/linux-aarch64/no-asm/crypto/buildinf.h +1 -1
  121. package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/bio.h +1 -1
  122. package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/opensslv.h +5 -5
  123. package/include/node/openssl/archs/linux-aarch64/no-asm/include/progs.h +1 -1
  124. package/include/node/openssl/archs/linux-armv4/asm/crypto/buildinf.h +1 -1
  125. package/include/node/openssl/archs/linux-armv4/asm/include/openssl/bio.h +1 -1
  126. package/include/node/openssl/archs/linux-armv4/asm/include/openssl/opensslv.h +5 -5
  127. package/include/node/openssl/archs/linux-armv4/asm/include/progs.h +1 -1
  128. package/include/node/openssl/archs/linux-armv4/asm_avx2/crypto/buildinf.h +1 -1
  129. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/bio.h +1 -1
  130. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/opensslv.h +5 -5
  131. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/progs.h +1 -1
  132. package/include/node/openssl/archs/linux-armv4/no-asm/crypto/buildinf.h +1 -1
  133. package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/bio.h +1 -1
  134. package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/opensslv.h +5 -5
  135. package/include/node/openssl/archs/linux-armv4/no-asm/include/progs.h +1 -1
  136. package/include/node/openssl/archs/linux-elf/asm/crypto/buildinf.h +1 -1
  137. package/include/node/openssl/archs/linux-elf/asm/include/openssl/bio.h +1 -1
  138. package/include/node/openssl/archs/linux-elf/asm/include/openssl/opensslv.h +5 -5
  139. package/include/node/openssl/archs/linux-elf/asm/include/progs.h +1 -1
  140. package/include/node/openssl/archs/linux-elf/asm_avx2/crypto/buildinf.h +1 -1
  141. package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/bio.h +1 -1
  142. package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/opensslv.h +5 -5
  143. package/include/node/openssl/archs/linux-elf/asm_avx2/include/progs.h +1 -1
  144. package/include/node/openssl/archs/linux-elf/no-asm/crypto/buildinf.h +1 -1
  145. package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/bio.h +1 -1
  146. package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/opensslv.h +5 -5
  147. package/include/node/openssl/archs/linux-elf/no-asm/include/progs.h +1 -1
  148. package/include/node/openssl/archs/linux-ppc64le/asm/crypto/buildinf.h +1 -1
  149. package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/bio.h +1 -1
  150. package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/opensslv.h +5 -5
  151. package/include/node/openssl/archs/linux-ppc64le/asm/include/progs.h +1 -1
  152. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/buildinf.h +1 -1
  153. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/bio.h +1 -1
  154. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/opensslv.h +5 -5
  155. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/progs.h +1 -1
  156. package/include/node/openssl/archs/linux-ppc64le/no-asm/crypto/buildinf.h +1 -1
  157. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/bio.h +1 -1
  158. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/opensslv.h +5 -5
  159. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/progs.h +1 -1
  160. package/include/node/openssl/archs/linux-x86_64/asm/crypto/buildinf.h +1 -1
  161. package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/bio.h +1 -1
  162. package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/opensslv.h +5 -5
  163. package/include/node/openssl/archs/linux-x86_64/asm/include/progs.h +1 -1
  164. package/include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/buildinf.h +1 -1
  165. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/bio.h +1 -1
  166. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/opensslv.h +5 -5
  167. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/progs.h +1 -1
  168. package/include/node/openssl/archs/linux-x86_64/no-asm/crypto/buildinf.h +1 -1
  169. package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/bio.h +1 -1
  170. package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/opensslv.h +5 -5
  171. package/include/node/openssl/archs/linux-x86_64/no-asm/include/progs.h +1 -1
  172. package/include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h +1 -1
  173. package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/bio.h +1 -1
  174. package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/opensslv.h +5 -5
  175. package/include/node/openssl/archs/linux32-s390x/asm/include/progs.h +1 -1
  176. package/include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/buildinf.h +1 -1
  177. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/bio.h +1 -1
  178. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/opensslv.h +5 -5
  179. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/progs.h +1 -1
  180. package/include/node/openssl/archs/linux32-s390x/no-asm/crypto/buildinf.h +1 -1
  181. package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/bio.h +1 -1
  182. package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/opensslv.h +5 -5
  183. package/include/node/openssl/archs/linux32-s390x/no-asm/include/progs.h +1 -1
  184. package/include/node/openssl/archs/linux64-loongarch64/no-asm/crypto/buildinf.h +1 -1
  185. package/include/node/openssl/archs/linux64-loongarch64/no-asm/include/openssl/bio.h +1 -1
  186. package/include/node/openssl/archs/linux64-loongarch64/no-asm/include/openssl/opensslv.h +5 -5
  187. package/include/node/openssl/archs/linux64-loongarch64/no-asm/include/progs.h +1 -1
  188. package/include/node/openssl/archs/linux64-mips64/asm/crypto/buildinf.h +1 -1
  189. package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/bio.h +1 -1
  190. package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/opensslv.h +5 -5
  191. package/include/node/openssl/archs/linux64-mips64/asm/include/progs.h +1 -1
  192. package/include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/buildinf.h +1 -1
  193. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/bio.h +1 -1
  194. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/opensslv.h +5 -5
  195. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/progs.h +1 -1
  196. package/include/node/openssl/archs/linux64-mips64/no-asm/crypto/buildinf.h +1 -1
  197. package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/bio.h +1 -1
  198. package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/opensslv.h +5 -5
  199. package/include/node/openssl/archs/linux64-mips64/no-asm/include/progs.h +1 -1
  200. package/include/node/openssl/archs/linux64-riscv64/no-asm/crypto/buildinf.h +1 -1
  201. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/bio.h +1 -1
  202. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/opensslv.h +5 -5
  203. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/progs.h +1 -1
  204. package/include/node/openssl/archs/linux64-s390x/asm/crypto/buildinf.h +1 -1
  205. package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/bio.h +1 -1
  206. package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/opensslv.h +5 -5
  207. package/include/node/openssl/archs/linux64-s390x/asm/include/progs.h +1 -1
  208. package/include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/buildinf.h +1 -1
  209. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/bio.h +1 -1
  210. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/opensslv.h +5 -5
  211. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/progs.h +1 -1
  212. package/include/node/openssl/archs/linux64-s390x/no-asm/crypto/buildinf.h +1 -1
  213. package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/bio.h +1 -1
  214. package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/opensslv.h +5 -5
  215. package/include/node/openssl/archs/linux64-s390x/no-asm/include/progs.h +1 -1
  216. package/include/node/openssl/archs/solaris-x86-gcc/asm/crypto/buildinf.h +1 -1
  217. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/bio.h +1 -1
  218. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/opensslv.h +5 -5
  219. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/progs.h +1 -1
  220. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/buildinf.h +1 -1
  221. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/bio.h +1 -1
  222. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/opensslv.h +5 -5
  223. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/progs.h +1 -1
  224. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h +1 -1
  225. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/bio.h +1 -1
  226. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/opensslv.h +5 -5
  227. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/progs.h +1 -1
  228. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h +1 -1
  229. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/bio.h +1 -1
  230. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslv.h +5 -5
  231. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/progs.h +1 -1
  232. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/buildinf.h +1 -1
  233. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/bio.h +1 -1
  234. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/opensslv.h +5 -5
  235. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/progs.h +1 -1
  236. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h +1 -1
  237. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/bio.h +1 -1
  238. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslv.h +5 -5
  239. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/progs.h +1 -1
  240. package/include/node/openssl/conferr.h +1 -0
  241. package/include/node/openssl/dh.h +3 -3
  242. package/include/node/openssl/dherr.h +2 -1
  243. package/include/node/v8-profiler.h +10 -0
  244. package/include/node/zlib.h +8 -8
  245. package/package.json +1 -1
  246. package/share/man/man1/node.1 +3 -0
package/LICENSE CHANGED
@@ -132,52 +132,45 @@ The externally maintained libraries used by Node.js are:
132
132
 
133
133
  - ICU, located at deps/icu-small, is licensed as follows:
134
134
  """
135
- UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE
136
-
137
- See Terms of Use
138
- for definitions of Unicode Inc.’s Data Files and Software.
139
-
140
- NOTICE TO USER: Carefully read the following legal agreement.
141
- BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S
142
- DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"),
143
- YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE
144
- TERMS AND CONDITIONS OF THIS AGREEMENT.
145
- IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE
146
- THE DATA FILES OR SOFTWARE.
135
+ UNICODE LICENSE V3
147
136
 
148
137
  COPYRIGHT AND PERMISSION NOTICE
149
138
 
150
- Copyright © 1991-2023 Unicode, Inc. All rights reserved.
151
- Distributed under the Terms of Use in https://www.unicode.org/copyright.html.
139
+ Copyright © 2016-2023 Unicode, Inc.
152
140
 
153
- Permission is hereby granted, free of charge, to any person obtaining
154
- a copy of the Unicode data files and any associated documentation
155
- (the "Data Files") or Unicode software and any associated documentation
156
- (the "Software") to deal in the Data Files or Software
157
- without restriction, including without limitation the rights to use,
158
- copy, modify, merge, publish, distribute, and/or sell copies of
159
- the Data Files or Software, and to permit persons to whom the Data Files
160
- or Software are furnished to do so, provided that either
161
- (a) this copyright and permission notice appear with all copies
162
- of the Data Files or Software, or
163
- (b) this copyright and permission notice appear in associated
164
- Documentation.
165
-
166
- THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
167
- ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
168
- WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
169
- NONINFRINGEMENT OF THIRD PARTY RIGHTS.
170
- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
171
- NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
172
- DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
173
- DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
174
- TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
175
- PERFORMANCE OF THE DATA FILES OR SOFTWARE.
141
+ NOTICE TO USER: Carefully read the following legal agreement. BY
142
+ DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING DATA FILES, AND/OR
143
+ SOFTWARE, YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE
144
+ TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE, DO NOT
145
+ DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE.
176
146
 
177
- Except as contained in this notice, the name of a copyright holder
178
- shall not be used in advertising or otherwise to promote the sale,
179
- use or other dealings in these Data Files or Software without prior
180
- written authorization of the copyright holder.
147
+ Permission is hereby granted, free of charge, to any person obtaining a
148
+ copy of data files and any associated documentation (the "Data Files") or
149
+ software and any associated documentation (the "Software") to deal in the
150
+ Data Files or Software without restriction, including without limitation
151
+ the rights to use, copy, modify, merge, publish, distribute, and/or sell
152
+ copies of the Data Files or Software, and to permit persons to whom the
153
+ Data Files or Software are furnished to do so, provided that either (a)
154
+ this copyright and permission notice appear with all copies of the Data
155
+ Files or Software, or (b) this copyright and permission notice appear in
156
+ associated Documentation.
157
+
158
+ THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
159
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
160
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
161
+ THIRD PARTY RIGHTS.
162
+
163
+ IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE
164
+ BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES,
165
+ OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
166
+ WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
167
+ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA
168
+ FILES OR SOFTWARE.
169
+
170
+ Except as contained in this notice, the name of a copyright holder shall
171
+ not be used in advertising or otherwise to promote the sale, use or other
172
+ dealings in these Data Files or Software without prior written
173
+ authorization of the copyright holder.
181
174
 
182
175
  ----------------------------------------------------------------------
183
176
 
@@ -1292,9 +1285,9 @@ The externally maintained libraries used by Node.js are:
1292
1285
  - zlib, located at deps/zlib, is licensed as follows:
1293
1286
  """
1294
1287
  zlib.h -- interface of the 'zlib' general purpose compression library
1295
- version 1.2.13.1, October xxth, 2022
1288
+ version 1.3.0.1, August xxth, 2023
1296
1289
 
1297
- Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler
1290
+ Copyright (C) 1995-2023 Jean-loup Gailly and Mark Adler
1298
1291
 
1299
1292
  This software is provided 'as-is', without any express or implied
1300
1293
  warranty. In no event will the authors be held liable for any damages
@@ -1774,6 +1767,35 @@ The externally maintained libraries used by Node.js are:
1774
1767
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1775
1768
  """
1776
1769
 
1770
+ - gypi_to_gn.py, located at tools/gypi_to_gn.py, is licensed as follows:
1771
+ """
1772
+ Redistribution and use in source and binary forms, with or without
1773
+ modification, are permitted provided that the following conditions are
1774
+ met:
1775
+
1776
+ * Redistributions of source code must retain the above copyright
1777
+ notice, this list of conditions and the following disclaimer.
1778
+ * Redistributions in binary form must reproduce the above
1779
+ copyright notice, this list of conditions and the following disclaimer
1780
+ in the documentation and/or other materials provided with the
1781
+ distribution.
1782
+ * Neither the name of Google LLC nor the names of its
1783
+ contributors may be used to endorse or promote products derived from
1784
+ this software without specific prior written permission.
1785
+
1786
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1787
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1788
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
1789
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
1790
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
1791
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
1792
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
1793
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
1794
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
1795
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
1796
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1797
+ """
1798
+
1777
1799
  - ESLint, located at tools/node_modules/eslint, is licensed as follows:
1778
1800
  """
1779
1801
  Copyright OpenJS Foundation and other contributors, <www.openjsf.org>
package/README.md CHANGED
@@ -190,14 +190,14 @@ For information about the governance of the Node.js project, see
190
190
  **Moshe Atlow** <<moshe@atlow.co.il>> (he/him)
191
191
  * [RafaelGSS](https://github.com/RafaelGSS) -
192
192
  **Rafael Gonzaga** <<rafael.nunu@hotmail.com>> (he/him)
193
- * [RaisinTen](https://github.com/RaisinTen) -
194
- **Darshan Sen** <<raisinten@gmail.com>> (he/him)
195
193
  * [richardlau](https://github.com/richardlau) -
196
194
  **Richard Lau** <<rlau@redhat.com>>
197
195
  * [ronag](https://github.com/ronag) -
198
196
  **Robert Nagy** <<ronagy@icloud.com>>
199
197
  * [ruyadorno](https://github.com/ruyadorno) -
200
198
  **Ruy Adorno** <<ruyadorno@google.com>> (he/him)
199
+ * [ShogunPanda](https://github.com/ShogunPanda) -
200
+ **Paolo Insogna** <<paolo@cowtech.it>> (he/him)
201
201
  * [targos](https://github.com/targos) -
202
202
  **Michaël Zasso** <<targos@protonmail.com>> (he/him)
203
203
  * [tniessen](https://github.com/tniessen) -
@@ -266,6 +266,8 @@ For information about the governance of the Node.js project, see
266
266
  **Alexis Campailla** <<orangemocha@nodejs.org>>
267
267
  * [piscisaureus](https://github.com/piscisaureus) -
268
268
  **Bert Belder** <<bertbelder@gmail.com>>
269
+ * [RaisinTen](https://github.com/RaisinTen) -
270
+ **Darshan Sen** <<raisinten@gmail.com>> (he/him)
269
271
  * [sam-github](https://github.com/sam-github) -
270
272
  **Sam Roberts** <<vieuxtech@gmail.com>>
271
273
  * [shigeki](https://github.com/shigeki) -
@@ -333,8 +335,6 @@ For information about the governance of the Node.js project, see
333
335
  **Debadree Chatterjee** <<debadree333@gmail.com>> (he/him)
334
336
  * [deokjinkim](https://github.com/deokjinkim) -
335
337
  **Deokjin Kim** <<deokjin81.kim@gmail.com>> (he/him)
336
- * [devnexen](https://github.com/devnexen) -
337
- **David Carlier** <<devnexen@gmail.com>>
338
338
  * [devsnek](https://github.com/devsnek) -
339
339
  **Gus Caplan** <<me@gus.host>> (they/them)
340
340
  * [edsadr](https://github.com/edsadr) -
@@ -367,8 +367,6 @@ For information about the governance of the Node.js project, see
367
367
  **Zeyu "Alex" Yang** <<himself65@outlook.com>> (he/him)
368
368
  * [iansu](https://github.com/iansu) -
369
369
  **Ian Sutherland** <<ian@iansutherland.ca>>
370
- * [JacksonTian](https://github.com/JacksonTian) -
371
- **Jackson Tian** <<shyvo1987@gmail.com>>
372
370
  * [JakobJingleheimer](https://github.com/JakobJingleheimer) -
373
371
  **Jacob Smith** <<jacob@frende.me>> (he/him)
374
372
  * [jasnell](https://github.com/jasnell) -
@@ -391,6 +389,8 @@ For information about the governance of the Node.js project, see
391
389
  **Keyhan Vakil** <<kvakil@sylph.kvakil.me>>
392
390
  * [legendecas](https://github.com/legendecas) -
393
391
  **Chengzhong Wu** <<legendecas@gmail.com>> (he/him)
392
+ * [lemire](https://github.com/lemire) -
393
+ **Daniel Lemire** <<daniel@lemire.me>>
394
394
  * [linkgoron](https://github.com/linkgoron) -
395
395
  **Nitzan Uziely** <<linkgoron@gmail.com>>
396
396
  * [LiviaMedeiros](https://github.com/LiviaMedeiros) -
@@ -413,8 +413,6 @@ For information about the governance of the Node.js project, see
413
413
  **Mestery** <<mestery@protonmail.com>> (he/him)
414
414
  * [mhdawson](https://github.com/mhdawson) -
415
415
  **Michael Dawson** <<midawson@redhat.com>> (he/him)
416
- * [miladfarca](https://github.com/miladfarca) -
417
- **Milad Fa** <<mfarazma@redhat.com>> (he/him)
418
416
  * [mildsunrise](https://github.com/mildsunrise) -
419
417
  **Alba Mendez** <<me@alba.sh>> (she/her)
420
418
  * [MoLow](https://github.com/MoLow) -
@@ -427,16 +425,12 @@ For information about the governance of the Node.js project, see
427
425
  **Myles Borins** <<myles.borins@gmail.com>> (he/him)
428
426
  * [ovflowd](https://github.com/ovflowd) -
429
427
  **Claudio Wunder** <<cwunder@gnome.org>> (he/they)
430
- * [oyyd](https://github.com/oyyd) -
431
- **Ouyang Yadong** <<oyydoibh@gmail.com>> (he/him)
432
428
  * [panva](https://github.com/panva) -
433
429
  **Filip Skokan** <<panva.ip@gmail.com>> (he/him)
434
430
  * [Qard](https://github.com/Qard) -
435
431
  **Stephen Belanger** <<admin@stephenbelanger.com>> (he/him)
436
432
  * [RafaelGSS](https://github.com/RafaelGSS) -
437
433
  **Rafael Gonzaga** <<rafael.nunu@hotmail.com>> (he/him)
438
- * [RaisinTen](https://github.com/RaisinTen) -
439
- **Darshan Sen** <<raisinten@gmail.com>> (he/him)
440
434
  * [rluvaton](https://github.com/rluvaton) -
441
435
  **Raz Luvaton** <<rluvaton@gmail.com>> (he/him)
442
436
  * [richardlau](https://github.com/richardlau) -
@@ -447,8 +441,6 @@ For information about the governance of the Node.js project, see
447
441
  **Robert Nagy** <<ronagy@icloud.com>>
448
442
  * [ruyadorno](https://github.com/ruyadorno) -
449
443
  **Ruy Adorno** <<ruyadorno@google.com>> (he/him)
450
- * [rvagg](https://github.com/rvagg) -
451
- **Rod Vagg** <<rod@vagg.org>>
452
444
  * [ryzokuken](https://github.com/ryzokuken) -
453
445
  **Ujjwal Sharma** <<ryzokuken@disroot.org>> (he/him)
454
446
  * [santigimeno](https://github.com/santigimeno) -
@@ -487,6 +479,8 @@ For information about the governance of the Node.js project, see
487
479
  **Yash Ladha** <<yash@yashladha.in>> (he/him)
488
480
  * [ZYSzys](https://github.com/ZYSzys) -
489
481
  **Yongsheng Zhang** <<zyszys98@gmail.com>> (he/him)
482
+ * [zcbenz](https://github.com/zcbenz) -
483
+ **Cheng Zhao** <zcbenz@gmail.com> (he/him)
490
484
 
491
485
  <details>
492
486
 
@@ -527,6 +521,8 @@ For information about the governance of the Node.js project, see
527
521
  **David Cai** <<davidcai1993@yahoo.com>> (he/him)
528
522
  * [davisjam](https://github.com/davisjam) -
529
523
  **Jamie Davis** <<davisjam@vt.edu>> (he/him)
524
+ * [devnexen](https://github.com/devnexen) -
525
+ **David Carlier** <<devnexen@gmail.com>>
530
526
  * [digitalinfinity](https://github.com/digitalinfinity) -
531
527
  **Hitesh Kanwathirtha** <<digitalinfinity@gmail.com>> (he/him)
532
528
  * [dmabupt](https://github.com/dmabupt) -
@@ -569,6 +565,8 @@ For information about the governance of the Node.js project, see
569
565
  **Isaac Z. Schlueter** <<i@izs.me>>
570
566
  * [italoacasas](https://github.com/italoacasas) -
571
567
  **Italo A. Casas** <<me@italoacasas.com>> (he/him)
568
+ * [JacksonTian](https://github.com/JacksonTian) -
569
+ **Jackson Tian** <<shyvo1987@gmail.com>>
572
570
  * [jasongin](https://github.com/jasongin) -
573
571
  **Jason Ginchereau** <<jasongin@microsoft.com>>
574
572
  * [jbergstroem](https://github.com/jbergstroem) -
@@ -607,6 +605,8 @@ For information about the governance of the Node.js project, see
607
605
  **Nicu Micleușanu** <<micnic90@gmail.com>> (he/him)
608
606
  * [mikeal](https://github.com/mikeal) -
609
607
  **Mikeal Rogers** <<mikeal.rogers@gmail.com>>
608
+ * [miladfarca](https://github.com/miladfarca) -
609
+ **Milad Fa** <<mfarazma@redhat.com>> (he/him)
610
610
  * [misterdjules](https://github.com/misterdjules) -
611
611
  **Julien Gilli** <<jgilli@netflix.com>>
612
612
  * [mmarchini](https://github.com/mmarchini) -
@@ -625,6 +625,8 @@ For information about the governance of the Node.js project, see
625
625
  **Alexis Campailla** <<orangemocha@nodejs.org>>
626
626
  * [othiym23](https://github.com/othiym23) -
627
627
  **Forrest L Norvell** <<ogd@aoaioxxysz.net>> (they/them/themself)
628
+ * [oyyd](https://github.com/oyyd) -
629
+ **Ouyang Yadong** <<oyydoibh@gmail.com>> (he/him)
628
630
  * [petkaantonov](https://github.com/petkaantonov) -
629
631
  **Petka Antonov** <<petka_antonov@hotmail.com>>
630
632
  * [phillipj](https://github.com/phillipj) -
@@ -641,6 +643,8 @@ For information about the governance of the Node.js project, see
641
643
  **Peter Marshall** <<petermarshall@chromium.org>> (he/him)
642
644
  * [puzpuzpuz](https://github.com/puzpuzpuz) -
643
645
  **Andrey Pechkurov** <<apechkurov@gmail.com>> (he/him)
646
+ * [RaisinTen](https://github.com/RaisinTen) -
647
+ **Darshan Sen** <<raisinten@gmail.com>> (he/him)
644
648
  * [refack](https://github.com/refack) -
645
649
  **Refael Ackermann (רפאל פלחי)** <<refack@gmail.com>> (he/him/הוא/אתה)
646
650
  * [rexagod](https://github.com/rexagod) -
@@ -659,6 +663,8 @@ For information about the governance of the Node.js project, see
659
663
  **Ingvar Stepanyan** <<me@rreverser.com>>
660
664
  * [rubys](https://github.com/rubys) -
661
665
  **Sam Ruby** <<rubys@intertwingly.net>>
666
+ * [rvagg](https://github.com/rvagg) -
667
+ **Rod Vagg** <<rod@vagg.org>>
662
668
  * [saghul](https://github.com/saghul) -
663
669
  **Saúl Ibarra Corretgé** <<s@saghul.net>>
664
670
  * [sam-github](https://github.com/sam-github) -
@@ -737,8 +743,6 @@ maintaining the Node.js project.
737
743
  **Preveen Padmanabhan** <<wide4head@gmail.com>> (he/him)
738
744
  * [PoojaDurgad](https://github.com/PoojaDurgad) -
739
745
  **Pooja Durgad** <<Pooja.D.P@ibm.com>>
740
- * [RaisinTen](https://github.com/RaisinTen) -
741
- **Darshan Sen** <<raisinten@gmail.com>>
742
746
  * [VoltrexKeyva](https://github.com/VoltrexKeyva) -
743
747
  **Mohammed Keyvanzadeh** <<mohammadkeyvanzade94@gmail.com>> (he/him)
744
748
 
package/bin/node CHANGED
Binary file
@@ -36,7 +36,7 @@
36
36
 
37
37
  # Reset this number to 0 on major V8 upgrades.
38
38
  # Increment by one for each non-official patch applied to deps/v8.
39
- 'v8_embedder_string': '-node.17',
39
+ 'v8_embedder_string': '-node.19',
40
40
 
41
41
  ##### V8 defaults for Node.js #####
42
42
 
@@ -12,12 +12,12 @@
12
12
  'force_dynamic_crt': 0,
13
13
  'gas_version': '2.35',
14
14
  'host_arch': 's390x',
15
- 'icu_data_in': '../../deps/icu-tmp/icudt73l.dat',
15
+ 'icu_data_in': '../../deps/icu-tmp/icudt74l.dat',
16
16
  'icu_endianness': 'b',
17
17
  'icu_gyp_path': 'tools/icu/icu-generic.gyp',
18
18
  'icu_path': 'deps/icu-small',
19
19
  'icu_small': 'false',
20
- 'icu_ver_major': '73',
20
+ 'icu_ver_major': '74',
21
21
  'is_debug': 0,
22
22
  'libdir': 'lib',
23
23
  'llvm_version': '0.0',
@@ -323,6 +323,7 @@
323
323
  'lib/readline.js',
324
324
  'lib/readline/promises.js',
325
325
  'lib/repl.js',
326
+ 'lib/sea.js',
326
327
  'lib/stream.js',
327
328
  'lib/stream/consumers.js',
328
329
  'lib/stream/promises.js',
@@ -375,6 +376,7 @@
375
376
  'shlib_suffix': 'so.115',
376
377
  'single_executable_application': 'true',
377
378
  'target_arch': 's390x',
379
+ 'use_prefix_to_find_headers': 'false',
378
380
  'v8_enable_31bit_smis_on_64bit_arch': 0,
379
381
  'v8_enable_extensible_ro_snapshot': 0,
380
382
  'v8_enable_gdbjit': 0,
@@ -49,8 +49,8 @@
49
49
 
50
50
  EXTERN_C_START
51
51
 
52
- NAPI_EXTERN napi_status NAPI_CDECL
53
- napi_get_last_error_info(napi_env env, const napi_extended_error_info** result);
52
+ NAPI_EXTERN napi_status NAPI_CDECL napi_get_last_error_info(
53
+ node_api_nogc_env env, const napi_extended_error_info** result);
54
54
 
55
55
  // Getters for defined singletons
56
56
  NAPI_EXTERN napi_status NAPI_CDECL napi_get_undefined(napi_env env,
@@ -93,11 +93,12 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_create_string_utf16(napi_env env,
93
93
  size_t length,
94
94
  napi_value* result);
95
95
  #ifdef NAPI_EXPERIMENTAL
96
+ #define NODE_API_EXPERIMENTAL_HAS_EXTERNAL_STRINGS
96
97
  NAPI_EXTERN napi_status NAPI_CDECL
97
98
  node_api_create_external_string_latin1(napi_env env,
98
99
  char* str,
99
100
  size_t length,
100
- napi_finalize finalize_callback,
101
+ node_api_nogc_finalize finalize_callback,
101
102
  void* finalize_hint,
102
103
  napi_value* result,
103
104
  bool* copied);
@@ -105,11 +106,18 @@ NAPI_EXTERN napi_status NAPI_CDECL
105
106
  node_api_create_external_string_utf16(napi_env env,
106
107
  char16_t* str,
107
108
  size_t length,
108
- napi_finalize finalize_callback,
109
+ node_api_nogc_finalize finalize_callback,
109
110
  void* finalize_hint,
110
111
  napi_value* result,
111
112
  bool* copied);
112
113
  #endif // NAPI_EXPERIMENTAL
114
+
115
+ #ifdef NAPI_EXPERIMENTAL
116
+ #define NODE_API_EXPERIMENTAL_HAS_PROPERTY_KEYS
117
+ NAPI_EXTERN napi_status NAPI_CDECL node_api_create_property_key_utf16(
118
+ napi_env env, const char16_t* str, size_t length, napi_value* result);
119
+ #endif // NAPI_EXPERIMENTAL
120
+
113
121
  NAPI_EXTERN napi_status NAPI_CDECL napi_create_symbol(napi_env env,
114
122
  napi_value description,
115
123
  napi_value* result);
@@ -289,7 +297,7 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_instanceof(napi_env env,
289
297
 
290
298
  // Gets all callback info in a single call. (Ugly, but faster.)
291
299
  NAPI_EXTERN napi_status NAPI_CDECL napi_get_cb_info(
292
- napi_env env, // [in] NAPI environment handle
300
+ napi_env env, // [in] Node-API environment handle
293
301
  napi_callback_info cbinfo, // [in] Opaque callback-info handle
294
302
  size_t* argc, // [in-out] Specifies the size of the provided argv array
295
303
  // and receives the actual count of args.
@@ -313,7 +321,7 @@ napi_define_class(napi_env env,
313
321
  NAPI_EXTERN napi_status NAPI_CDECL napi_wrap(napi_env env,
314
322
  napi_value js_object,
315
323
  void* native_object,
316
- napi_finalize finalize_cb,
324
+ node_api_nogc_finalize finalize_cb,
317
325
  void* finalize_hint,
318
326
  napi_ref* result);
319
327
  NAPI_EXTERN napi_status NAPI_CDECL napi_unwrap(napi_env env,
@@ -325,7 +333,7 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_remove_wrap(napi_env env,
325
333
  NAPI_EXTERN napi_status NAPI_CDECL
326
334
  napi_create_external(napi_env env,
327
335
  void* data,
328
- napi_finalize finalize_cb,
336
+ node_api_nogc_finalize finalize_cb,
329
337
  void* finalize_hint,
330
338
  napi_value* result);
331
339
  NAPI_EXTERN napi_status NAPI_CDECL napi_get_value_external(napi_env env,
@@ -424,7 +432,7 @@ NAPI_EXTERN napi_status NAPI_CDECL
424
432
  napi_create_external_arraybuffer(napi_env env,
425
433
  void* external_data,
426
434
  size_t byte_length,
427
- napi_finalize finalize_cb,
435
+ node_api_nogc_finalize finalize_cb,
428
436
  void* finalize_hint,
429
437
  napi_value* result);
430
438
  #endif // NODE_API_NO_EXTERNAL_BUFFERS_ALLOWED
@@ -466,7 +474,7 @@ napi_get_dataview_info(napi_env env,
466
474
  size_t* byte_offset);
467
475
 
468
476
  // version management
469
- NAPI_EXTERN napi_status NAPI_CDECL napi_get_version(napi_env env,
477
+ NAPI_EXTERN napi_status NAPI_CDECL napi_get_version(node_api_nogc_env env,
470
478
  uint32_t* result);
471
479
 
472
480
  // Promises
@@ -490,7 +498,7 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_run_script(napi_env env,
490
498
 
491
499
  // Memory management
492
500
  NAPI_EXTERN napi_status NAPI_CDECL napi_adjust_external_memory(
493
- napi_env env, int64_t change_in_bytes, int64_t* adjusted_value);
501
+ node_api_nogc_env env, int64_t change_in_bytes, int64_t* adjusted_value);
494
502
 
495
503
  #if NAPI_VERSION >= 5
496
504
 
@@ -508,19 +516,21 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_get_date_value(napi_env env,
508
516
  double* result);
509
517
 
510
518
  // Add finalizer for pointer
511
- NAPI_EXTERN napi_status NAPI_CDECL napi_add_finalizer(napi_env env,
512
- napi_value js_object,
513
- void* finalize_data,
514
- napi_finalize finalize_cb,
515
- void* finalize_hint,
516
- napi_ref* result);
519
+ NAPI_EXTERN napi_status NAPI_CDECL
520
+ napi_add_finalizer(napi_env env,
521
+ napi_value js_object,
522
+ void* finalize_data,
523
+ node_api_nogc_finalize finalize_cb,
524
+ void* finalize_hint,
525
+ napi_ref* result);
517
526
 
518
527
  #endif // NAPI_VERSION >= 5
519
528
 
520
529
  #ifdef NAPI_EXPERIMENTAL
530
+ #define NODE_API_EXPERIMENTAL_HAS_POST_FINALIZER
521
531
 
522
532
  NAPI_EXTERN napi_status NAPI_CDECL
523
- node_api_post_finalizer(napi_env env,
533
+ node_api_post_finalizer(node_api_nogc_env env,
524
534
  napi_finalize finalize_cb,
525
535
  void* finalize_data,
526
536
  void* finalize_hint);
@@ -564,10 +574,13 @@ napi_get_all_property_names(napi_env env,
564
574
  napi_value* result);
565
575
 
566
576
  // Instance data
567
- NAPI_EXTERN napi_status NAPI_CDECL napi_set_instance_data(
568
- napi_env env, void* data, napi_finalize finalize_cb, void* finalize_hint);
577
+ NAPI_EXTERN napi_status NAPI_CDECL
578
+ napi_set_instance_data(node_api_nogc_env env,
579
+ void* data,
580
+ napi_finalize finalize_cb,
581
+ void* finalize_hint);
569
582
 
570
- NAPI_EXTERN napi_status NAPI_CDECL napi_get_instance_data(napi_env env,
583
+ NAPI_EXTERN napi_status NAPI_CDECL napi_get_instance_data(node_api_nogc_env env,
571
584
  void** data);
572
585
  #endif // NAPI_VERSION >= 6
573
586
 
@@ -22,6 +22,35 @@ typedef uint16_t char16_t;
22
22
  // JSVM API types are all opaque pointers for ABI stability
23
23
  // typedef undefined structs instead of void* for compile time type safety
24
24
  typedef struct napi_env__* napi_env;
25
+
26
+ // We need to mark APIs which can be called during garbage collection (GC),
27
+ // meaning that they do not affect the state of the JS engine, and can
28
+ // therefore be called synchronously from a finalizer that itself runs
29
+ // synchronously during GC. Such APIs can receive either a `napi_env` or a
30
+ // `node_api_nogc_env` as their first parameter, because we should be able to
31
+ // also call them during normal, non-garbage-collecting operations, whereas
32
+ // APIs that affect the state of the JS engine can only receive a `napi_env` as
33
+ // their first parameter, because we must not call them during GC. In lieu of
34
+ // inheritance, we use the properties of the const qualifier to accomplish
35
+ // this, because both a const and a non-const value can be passed to an API
36
+ // expecting a const value, but only a non-const value can be passed to an API
37
+ // expecting a non-const value.
38
+ //
39
+ // In conjunction with appropriate CFLAGS to warn us if we're passing a const
40
+ // (nogc) environment into an API that expects a non-const environment, and the
41
+ // definition of nogc finalizer function pointer types below, which receive a
42
+ // nogc environment as their first parameter, and can thus only call nogc APIs
43
+ // (unless the user explicitly casts the environment), we achieve the ability
44
+ // to ensure at compile time that we do not call APIs that affect the state of
45
+ // the JS engine from a synchronous (nogc) finalizer.
46
+ #if !defined(NAPI_EXPERIMENTAL) || \
47
+ (defined(NAPI_EXPERIMENTAL) && \
48
+ defined(NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT))
49
+ typedef struct napi_env__* node_api_nogc_env;
50
+ #else
51
+ typedef const struct napi_env__* node_api_nogc_env;
52
+ #endif
53
+
25
54
  typedef struct napi_value__* napi_value;
26
55
  typedef struct napi_ref__* napi_ref;
27
56
  typedef struct napi_handle_scope__* napi_handle_scope;
@@ -116,6 +145,16 @@ typedef void(NAPI_CDECL* napi_finalize)(napi_env env,
116
145
  void* finalize_data,
117
146
  void* finalize_hint);
118
147
 
148
+ #if !defined(NAPI_EXPERIMENTAL) || \
149
+ (defined(NAPI_EXPERIMENTAL) && \
150
+ defined(NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT))
151
+ typedef napi_finalize node_api_nogc_finalize;
152
+ #else
153
+ typedef void(NAPI_CDECL* node_api_nogc_finalize)(node_api_nogc_env env,
154
+ void* finalize_data,
155
+ void* finalize_hint);
156
+ #endif
157
+
119
158
  typedef struct {
120
159
  // One of utf8name or name should be NULL.
121
160
  const char* utf8name;
@@ -80,6 +80,7 @@
80
80
 
81
81
  #include <functional>
82
82
  #include <memory>
83
+ #include <optional>
83
84
  #include <ostream>
84
85
 
85
86
  // We cannot use __POSIX__ in this header because that's only defined when
@@ -659,6 +660,33 @@ enum Flags : uint64_t {
659
660
  };
660
661
  } // namespace EnvironmentFlags
661
662
 
663
+ enum class SnapshotFlags : uint32_t {
664
+ kDefault = 0,
665
+ // Whether code cache should be generated as part of the snapshot.
666
+ // Code cache reduces the time spent on compiling functions included
667
+ // in the snapshot at the expense of a bigger snapshot size and
668
+ // potentially breaking portability of the snapshot.
669
+ kWithoutCodeCache = 1 << 0,
670
+ };
671
+
672
+ struct SnapshotConfig {
673
+ SnapshotFlags flags = SnapshotFlags::kDefault;
674
+
675
+ // When builder_script_path is std::nullopt, the snapshot is generated as a
676
+ // built-in snapshot instead of a custom one, and it's expected that the
677
+ // built-in snapshot only contains states that reproduce in every run of the
678
+ // application. The event loop won't be run when generating a built-in
679
+ // snapshot, so asynchronous operations should be avoided.
680
+ //
681
+ // When builder_script_path is an std::string, it should match args[1]
682
+ // passed to CreateForSnapshotting(). The embedder is also expected to use
683
+ // LoadEnvironment() to run a script matching this path. In that case the
684
+ // snapshot is generated as a custom snapshot and the event loop is run, so
685
+ // the snapshot builder can execute asynchronous operations as long as they
686
+ // are run to completion when the snapshot is taken.
687
+ std::optional<std::string> builder_script_path;
688
+ };
689
+
662
690
  struct InspectorParentHandle {
663
691
  virtual ~InspectorParentHandle() = default;
664
692
  };
@@ -870,7 +898,8 @@ class NODE_EXTERN CommonEnvironmentSetup {
870
898
  MultiIsolatePlatform* platform,
871
899
  std::vector<std::string>* errors,
872
900
  const std::vector<std::string>& args = {},
873
- const std::vector<std::string>& exec_args = {});
901
+ const std::vector<std::string>& exec_args = {},
902
+ const SnapshotConfig& snapshot_config = {});
874
903
  EmbedderSnapshotData::Pointer CreateSnapshot();
875
904
 
876
905
  struct uv_loop_s* event_loop() const;
@@ -905,7 +934,8 @@ class NODE_EXTERN CommonEnvironmentSetup {
905
934
  std::vector<std::string>*,
906
935
  const EmbedderSnapshotData*,
907
936
  uint32_t flags,
908
- std::function<Environment*(const CommonEnvironmentSetup*)>);
937
+ std::function<Environment*(const CommonEnvironmentSetup*)>,
938
+ const SnapshotConfig* config = nullptr);
909
939
  };
910
940
 
911
941
  // Implementation for CommonEnvironmentSetup::Create