node-linux-s390x 20.9.0 → 20.10.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 (186) hide show
  1. package/CHANGELOG.md +326 -1
  2. package/LICENSE +21 -10
  3. package/README.md +7 -5
  4. package/bin/node +0 -0
  5. package/include/node/common.gypi +2 -2
  6. package/include/node/config.gypi +0 -1
  7. package/include/node/js_native_api.h +11 -1
  8. package/include/node/node.h +2 -0
  9. package/include/node/node_api.h +8 -7
  10. package/include/node/node_version.h +1 -1
  11. package/include/node/openssl/archs/BSD-x86/asm/crypto/buildinf.h +1 -1
  12. package/include/node/openssl/archs/BSD-x86/asm/include/openssl/opensslv.h +5 -5
  13. package/include/node/openssl/archs/BSD-x86/asm/include/openssl/pkcs7.h +3 -3
  14. package/include/node/openssl/archs/BSD-x86/asm_avx2/crypto/buildinf.h +1 -1
  15. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/opensslv.h +5 -5
  16. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/pkcs7.h +3 -3
  17. package/include/node/openssl/archs/BSD-x86/no-asm/crypto/buildinf.h +1 -1
  18. package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/opensslv.h +5 -5
  19. package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/pkcs7.h +3 -3
  20. package/include/node/openssl/archs/BSD-x86_64/asm/crypto/buildinf.h +1 -1
  21. package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/opensslv.h +5 -5
  22. package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/pkcs7.h +3 -3
  23. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/buildinf.h +1 -1
  24. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/opensslv.h +5 -5
  25. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/pkcs7.h +3 -3
  26. package/include/node/openssl/archs/BSD-x86_64/no-asm/crypto/buildinf.h +1 -1
  27. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/opensslv.h +5 -5
  28. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/pkcs7.h +3 -3
  29. package/include/node/openssl/archs/VC-WIN32/asm/crypto/buildinf.h +1 -1
  30. package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/opensslv.h +5 -5
  31. package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/pkcs7.h +3 -3
  32. package/include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/buildinf.h +1 -1
  33. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/opensslv.h +5 -5
  34. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/pkcs7.h +3 -3
  35. package/include/node/openssl/archs/VC-WIN32/no-asm/crypto/buildinf.h +1 -1
  36. package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/opensslv.h +5 -5
  37. package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/pkcs7.h +3 -3
  38. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/buildinf.h +1 -1
  39. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/opensslv.h +5 -5
  40. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/pkcs7.h +3 -3
  41. package/include/node/openssl/archs/VC-WIN64A/asm/crypto/buildinf.h +1 -1
  42. package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/opensslv.h +5 -5
  43. package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/pkcs7.h +3 -3
  44. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/buildinf.h +1 -1
  45. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/opensslv.h +5 -5
  46. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/pkcs7.h +3 -3
  47. package/include/node/openssl/archs/VC-WIN64A/no-asm/crypto/buildinf.h +1 -1
  48. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/opensslv.h +5 -5
  49. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/pkcs7.h +3 -3
  50. package/include/node/openssl/archs/aix64-gcc-as/asm/crypto/buildinf.h +1 -1
  51. package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/opensslv.h +5 -5
  52. package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/pkcs7.h +3 -3
  53. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/crypto/buildinf.h +1 -1
  54. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/opensslv.h +5 -5
  55. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/pkcs7.h +3 -3
  56. package/include/node/openssl/archs/aix64-gcc-as/no-asm/crypto/buildinf.h +1 -1
  57. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/opensslv.h +5 -5
  58. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/pkcs7.h +3 -3
  59. package/include/node/openssl/archs/darwin-i386-cc/asm/crypto/buildinf.h +1 -1
  60. package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/opensslv.h +5 -5
  61. package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/pkcs7.h +3 -3
  62. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/buildinf.h +1 -1
  63. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  64. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/pkcs7.h +3 -3
  65. package/include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/buildinf.h +1 -1
  66. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/opensslv.h +5 -5
  67. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/pkcs7.h +3 -3
  68. package/include/node/openssl/archs/darwin64-arm64-cc/asm/crypto/buildinf.h +1 -1
  69. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/opensslv.h +5 -5
  70. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/pkcs7.h +3 -3
  71. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/crypto/buildinf.h +1 -1
  72. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  73. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/pkcs7.h +3 -3
  74. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/crypto/buildinf.h +1 -1
  75. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/opensslv.h +5 -5
  76. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/pkcs7.h +3 -3
  77. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h +1 -1
  78. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/opensslv.h +5 -5
  79. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/pkcs7.h +3 -3
  80. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/buildinf.h +1 -1
  81. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  82. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/pkcs7.h +3 -3
  83. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h +1 -1
  84. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslv.h +5 -5
  85. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/pkcs7.h +3 -3
  86. package/include/node/openssl/archs/linux-aarch64/asm/crypto/buildinf.h +1 -1
  87. package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/opensslv.h +5 -5
  88. package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/pkcs7.h +3 -3
  89. package/include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/buildinf.h +1 -1
  90. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/opensslv.h +5 -5
  91. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/pkcs7.h +3 -3
  92. package/include/node/openssl/archs/linux-aarch64/no-asm/crypto/buildinf.h +1 -1
  93. package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/opensslv.h +5 -5
  94. package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/pkcs7.h +3 -3
  95. package/include/node/openssl/archs/linux-armv4/asm/crypto/buildinf.h +1 -1
  96. package/include/node/openssl/archs/linux-armv4/asm/include/openssl/opensslv.h +5 -5
  97. package/include/node/openssl/archs/linux-armv4/asm/include/openssl/pkcs7.h +3 -3
  98. package/include/node/openssl/archs/linux-armv4/asm_avx2/crypto/buildinf.h +1 -1
  99. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/opensslv.h +5 -5
  100. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/pkcs7.h +3 -3
  101. package/include/node/openssl/archs/linux-armv4/no-asm/crypto/buildinf.h +1 -1
  102. package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/opensslv.h +5 -5
  103. package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/pkcs7.h +3 -3
  104. package/include/node/openssl/archs/linux-elf/asm/crypto/buildinf.h +1 -1
  105. package/include/node/openssl/archs/linux-elf/asm/include/openssl/opensslv.h +5 -5
  106. package/include/node/openssl/archs/linux-elf/asm/include/openssl/pkcs7.h +3 -3
  107. package/include/node/openssl/archs/linux-elf/asm_avx2/crypto/buildinf.h +1 -1
  108. package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/opensslv.h +5 -5
  109. package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/pkcs7.h +3 -3
  110. package/include/node/openssl/archs/linux-elf/no-asm/crypto/buildinf.h +1 -1
  111. package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/opensslv.h +5 -5
  112. package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/pkcs7.h +3 -3
  113. package/include/node/openssl/archs/linux-ppc64le/asm/crypto/buildinf.h +1 -1
  114. package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/opensslv.h +5 -5
  115. package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/pkcs7.h +3 -3
  116. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/buildinf.h +1 -1
  117. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/opensslv.h +5 -5
  118. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/pkcs7.h +3 -3
  119. package/include/node/openssl/archs/linux-ppc64le/no-asm/crypto/buildinf.h +1 -1
  120. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/opensslv.h +5 -5
  121. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/pkcs7.h +3 -3
  122. package/include/node/openssl/archs/linux-x86_64/asm/crypto/buildinf.h +1 -1
  123. package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/opensslv.h +5 -5
  124. package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/pkcs7.h +3 -3
  125. package/include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/buildinf.h +1 -1
  126. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/opensslv.h +5 -5
  127. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/pkcs7.h +3 -3
  128. package/include/node/openssl/archs/linux-x86_64/no-asm/crypto/buildinf.h +1 -1
  129. package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/opensslv.h +5 -5
  130. package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/pkcs7.h +3 -3
  131. package/include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h +1 -1
  132. package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/opensslv.h +5 -5
  133. package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/pkcs7.h +3 -3
  134. package/include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/buildinf.h +1 -1
  135. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/opensslv.h +5 -5
  136. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/pkcs7.h +3 -3
  137. package/include/node/openssl/archs/linux32-s390x/no-asm/crypto/buildinf.h +1 -1
  138. package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/opensslv.h +5 -5
  139. package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/pkcs7.h +3 -3
  140. package/include/node/openssl/archs/linux64-loongarch64/no-asm/crypto/buildinf.h +1 -1
  141. package/include/node/openssl/archs/linux64-loongarch64/no-asm/include/openssl/opensslv.h +5 -5
  142. package/include/node/openssl/archs/linux64-loongarch64/no-asm/include/openssl/pkcs7.h +3 -3
  143. package/include/node/openssl/archs/linux64-mips64/asm/crypto/buildinf.h +1 -1
  144. package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/opensslv.h +5 -5
  145. package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/pkcs7.h +3 -3
  146. package/include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/buildinf.h +1 -1
  147. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/opensslv.h +5 -5
  148. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/pkcs7.h +3 -3
  149. package/include/node/openssl/archs/linux64-mips64/no-asm/crypto/buildinf.h +1 -1
  150. package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/opensslv.h +5 -5
  151. package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/pkcs7.h +3 -3
  152. package/include/node/openssl/archs/linux64-riscv64/no-asm/crypto/buildinf.h +1 -1
  153. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/opensslv.h +5 -5
  154. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/pkcs7.h +3 -3
  155. package/include/node/openssl/archs/linux64-s390x/asm/crypto/buildinf.h +1 -1
  156. package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/opensslv.h +5 -5
  157. package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/pkcs7.h +3 -3
  158. package/include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/buildinf.h +1 -1
  159. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/opensslv.h +5 -5
  160. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/pkcs7.h +3 -3
  161. package/include/node/openssl/archs/linux64-s390x/no-asm/crypto/buildinf.h +1 -1
  162. package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/opensslv.h +5 -5
  163. package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/pkcs7.h +3 -3
  164. package/include/node/openssl/archs/solaris-x86-gcc/asm/crypto/buildinf.h +1 -1
  165. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/opensslv.h +5 -5
  166. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/pkcs7.h +3 -3
  167. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/buildinf.h +1 -1
  168. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/opensslv.h +5 -5
  169. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/pkcs7.h +3 -3
  170. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h +1 -1
  171. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/opensslv.h +5 -5
  172. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/pkcs7.h +3 -3
  173. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h +1 -1
  174. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslv.h +5 -5
  175. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/pkcs7.h +3 -3
  176. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/buildinf.h +1 -1
  177. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/opensslv.h +5 -5
  178. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/pkcs7.h +3 -3
  179. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h +1 -1
  180. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslv.h +5 -5
  181. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/pkcs7.h +3 -3
  182. package/include/node/openssl/cmserr.h +2 -1
  183. package/include/node/openssl/evp.h +3 -1
  184. package/include/node/v8-script.h +3 -4
  185. package/package.json +1 -1
  186. package/share/man/man1/node.1 +12 -0
package/CHANGELOG.md CHANGED
@@ -9,6 +9,7 @@
9
9
  </tr>
10
10
  <tr>
11
11
  <td>
12
+ <a href="#20.10.0">20.10.0</a><br/>
12
13
  <a href="#20.9.0">20.9.0</a><br/>
13
14
  </td>
14
15
  <td>
@@ -51,6 +52,330 @@
51
52
  * [io.js](CHANGELOG_IOJS.md)
52
53
  * [Archive](CHANGELOG_ARCHIVE.md)
53
54
 
55
+ <a id="20.10.0"></a>
56
+
57
+ ## 2023-11-22, Version 20.10.0 'Iron' (LTS), @targos
58
+
59
+ ### Notable Changes
60
+
61
+ #### `--experimental-default-type` flag to flip module defaults
62
+
63
+ The new flag `--experimental-default-type` can be used to flip the default
64
+ module system used by Node.js. Input that is already explicitly defined as ES
65
+ modules or CommonJS, such as by a `package.json` `"type"` field or `.mjs`/`.cjs`
66
+ file extension or the `--input-type` flag, is unaffected. What is currently
67
+ implicitly CommonJS would instead be interpreted as ES modules under
68
+ `--experimental-default-type=module`:
69
+
70
+ * String input provided via `--eval` or STDIN, if `--input-type` is unspecified.
71
+
72
+ * Files ending in `.js` or with no extension, if there is no `package.json` file
73
+ present in the same folder or any parent folder.
74
+
75
+ * Files ending in `.js` or with no extension, if the nearest parent
76
+ `package.json` field lacks a `type` field; unless the folder is inside a
77
+ `node_modules` folder.
78
+
79
+ In addition, extensionless files are interpreted as Wasm if
80
+ `--experimental-wasm-modules` is passed and the file contains the "magic bytes"
81
+ Wasm header.
82
+
83
+ Contributed by Geoffrey Booth in [#49869](https://github.com/nodejs/node/pull/49869).
84
+
85
+ #### Detect ESM syntax in ambiguous JavaScript
86
+
87
+ The new flag `--experimental-detect-module` can be used to automatically run ES
88
+ modules when their syntax can be detected. For “ambiguous” files, which are
89
+ `.js` or extensionless files with no `package.json` with a `type` field, Node.js
90
+ will parse the file to detect ES module syntax; if found, it will run the file
91
+ as an ES module, otherwise it will run the file as a CommonJS module. The same
92
+ applies to string input via `--eval` or `STDIN`.
93
+
94
+ We hope to make detection enabled by default in a future version of Node.js.
95
+ Detection increases startup time, so we encourage everyone—especially package
96
+ authors—to add a `type` field to `package.json`, even for the default
97
+ `"type": "commonjs"`. The presence of a `type` field, or explicit extensions
98
+ such as `.mjs` or `.cjs`, will opt out of detection.
99
+
100
+ Contributed by Geoffrey Booth in [#50096](https://github.com/nodejs/node/pull/50096).
101
+
102
+ #### New `flush` option in file system functions
103
+
104
+ When writing to files, it is possible that data is not immediately flushed to
105
+ permanent storage. This allows subsequent read operations to see stale data.
106
+ This PR adds a `'flush'` option to the `fs.writeFile` family of functions which
107
+ forces the data to be flushed at the end of a successful write operation.
108
+
109
+ Contributed by Colin Ihrig in [#50009](https://github.com/nodejs/node/pull/50009) and [#50095](https://github.com/nodejs/node/pull/50095).
110
+
111
+ #### Experimental WebSocket client
112
+
113
+ Adds a `--experimental-websocket` flag that adds a [`WebSocket`](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket)
114
+ global, as [standardized by WHATWG](https://websockets.spec.whatwg.org/#the-websocket-interface).
115
+
116
+ Contributed by Matthew Aitken in [#49830](https://github.com/nodejs/node/pull/49830).
117
+
118
+ #### vm: fix V8 compilation cache support for vm.Script
119
+
120
+ Previously repeated compilation of the same source code using `vm.Script`
121
+ stopped hitting the V8 compilation cache after v16.x when support for
122
+ `importModuleDynamically` was added to `vm.Script`, resulting in a performance
123
+ regression that blocked users (in particular Jest users) from upgrading from
124
+ v16.x.
125
+
126
+ The recent fixes allow the compilation cache to be hit again
127
+ for `vm.Script` when `--experimental-vm-modules` is not used even in the
128
+ presence of the `importModuleDynamically` option, so that users affected by the
129
+ performance regression can now upgrade. Ongoing work is also being done to
130
+ enable compilation cache support for `vm.CompileFunction`.
131
+
132
+ Contributed by Joyee Cheung in [#49950](https://github.com/nodejs/node/pull/49950)
133
+ and [#50137](https://github.com/nodejs/node/pull/50137).
134
+
135
+ #### Other notable changes
136
+
137
+ * \[[`21453ae555`](https://github.com/nodejs/node/commit/21453ae555)] - **(SEMVER-MINOR)** **deps**: update uvwasi to 0.0.19 (Node.js GitHub Bot) [#49908](https://github.com/nodejs/node/pull/49908)
138
+ * \[[`ee65e44c31`](https://github.com/nodejs/node/commit/ee65e44c31)] - **esm**: use import attributes instead of import assertions (Antoine du Hamel) [#50140](https://github.com/nodejs/node/pull/50140)
139
+ * \[[`ffdc357167`](https://github.com/nodejs/node/commit/ffdc357167)] - **(SEMVER-MINOR)** **stream**: allow passing stream class to `stream.compose` (Alex Yang) [#50187](https://github.com/nodejs/node/pull/50187)
140
+ * \[[`4861ad6431`](https://github.com/nodejs/node/commit/4861ad6431)] - **stream**: improve performance of readable stream reads (Raz Luvaton) [#50173](https://github.com/nodejs/node/pull/50173)
141
+ * \[[`4b27087b30`](https://github.com/nodejs/node/commit/4b27087b30)] - **stream**: optimize Writable (Robert Nagy) [#50012](https://github.com/nodejs/node/pull/50012)
142
+ * \[[`709c6c0cab`](https://github.com/nodejs/node/commit/709c6c0cab)] - **(SEMVER-MINOR)** **test\_runner, cli**: add --test-concurrency flag (Colin Ihrig) [#49996](https://github.com/nodejs/node/pull/49996)
143
+ * \[[`57efd5292c`](https://github.com/nodejs/node/commit/57efd5292c)] - **(SEMVER-MINOR)** **vm**: use import attributes instead of import assertions (Antoine du Hamel) [#50141](https://github.com/nodejs/node/pull/50141)
144
+
145
+ ### Commits
146
+
147
+ * \[[`73757a5f42`](https://github.com/nodejs/node/commit/73757a5f42)] - **benchmark**: fix race condition on fs benchs (Vinicius Lourenço) [#50035](https://github.com/nodejs/node/pull/50035)
148
+ * \[[`23269717bb`](https://github.com/nodejs/node/commit/23269717bb)] - **benchmark**: add warmup to accessSync bench (Rafael Gonzaga) [#50073](https://github.com/nodejs/node/pull/50073)
149
+ * \[[`88611d199a`](https://github.com/nodejs/node/commit/88611d199a)] - **benchmark**: improved config for blob,file benchmark (Vinícius Lourenço) [#49730](https://github.com/nodejs/node/pull/49730)
150
+ * \[[`b70757476c`](https://github.com/nodejs/node/commit/b70757476c)] - **benchmark**: added new benchmarks for blob (Vinícius Lourenço) [#49730](https://github.com/nodejs/node/pull/49730)
151
+ * \[[`458d9a82e3`](https://github.com/nodejs/node/commit/458d9a82e3)] - **buffer**: remove unnecessary assignment in fromString (Tobias Nießen) [#50199](https://github.com/nodejs/node/pull/50199)
152
+ * \[[`878c0b332e`](https://github.com/nodejs/node/commit/878c0b332e)] - **build**: fix IBM i build with Python 3.9 (Richard Lau) [#48056](https://github.com/nodejs/node/pull/48056)
153
+ * \[[`773320e1de`](https://github.com/nodejs/node/commit/773320e1de)] - **crypto**: ensure valid point on elliptic curve in SubtleCrypto.importKey (Filip Skokan) [#50234](https://github.com/nodejs/node/pull/50234)
154
+ * \[[`edb0ffd7d4`](https://github.com/nodejs/node/commit/edb0ffd7d4)] - **crypto**: use X509\_ALGOR accessors instead of reaching into X509\_ALGOR (David Benjamin) [#50057](https://github.com/nodejs/node/pull/50057)
155
+ * \[[`3f98c06dbb`](https://github.com/nodejs/node/commit/3f98c06dbb)] - **crypto**: account for disabled SharedArrayBuffer (Shelley Vohr) [#50034](https://github.com/nodejs/node/pull/50034)
156
+ * \[[`55485ff1cc`](https://github.com/nodejs/node/commit/55485ff1cc)] - **crypto**: return clear errors when loading invalid PFX data (Tim Perry) [#49566](https://github.com/nodejs/node/pull/49566)
157
+ * \[[`68ec1e5eeb`](https://github.com/nodejs/node/commit/68ec1e5eeb)] - **deps**: upgrade npm to 10.2.3 (npm team) [#50531](https://github.com/nodejs/node/pull/50531)
158
+ * \[[`b00c11ad7c`](https://github.com/nodejs/node/commit/b00c11ad7c)] - **deps**: V8: cherry-pick d90d4533b053 (Michaël Zasso) [#50077](https://github.com/nodejs/node/pull/50077)
159
+ * \[[`e63aef91b4`](https://github.com/nodejs/node/commit/e63aef91b4)] - **deps**: V8: cherry-pick f7d000a7ae7b (Luke Albao) [#50077](https://github.com/nodejs/node/pull/50077)
160
+ * \[[`4b243b553a`](https://github.com/nodejs/node/commit/4b243b553a)] - **deps**: V8: cherry-pick 9721082687c9 (Shi Pujin) [#50077](https://github.com/nodejs/node/pull/50077)
161
+ * \[[`9d3cdcbebf`](https://github.com/nodejs/node/commit/9d3cdcbebf)] - **deps**: V8: cherry-pick 840650f2ff4e (Michaël Zasso) [#50077](https://github.com/nodejs/node/pull/50077)
162
+ * \[[`0c40b513fd`](https://github.com/nodejs/node/commit/0c40b513fd)] - **deps**: V8: cherry-pick a1efa5343880 (Michaël Zasso) [#50077](https://github.com/nodejs/node/pull/50077)
163
+ * \[[`68cddd79f7`](https://github.com/nodejs/node/commit/68cddd79f7)] - **deps**: update archs files for openssl-3.0.12+quic1 (Node.js GitHub Bot) [#50411](https://github.com/nodejs/node/pull/50411)
164
+ * \[[`3308189180`](https://github.com/nodejs/node/commit/3308189180)] - **deps**: upgrade openssl sources to quictls/openssl-3.0.12+quic1 (Node.js GitHub Bot) [#50411](https://github.com/nodejs/node/pull/50411)
165
+ * \[[`b61707e535`](https://github.com/nodejs/node/commit/b61707e535)] - **deps**: update ada to 2.7.2 (Node.js GitHub Bot) [#50338](https://github.com/nodejs/node/pull/50338)
166
+ * \[[`1aecf0c17b`](https://github.com/nodejs/node/commit/1aecf0c17b)] - **deps**: update corepack to 0.22.0 (Node.js GitHub Bot) [#50325](https://github.com/nodejs/node/pull/50325)
167
+ * \[[`f5924f174c`](https://github.com/nodejs/node/commit/f5924f174c)] - **deps**: update c-ares to 1.20.1 (Node.js GitHub Bot) [#50082](https://github.com/nodejs/node/pull/50082)
168
+ * \[[`b705e19a95`](https://github.com/nodejs/node/commit/b705e19a95)] - **deps**: update c-ares to 1.20.0 (Node.js GitHub Bot) [#50082](https://github.com/nodejs/node/pull/50082)
169
+ * \[[`f72cbb7e02`](https://github.com/nodejs/node/commit/f72cbb7e02)] - **deps**: V8: cherry-pick 25902244ad1a (Joyee Cheung) [#50156](https://github.com/nodejs/node/pull/50156)
170
+ * \[[`6547bd2493`](https://github.com/nodejs/node/commit/6547bd2493)] - **deps**: V8: cherry-pick ea996ad04a68 (Antoine du Hamel) [#50183](https://github.com/nodejs/node/pull/50183)
171
+ * \[[`16fd730e95`](https://github.com/nodejs/node/commit/16fd730e95)] - **deps**: V8: cherry-pick a0fd3209dda8 (Antoine du Hamel) [#50183](https://github.com/nodejs/node/pull/50183)
172
+ * \[[`614c3620c3`](https://github.com/nodejs/node/commit/614c3620c3)] - **deps**: update corepack to 0.21.0 (Node.js GitHub Bot) [#50088](https://github.com/nodejs/node/pull/50088)
173
+ * \[[`545aa74ae2`](https://github.com/nodejs/node/commit/545aa74ae2)] - **deps**: update simdutf to 3.2.18 (Node.js GitHub Bot) [#50091](https://github.com/nodejs/node/pull/50091)
174
+ * \[[`9302806c0a`](https://github.com/nodejs/node/commit/9302806c0a)] - **deps**: update zlib to 1.2.13.1-motley-fef5869 (Node.js GitHub Bot) [#50085](https://github.com/nodejs/node/pull/50085)
175
+ * \[[`03bf5c5d9a`](https://github.com/nodejs/node/commit/03bf5c5d9a)] - **deps**: update googletest to 2dd1c13 (Node.js GitHub Bot) [#50081](https://github.com/nodejs/node/pull/50081)
176
+ * \[[`cd8e90690b`](https://github.com/nodejs/node/commit/cd8e90690b)] - **deps**: update googletest to e47544a (Node.js GitHub Bot) [#49982](https://github.com/nodejs/node/pull/49982)
177
+ * \[[`40672cfe53`](https://github.com/nodejs/node/commit/40672cfe53)] - **deps**: update ada to 2.6.10 (Node.js GitHub Bot) [#49984](https://github.com/nodejs/node/pull/49984)
178
+ * \[[`34c7eb0eb2`](https://github.com/nodejs/node/commit/34c7eb0eb2)] - **deps**: fix call to undeclared functions 'ntohl' and 'htons' (MatteoBax) [#49979](https://github.com/nodejs/node/pull/49979)
179
+ * \[[`03654b44b6`](https://github.com/nodejs/node/commit/03654b44b6)] - **deps**: update ada to 2.6.9 (Node.js GitHub Bot) [#49340](https://github.com/nodejs/node/pull/49340)
180
+ * \[[`4c740b1dd8`](https://github.com/nodejs/node/commit/4c740b1dd8)] - **deps**: update ada to 2.6.8 (Node.js GitHub Bot) [#49340](https://github.com/nodejs/node/pull/49340)
181
+ * \[[`759cf5a760`](https://github.com/nodejs/node/commit/759cf5a760)] - **deps**: update ada to 2.6.7 (Node.js GitHub Bot) [#49340](https://github.com/nodejs/node/pull/49340)
182
+ * \[[`31a4e9781a`](https://github.com/nodejs/node/commit/31a4e9781a)] - **deps**: update ada to 2.6.5 (Node.js GitHub Bot) [#49340](https://github.com/nodejs/node/pull/49340)
183
+ * \[[`2ca867f2ab`](https://github.com/nodejs/node/commit/2ca867f2ab)] - **deps**: update ada to 2.6.3 (Node.js GitHub Bot) [#49340](https://github.com/nodejs/node/pull/49340)
184
+ * \[[`21453ae555`](https://github.com/nodejs/node/commit/21453ae555)] - **(SEMVER-MINOR)** **deps**: update uvwasi to 0.0.19 (Node.js GitHub Bot) [#49908](https://github.com/nodejs/node/pull/49908)
185
+ * \[[`7ca1228be8`](https://github.com/nodejs/node/commit/7ca1228be8)] - **deps**: V8: cherry-pick 8ec2651fbdd8 (Abdirahim Musse) [#49862](https://github.com/nodejs/node/pull/49862)
186
+ * \[[`3cc41d253c`](https://github.com/nodejs/node/commit/3cc41d253c)] - **deps**: upgrade npm to 10.2.0 (npm team) [#50027](https://github.com/nodejs/node/pull/50027)
187
+ * \[[`61b4afb7dd`](https://github.com/nodejs/node/commit/61b4afb7dd)] - **deps**: update undici to 5.26.4 (Node.js GitHub Bot) [#50274](https://github.com/nodejs/node/pull/50274)
188
+ * \[[`ea28738336`](https://github.com/nodejs/node/commit/ea28738336)] - **doc**: add loong64 info into platform list (Shi Pujin) [#50086](https://github.com/nodejs/node/pull/50086)
189
+ * \[[`00c12b7a20`](https://github.com/nodejs/node/commit/00c12b7a20)] - **doc**: update release process LTS step (Richard Lau) [#50299](https://github.com/nodejs/node/pull/50299)
190
+ * \[[`a9ba29ba10`](https://github.com/nodejs/node/commit/a9ba29ba10)] - **doc**: fix release process table of contents (Richard Lau) [#50216](https://github.com/nodejs/node/pull/50216)
191
+ * \[[`4b5033519e`](https://github.com/nodejs/node/commit/4b5033519e)] - **doc**: update api `stream.compose` (Alex Yang) [#50206](https://github.com/nodejs/node/pull/50206)
192
+ * \[[`d4659e2080`](https://github.com/nodejs/node/commit/d4659e2080)] - **doc**: add ReflectConstruct to known perf issues (Vinicius Lourenço) [#50111](https://github.com/nodejs/node/pull/50111)
193
+ * \[[`ffa94612fd`](https://github.com/nodejs/node/commit/ffa94612fd)] - **doc**: fix typo in dgram docs (Peter Johnson) [#50211](https://github.com/nodejs/node/pull/50211)
194
+ * \[[`f37b577b14`](https://github.com/nodejs/node/commit/f37b577b14)] - **doc**: fix H4ad collaborator sort (Vinicius Lourenço) [#50218](https://github.com/nodejs/node/pull/50218)
195
+ * \[[`c75264b1f9`](https://github.com/nodejs/node/commit/c75264b1f9)] - **doc**: add H4ad to collaborators (Vinícius Lourenço) [#50217](https://github.com/nodejs/node/pull/50217)
196
+ * \[[`5025e24ac7`](https://github.com/nodejs/node/commit/5025e24ac7)] - **doc**: update release-stewards with last sec-release (Rafael Gonzaga) [#50179](https://github.com/nodejs/node/pull/50179)
197
+ * \[[`63379313d5`](https://github.com/nodejs/node/commit/63379313d5)] - **doc**: add command to keep major branch sync (Rafael Gonzaga) [#50102](https://github.com/nodejs/node/pull/50102)
198
+ * \[[`85de4b8254`](https://github.com/nodejs/node/commit/85de4b8254)] - **doc**: add loong64 to list of architectures (Shi Pujin) [#50172](https://github.com/nodejs/node/pull/50172)
199
+ * \[[`ff8e1b860e`](https://github.com/nodejs/node/commit/ff8e1b860e)] - **doc**: update security release process (Michael Dawson) [#50166](https://github.com/nodejs/node/pull/50166)
200
+ * \[[`33470d965c`](https://github.com/nodejs/node/commit/33470d965c)] - **doc**: improve ccache explanation (Chengzhong Wu) [#50133](https://github.com/nodejs/node/pull/50133)
201
+ * \[[`7b97c44e2a`](https://github.com/nodejs/node/commit/7b97c44e2a)] - **doc**: move danielleadams to TSC non-voting member (Danielle Adams) [#50142](https://github.com/nodejs/node/pull/50142)
202
+ * \[[`3d03ca9f31`](https://github.com/nodejs/node/commit/3d03ca9f31)] - **doc**: fix description of `fs.readdir` `recursive` option (RamdohokarAngha) [#48902](https://github.com/nodejs/node/pull/48902)
203
+ * \[[`aab045ec4b`](https://github.com/nodejs/node/commit/aab045ec4b)] - **doc**: mention files read before env setup (Rafael Gonzaga) [#50072](https://github.com/nodejs/node/pull/50072)
204
+ * \[[`26a7608a24`](https://github.com/nodejs/node/commit/26a7608a24)] - **doc**: move permission model to Active Development (Rafael Gonzaga) [#50068](https://github.com/nodejs/node/pull/50068)
205
+ * \[[`d7bbf7f2c4`](https://github.com/nodejs/node/commit/d7bbf7f2c4)] - **doc**: add command to get patch minors and majors (Rafael Gonzaga) [#50067](https://github.com/nodejs/node/pull/50067)
206
+ * \[[`9830165e34`](https://github.com/nodejs/node/commit/9830165e34)] - **doc**: use precise promise terminology in fs (Benjamin Gruenbaum) [#50029](https://github.com/nodejs/node/pull/50029)
207
+ * \[[`585cbb211d`](https://github.com/nodejs/node/commit/585cbb211d)] - **doc**: use precise terminology in test runner (Benjamin Gruenbaum) [#50028](https://github.com/nodejs/node/pull/50028)
208
+ * \[[`2862f07124`](https://github.com/nodejs/node/commit/2862f07124)] - **doc**: clarify explaination text on how to run the example (Anshul Sinha) [#39020](https://github.com/nodejs/node/pull/39020)
209
+ * \[[`fe47c8ad91`](https://github.com/nodejs/node/commit/fe47c8ad91)] - **doc**: reserve 119 for Electron 28 (David Sanders) [#50020](https://github.com/nodejs/node/pull/50020)
210
+ * \[[`36ecd2c588`](https://github.com/nodejs/node/commit/36ecd2c588)] - **doc**: update Collaborator pronouns (Tierney Cyren) [#50005](https://github.com/nodejs/node/pull/50005)
211
+ * \[[`315d82a73e`](https://github.com/nodejs/node/commit/315d82a73e)] - **doc**: update link to Abstract Modules Records spec (Rich Trott) [#49961](https://github.com/nodejs/node/pull/49961)
212
+ * \[[`f63a92bb6c`](https://github.com/nodejs/node/commit/f63a92bb6c)] - **doc**: updated building docs for windows (Claudio W) [#49767](https://github.com/nodejs/node/pull/49767)
213
+ * \[[`ad17126501`](https://github.com/nodejs/node/commit/ad17126501)] - **doc**: update CHANGELOG\_V20 about vm fixes (Joyee Cheung) [#49951](https://github.com/nodejs/node/pull/49951)
214
+ * \[[`24458e2ac3`](https://github.com/nodejs/node/commit/24458e2ac3)] - **doc**: document dangerous symlink behavior (Tobias Nießen) [#49154](https://github.com/nodejs/node/pull/49154)
215
+ * \[[`337a676d1f`](https://github.com/nodejs/node/commit/337a676d1f)] - **doc**: add main ARIA landmark to API docs (Rich Trott) [#49882](https://github.com/nodejs/node/pull/49882)
216
+ * \[[`959ef7ac6b`](https://github.com/nodejs/node/commit/959ef7ac6b)] - **doc**: add navigation ARIA landmark to doc ToC (Rich Trott) [#49882](https://github.com/nodejs/node/pull/49882)
217
+ * \[[`a60fbf2ab3`](https://github.com/nodejs/node/commit/a60fbf2ab3)] - **doc**: mark Node.js 19 as End-of-Life (Richard Lau) [#48283](https://github.com/nodejs/node/pull/48283)
218
+ * \[[`c255575699`](https://github.com/nodejs/node/commit/c255575699)] - **errors**: improve performance of determine-specific-type (Aras Abbasi) [#49696](https://github.com/nodejs/node/pull/49696)
219
+ * \[[`e66991e6b2`](https://github.com/nodejs/node/commit/e66991e6b2)] - **errors**: improve formatList in errors.js (Aras Abbasi) [#49642](https://github.com/nodejs/node/pull/49642)
220
+ * \[[`c71e548b65`](https://github.com/nodejs/node/commit/c71e548b65)] - **errors**: improve performance of instantiation (Aras Abbasi) [#49654](https://github.com/nodejs/node/pull/49654)
221
+ * \[[`3b867e4256`](https://github.com/nodejs/node/commit/3b867e4256)] - **esm**: do not give wrong hints when detecting file format (Antoine du Hamel) [#50314](https://github.com/nodejs/node/pull/50314)
222
+ * \[[`a589a1a905`](https://github.com/nodejs/node/commit/a589a1a905)] - **(SEMVER-MINOR)** **esm**: detect ESM syntax in ambiguous JavaScript (Geoffrey Booth) [#50096](https://github.com/nodejs/node/pull/50096)
223
+ * \[[`c64490e9aa`](https://github.com/nodejs/node/commit/c64490e9aa)] - **esm**: improve check for ESM syntax (Geoffrey Booth) [#50127](https://github.com/nodejs/node/pull/50127)
224
+ * \[[`ee65e44c31`](https://github.com/nodejs/node/commit/ee65e44c31)] - **esm**: use import attributes instead of import assertions (Antoine du Hamel) [#50140](https://github.com/nodejs/node/pull/50140)
225
+ * \[[`4de838fdeb`](https://github.com/nodejs/node/commit/4de838fdeb)] - **esm**: bypass CommonJS loader under --default-type (Geoffrey Booth) [#49986](https://github.com/nodejs/node/pull/49986)
226
+ * \[[`27e02b633d`](https://github.com/nodejs/node/commit/27e02b633d)] - **esm**: unflag extensionless javascript and wasm in module scope (Geoffrey Booth) [#49974](https://github.com/nodejs/node/pull/49974)
227
+ * \[[`1e762ddf63`](https://github.com/nodejs/node/commit/1e762ddf63)] - **esm**: improve `getFormatOfExtensionlessFile` speed (Yagiz Nizipli) [#49965](https://github.com/nodejs/node/pull/49965)
228
+ * \[[`112cc7f9f2`](https://github.com/nodejs/node/commit/112cc7f9f2)] - **esm**: improve JSDoc annotation of internal functions (Antoine du Hamel) [#49959](https://github.com/nodejs/node/pull/49959)
229
+ * \[[`c48cd84188`](https://github.com/nodejs/node/commit/c48cd84188)] - **esm**: fix cache collision on JSON files using file: URL (Antoine du Hamel) [#49887](https://github.com/nodejs/node/pull/49887)
230
+ * \[[`dc80ccef25`](https://github.com/nodejs/node/commit/dc80ccef25)] - **esm**: --experimental-default-type flag to flip module defaults (Geoffrey Booth) [#49869](https://github.com/nodejs/node/pull/49869)
231
+ * \[[`01039795a2`](https://github.com/nodejs/node/commit/01039795a2)] - **esm**: require braces for modules code (Geoffrey Booth) [#49657](https://github.com/nodejs/node/pull/49657)
232
+ * \[[`e49ebf8f9a`](https://github.com/nodejs/node/commit/e49ebf8f9a)] - **fs**: improve error performance for `readSync` (Jungku Lee) [#50033](https://github.com/nodejs/node/pull/50033)
233
+ * \[[`eb33f70260`](https://github.com/nodejs/node/commit/eb33f70260)] - **fs**: improve error performance for `fsyncSync` (Jungku Lee) [#49880](https://github.com/nodejs/node/pull/49880)
234
+ * \[[`8d0edc6399`](https://github.com/nodejs/node/commit/8d0edc6399)] - **fs**: improve error performance for `mkdirSync` (CanadaHonk) [#49847](https://github.com/nodejs/node/pull/49847)
235
+ * \[[`36df27509e`](https://github.com/nodejs/node/commit/36df27509e)] - **fs**: improve error performance of `realpathSync` (Yagiz Nizipli) [#49962](https://github.com/nodejs/node/pull/49962)
236
+ * \[[`4242cb7d7f`](https://github.com/nodejs/node/commit/4242cb7d7f)] - **fs**: improve error performance of `lchownSync` (Yagiz Nizipli) [#49962](https://github.com/nodejs/node/pull/49962)
237
+ * \[[`89e7878e44`](https://github.com/nodejs/node/commit/89e7878e44)] - **fs**: improve error performance of `symlinkSync` (Yagiz Nizipli) [#49962](https://github.com/nodejs/node/pull/49962)
238
+ * \[[`af6a0611fe`](https://github.com/nodejs/node/commit/af6a0611fe)] - **fs**: improve error performance of `readlinkSync` (Yagiz Nizipli) [#49962](https://github.com/nodejs/node/pull/49962)
239
+ * \[[`12cda31c52`](https://github.com/nodejs/node/commit/12cda31c52)] - **fs**: improve error performance of `mkdtempSync` (Yagiz Nizipli) [#49962](https://github.com/nodejs/node/pull/49962)
240
+ * \[[`9dba771acb`](https://github.com/nodejs/node/commit/9dba771acb)] - **fs**: improve error performance of `linkSync` (Yagiz Nizipli) [#49962](https://github.com/nodejs/node/pull/49962)
241
+ * \[[`ea7902de13`](https://github.com/nodejs/node/commit/ea7902de13)] - **fs**: improve error performance of `chownSync` (Yagiz Nizipli) [#49962](https://github.com/nodejs/node/pull/49962)
242
+ * \[[`39f31a38cf`](https://github.com/nodejs/node/commit/39f31a38cf)] - **fs**: improve error performance of `renameSync` (Yagiz Nizipli) [#49962](https://github.com/nodejs/node/pull/49962)
243
+ * \[[`35164fa466`](https://github.com/nodejs/node/commit/35164fa466)] - **(SEMVER-MINOR)** **fs**: add flush option to appendFile() functions (Colin Ihrig) [#50095](https://github.com/nodejs/node/pull/50095)
244
+ * \[[`06aa4b9fe9`](https://github.com/nodejs/node/commit/06aa4b9fe9)] - **fs**: improve error performance of `readdirSync` (Yagiz Nizipli) [#50131](https://github.com/nodejs/node/pull/50131)
245
+ * \[[`b5aecebcd6`](https://github.com/nodejs/node/commit/b5aecebcd6)] - **fs**: fix `unlinkSync` typings (Yagiz Nizipli) [#49859](https://github.com/nodejs/node/pull/49859)
246
+ * \[[`6ddea07225`](https://github.com/nodejs/node/commit/6ddea07225)] - **fs**: improve error perf of sync `chmod`+`fchmod` (CanadaHonk) [#49859](https://github.com/nodejs/node/pull/49859)
247
+ * \[[`841367078e`](https://github.com/nodejs/node/commit/841367078e)] - **fs**: improve error perf of sync `*times` (CanadaHonk) [#49864](https://github.com/nodejs/node/pull/49864)
248
+ * \[[`eb52f73e3e`](https://github.com/nodejs/node/commit/eb52f73e3e)] - **fs**: improve error performance of writevSync (IlyasShabi) [#50038](https://github.com/nodejs/node/pull/50038)
249
+ * \[[`d1aa62f1f5`](https://github.com/nodejs/node/commit/d1aa62f1f5)] - **fs**: add flush option to createWriteStream() (Colin Ihrig) [#50093](https://github.com/nodejs/node/pull/50093)
250
+ * \[[`57eb06edff`](https://github.com/nodejs/node/commit/57eb06edff)] - **fs**: improve error performance for `ftruncateSync` (André Alves) [#50032](https://github.com/nodejs/node/pull/50032)
251
+ * \[[`22e3eb659a`](https://github.com/nodejs/node/commit/22e3eb659a)] - **fs**: add flush option to writeFile() functions (Colin Ihrig) [#50009](https://github.com/nodejs/node/pull/50009)
252
+ * \[[`d7132d9214`](https://github.com/nodejs/node/commit/d7132d9214)] - **fs**: improve error performance for `fdatasyncSync` (Jungku Lee) [#49898](https://github.com/nodejs/node/pull/49898)
253
+ * \[[`bc2c0410d3`](https://github.com/nodejs/node/commit/bc2c0410d3)] - **fs**: throw errors from sync branches instead of separate implementations (Joyee Cheung) [#49913](https://github.com/nodejs/node/pull/49913)
254
+ * \[[`f46bcf1749`](https://github.com/nodejs/node/commit/f46bcf1749)] - **http**: refactor to make servername option normalization testable (Rongjian Zhang) [#38733](https://github.com/nodejs/node/pull/38733)
255
+ * \[[`1bfcf817af`](https://github.com/nodejs/node/commit/1bfcf817af)] - **http2**: allow streams to complete gracefully after goaway (Michael Lumish) [#50202](https://github.com/nodejs/node/pull/50202)
256
+ * \[[`5c66ec9e66`](https://github.com/nodejs/node/commit/5c66ec9e66)] - **inspector**: simplify dispatchProtocolMessage (Daniel Lemire) [#49780](https://github.com/nodejs/node/pull/49780)
257
+ * \[[`251ae1dd72`](https://github.com/nodejs/node/commit/251ae1dd72)] - **lib**: improve performance of validateStringArray and validateBooleanArray (Aras Abbasi) [#49756](https://github.com/nodejs/node/pull/49756)
258
+ * \[[`d9c791a508`](https://github.com/nodejs/node/commit/d9c791a508)] - **lib**: fix compileFunction throws range error for negative numbers (Jithil P Ponnan) [#49855](https://github.com/nodejs/node/pull/49855)
259
+ * \[[`24cbc550c2`](https://github.com/nodejs/node/commit/24cbc550c2)] - **lib**: reduce overhead of validateObject (Vinicius Lourenço) [#49928](https://github.com/nodejs/node/pull/49928)
260
+ * \[[`b80e9497f3`](https://github.com/nodejs/node/commit/b80e9497f3)] - **lib**: make fetch sync and return a Promise (Matthew Aitken) [#49936](https://github.com/nodejs/node/pull/49936)
261
+ * \[[`d9eda6761b`](https://github.com/nodejs/node/commit/d9eda6761b)] - **lib**: fix `primordials` typings (Sam Verschueren) [#49895](https://github.com/nodejs/node/pull/49895)
262
+ * \[[`3e0d47c1f4`](https://github.com/nodejs/node/commit/3e0d47c1f4)] - **lib**: update params in jsdoc for `HTTPRequestOptions` (Jungku Lee) [#49872](https://github.com/nodejs/node/pull/49872)
263
+ * \[[`a01050dec4`](https://github.com/nodejs/node/commit/a01050dec4)] - **(SEMVER-MINOR)** **lib**: add WebSocket client (Matthew Aitken) [#49830](https://github.com/nodejs/node/pull/49830)
264
+ * \[[`5bca8feed2`](https://github.com/nodejs/node/commit/5bca8feed2)] - **lib,test**: do not hardcode Buffer.kMaxLength (Michaël Zasso) [#49876](https://github.com/nodejs/node/pull/49876)
265
+ * \[[`e8ebed7a24`](https://github.com/nodejs/node/commit/e8ebed7a24)] - **meta**: move Trott to TSC regular member (Rich Trott) [#50297](https://github.com/nodejs/node/pull/50297)
266
+ * \[[`27e957cea8`](https://github.com/nodejs/node/commit/27e957cea8)] - **meta**: ping TSC for offboarding (Tobias Nießen) [#50147](https://github.com/nodejs/node/pull/50147)
267
+ * \[[`fab39062d5`](https://github.com/nodejs/node/commit/fab39062d5)] - **meta**: bump actions/upload-artifact from 3.1.2 to 3.1.3 (dependabot\[bot]) [#50000](https://github.com/nodejs/node/pull/50000)
268
+ * \[[`46ec82496c`](https://github.com/nodejs/node/commit/46ec82496c)] - **meta**: bump actions/cache from 3.3.1 to 3.3.2 (dependabot\[bot]) [#50003](https://github.com/nodejs/node/pull/50003)
269
+ * \[[`a634fb431e`](https://github.com/nodejs/node/commit/a634fb431e)] - **meta**: bump github/codeql-action from 2.21.5 to 2.21.9 (dependabot\[bot]) [#50002](https://github.com/nodejs/node/pull/50002)
270
+ * \[[`c221f72911`](https://github.com/nodejs/node/commit/c221f72911)] - **meta**: bump actions/checkout from 3.6.0 to 4.1.0 (dependabot\[bot]) [#50001](https://github.com/nodejs/node/pull/50001)
271
+ * \[[`d356e5e395`](https://github.com/nodejs/node/commit/d356e5e395)] - **meta**: update website team with new name (Rich Trott) [#49883](https://github.com/nodejs/node/pull/49883)
272
+ * \[[`2ff4e71452`](https://github.com/nodejs/node/commit/2ff4e71452)] - **module**: move helpers out of cjs loader (Geoffrey Booth) [#49912](https://github.com/nodejs/node/pull/49912)
273
+ * \[[`142ac3f82d`](https://github.com/nodejs/node/commit/142ac3f82d)] - **module, esm**: jsdoc for modules files (Geoffrey Booth) [#49523](https://github.com/nodejs/node/pull/49523)
274
+ * \[[`e2f0ef2a60`](https://github.com/nodejs/node/commit/e2f0ef2a60)] - **node-api**: update headers for better wasm support (Toyo Li) [#49037](https://github.com/nodejs/node/pull/49037)
275
+ * \[[`db2a07fcd6`](https://github.com/nodejs/node/commit/db2a07fcd6)] - **node-api**: run finalizers directly from GC (Vladimir Morozov) [#42651](https://github.com/nodejs/node/pull/42651)
276
+ * \[[`c25716be8b`](https://github.com/nodejs/node/commit/c25716be8b)] - **os**: cache homedir, remove getCheckedFunction (Aras Abbasi) [#50037](https://github.com/nodejs/node/pull/50037)
277
+ * \[[`e8f024b4db`](https://github.com/nodejs/node/commit/e8f024b4db)] - **perf\_hooks**: reduce overhead of new user timings (Vinicius Lourenço) [#49914](https://github.com/nodejs/node/pull/49914)
278
+ * \[[`a517be0a5a`](https://github.com/nodejs/node/commit/a517be0a5a)] - **perf\_hooks**: reducing overhead of performance observer entry list (Vinicius Lourenço) [#50008](https://github.com/nodejs/node/pull/50008)
279
+ * \[[`42e49ec381`](https://github.com/nodejs/node/commit/42e49ec381)] - **perf\_hooks**: reduce overhead of new resource timings (Vinicius Lourenço) [#49837](https://github.com/nodejs/node/pull/49837)
280
+ * \[[`c99e51ed1b`](https://github.com/nodejs/node/commit/c99e51ed1b)] - **src**: generate default snapshot with --predictable (Joyee Cheung) [#48749](https://github.com/nodejs/node/pull/48749)
281
+ * \[[`47164e238f`](https://github.com/nodejs/node/commit/47164e238f)] - **src**: fix TLSWrap lifetime bug in ALPN callback (Ben Noordhuis) [#49635](https://github.com/nodejs/node/pull/49635)
282
+ * \[[`e1df69e73e`](https://github.com/nodejs/node/commit/e1df69e73e)] - **src**: set port in node\_options to uint16\_t (Yagiz Nizipli) [#49151](https://github.com/nodejs/node/pull/49151)
283
+ * \[[`1eb2af29b4`](https://github.com/nodejs/node/commit/1eb2af29b4)] - **src**: name scoped lock (Mohammed Keyvanzadeh) [#50010](https://github.com/nodejs/node/pull/50010)
284
+ * \[[`5131fde655`](https://github.com/nodejs/node/commit/5131fde655)] - **src**: use exact return value for `uv_os_getenv` (Yagiz Nizipli) [#49149](https://github.com/nodejs/node/pull/49149)
285
+ * \[[`ba169be5ca`](https://github.com/nodejs/node/commit/ba169be5ca)] - **src**: move const variable in `node_file.h` to `node_file.cc` (Jungku Lee) [#49688](https://github.com/nodejs/node/pull/49688)
286
+ * \[[`5a2351d3ab`](https://github.com/nodejs/node/commit/5a2351d3ab)] - **src**: remove unused variable (Michaël Zasso) [#49665](https://github.com/nodejs/node/pull/49665)
287
+ * \[[`f2f993a32f`](https://github.com/nodejs/node/commit/f2f993a32f)] - **stream**: simplify prefinish (Robert Nagy) [#50204](https://github.com/nodejs/node/pull/50204)
288
+ * \[[`6d7274e3ca`](https://github.com/nodejs/node/commit/6d7274e3ca)] - **stream**: reduce scope of readable bitmap details (Robert Nagy) [#49963](https://github.com/nodejs/node/pull/49963)
289
+ * \[[`ffdc357167`](https://github.com/nodejs/node/commit/ffdc357167)] - **(SEMVER-MINOR)** **stream**: allow pass stream class to `stream.compose` (Alex Yang) [#50187](https://github.com/nodejs/node/pull/50187)
290
+ * \[[`4861ad6431`](https://github.com/nodejs/node/commit/4861ad6431)] - **stream**: call helper function from push and unshift (Raz Luvaton) [#50173](https://github.com/nodejs/node/pull/50173)
291
+ * \[[`e60b3ab31b`](https://github.com/nodejs/node/commit/e60b3ab31b)] - **stream**: use private symbol for bitmap state (Robert Nagy) [#49993](https://github.com/nodejs/node/pull/49993)
292
+ * \[[`ecbfb23f6b`](https://github.com/nodejs/node/commit/ecbfb23f6b)] - **stream**: lazy allocate back pressure buffer (Robert Nagy) [#50013](https://github.com/nodejs/node/pull/50013)
293
+ * \[[`88c739bef4`](https://github.com/nodejs/node/commit/88c739bef4)] - **stream**: avoid unnecessary drain for sync stream (Robert Nagy) [#50014](https://github.com/nodejs/node/pull/50014)
294
+ * \[[`4b27087b30`](https://github.com/nodejs/node/commit/4b27087b30)] - **stream**: optimize Writable (Robert Nagy) [#50012](https://github.com/nodejs/node/pull/50012)
295
+ * \[[`def55f80a1`](https://github.com/nodejs/node/commit/def55f80a1)] - **stream**: avoid tick in writable hot path (Robert Nagy) [#49966](https://github.com/nodejs/node/pull/49966)
296
+ * \[[`35ec93115d`](https://github.com/nodejs/node/commit/35ec93115d)] - **stream**: writable state bitmap (Robert Nagy) [#49899](https://github.com/nodejs/node/pull/49899)
297
+ * \[[`6e0f0fafe4`](https://github.com/nodejs/node/commit/6e0f0fafe4)] - **test**: use ppc and ppc64 to skip SEA tests on PowerPC (Joyee Cheung) [#50828](https://github.com/nodejs/node/pull/50828)
298
+ * \[[`a528bbceca`](https://github.com/nodejs/node/commit/a528bbceca)] - **test**: mark SEA tests as flaky on PowerPC (Joyee Cheung) [#50750](https://github.com/nodejs/node/pull/50750)
299
+ * \[[`4e34f9a26e`](https://github.com/nodejs/node/commit/4e34f9a26e)] - **test**: relax version check with shared OpenSSL (Luigi Pinca) [#50505](https://github.com/nodejs/node/pull/50505)
300
+ * \[[`41ca1132eb`](https://github.com/nodejs/node/commit/41ca1132eb)] - **test**: fix crypto-dh error message for OpenSSL 3.x (Kerem Kat) [#50395](https://github.com/nodejs/node/pull/50395)
301
+ * \[[`a6a05e8a88`](https://github.com/nodejs/node/commit/a6a05e8a88)] - **test**: fix testsuite against zlib version 1.3 (Dominique Leuenberger) [#50364](https://github.com/nodejs/node/pull/50364)
302
+ * \[[`8dd895e574`](https://github.com/nodejs/node/commit/8dd895e574)] - **test**: replace forEach with for..of in test-process-env (Niya Shiyas) [#49825](https://github.com/nodejs/node/pull/49825)
303
+ * \[[`81886c66d1`](https://github.com/nodejs/node/commit/81886c66d1)] - **test**: replace forEach with for..of in test-http-url (Niya Shiyas) [#49840](https://github.com/nodejs/node/pull/49840)
304
+ * \[[`7d8a18b257`](https://github.com/nodejs/node/commit/7d8a18b257)] - **test**: improve watch mode test (Moshe Atlow) [#50319](https://github.com/nodejs/node/pull/50319)
305
+ * \[[`baa04b79ca`](https://github.com/nodejs/node/commit/baa04b79ca)] - **test**: set `test-watch-mode-inspect` as flaky (Yagiz Nizipli) [#50259](https://github.com/nodejs/node/pull/50259)
306
+ * \[[`3d9130bc2e`](https://github.com/nodejs/node/commit/3d9130bc2e)] - _**Revert**_ "**test**: set `test-esm-loader-resolve-type` as flaky" (Antoine du Hamel) [#50315](https://github.com/nodejs/node/pull/50315)
307
+ * \[[`72626f9a35`](https://github.com/nodejs/node/commit/72626f9a35)] - **test**: replace forEach with for..of in test-http-perf\_hooks.js (Niya Shiyas) [#49818](https://github.com/nodejs/node/pull/49818)
308
+ * \[[`379a7255e8`](https://github.com/nodejs/node/commit/379a7255e8)] - **test**: replace forEach with for..of in test-net-isipv4.js (Niya Shiyas) [#49822](https://github.com/nodejs/node/pull/49822)
309
+ * \[[`b55fcd75da`](https://github.com/nodejs/node/commit/b55fcd75da)] - **test**: deflake `test-esm-loader-resolve-type` (Antoine du Hamel) [#50273](https://github.com/nodejs/node/pull/50273)
310
+ * \[[`0134af3eeb`](https://github.com/nodejs/node/commit/0134af3eeb)] - **test**: replace forEach with for..of in test-http2-server (Niya Shiyas) [#49819](https://github.com/nodejs/node/pull/49819)
311
+ * \[[`8c15281d06`](https://github.com/nodejs/node/commit/8c15281d06)] - **test**: replace forEach with for..of in test-http2-client-destroy.js (Niya Shiyas) [#49820](https://github.com/nodejs/node/pull/49820)
312
+ * \[[`c37a75a898`](https://github.com/nodejs/node/commit/c37a75a898)] - **test**: update `url` web platform tests (Yagiz Nizipli) [#50264](https://github.com/nodejs/node/pull/50264)
313
+ * \[[`ab5985d0e9`](https://github.com/nodejs/node/commit/ab5985d0e9)] - **test**: set `test-emit-after-on-destroyed` as flaky (Yagiz Nizipli) [#50246](https://github.com/nodejs/node/pull/50246)
314
+ * \[[`50181a19b8`](https://github.com/nodejs/node/commit/50181a19b8)] - **test**: set inspector async stack test as flaky (Yagiz Nizipli) [#50244](https://github.com/nodejs/node/pull/50244)
315
+ * \[[`b9e0fed995`](https://github.com/nodejs/node/commit/b9e0fed995)] - **test**: set test-worker-nearheaplimit-deadlock flaky (StefanStojanovic) [#50277](https://github.com/nodejs/node/pull/50277)
316
+ * \[[`2cfc4007d1`](https://github.com/nodejs/node/commit/2cfc4007d1)] - **test**: set `test-cli-node-options` as flaky (Yagiz Nizipli) [#50296](https://github.com/nodejs/node/pull/50296)
317
+ * \[[`788714b28f`](https://github.com/nodejs/node/commit/788714b28f)] - **test**: reduce the number of requests and parsers (Luigi Pinca) [#50240](https://github.com/nodejs/node/pull/50240)
318
+ * \[[`0dce19c8f6`](https://github.com/nodejs/node/commit/0dce19c8f6)] - **test**: set crypto-timing test as flaky (Yagiz Nizipli) [#50232](https://github.com/nodejs/node/pull/50232)
319
+ * \[[`5d4b5ff1b8`](https://github.com/nodejs/node/commit/5d4b5ff1b8)] - **test**: set `test-structuredclone-*` as flaky (Yagiz Nizipli) [#50261](https://github.com/nodejs/node/pull/50261)
320
+ * \[[`5c56081d67`](https://github.com/nodejs/node/commit/5c56081d67)] - **test**: deflake `test-loaders-workers-spawned` (Antoine du Hamel) [#50251](https://github.com/nodejs/node/pull/50251)
321
+ * \[[`3441e1982d`](https://github.com/nodejs/node/commit/3441e1982d)] - **test**: improve code coverage of diagnostics\_channel (Jithil P Ponnan) [#50053](https://github.com/nodejs/node/pull/50053)
322
+ * \[[`696ba93329`](https://github.com/nodejs/node/commit/696ba93329)] - **test**: set `test-esm-loader-resolve-type` as flaky (Yagiz Nizipli) [#50226](https://github.com/nodejs/node/pull/50226)
323
+ * \[[`8b260c5d6b`](https://github.com/nodejs/node/commit/8b260c5d6b)] - **test**: set inspector async hook test as flaky (Yagiz Nizipli) [#50252](https://github.com/nodejs/node/pull/50252)
324
+ * \[[`f3296d25e8`](https://github.com/nodejs/node/commit/f3296d25e8)] - **test**: skip test-benchmark-os.js on IBM i (Abdirahim Musse) [#50208](https://github.com/nodejs/node/pull/50208)
325
+ * \[[`fefe17b02e`](https://github.com/nodejs/node/commit/fefe17b02e)] - **test**: set parallel http server test as flaky (Yagiz Nizipli) [#50227](https://github.com/nodejs/node/pull/50227)
326
+ * \[[`228c87f329`](https://github.com/nodejs/node/commit/228c87f329)] - **test**: set test-worker-nearheaplimit-deadlock flaky (Stefan Stojanovic) [#50238](https://github.com/nodejs/node/pull/50238)
327
+ * \[[`c2c2506eab`](https://github.com/nodejs/node/commit/c2c2506eab)] - **test**: set `test-runner-watch-mode` as flaky (Yagiz Nizipli) [#50221](https://github.com/nodejs/node/pull/50221)
328
+ * \[[`16a07983d4`](https://github.com/nodejs/node/commit/16a07983d4)] - **test**: set sea snapshot tests as flaky (Yagiz Nizipli) [#50223](https://github.com/nodejs/node/pull/50223)
329
+ * \[[`7cd406a0b8`](https://github.com/nodejs/node/commit/7cd406a0b8)] - **test**: fix defect path traversal tests (Tobias Nießen) [#50124](https://github.com/nodejs/node/pull/50124)
330
+ * \[[`1cf3f8da32`](https://github.com/nodejs/node/commit/1cf3f8da32)] - **test**: replace forEach with for..of in test-net-isipv6.js (Niya Shiyas) [#49823](https://github.com/nodejs/node/pull/49823)
331
+ * \[[`214997a99e`](https://github.com/nodejs/node/commit/214997a99e)] - **test**: reduce number of repetition in test-heapdump-shadowrealm.js (Chengzhong Wu) [#50104](https://github.com/nodejs/node/pull/50104)
332
+ * \[[`9d836516e6`](https://github.com/nodejs/node/commit/9d836516e6)] - **test**: replace forEach with for..of in test-parse-args.mjs (Niya Shiyas) [#49824](https://github.com/nodejs/node/pull/49824)
333
+ * \[[`fee8b24603`](https://github.com/nodejs/node/commit/fee8b24603)] - **test**: replace forEach() in test-net-perf\_hooks with for of (Narcisa Codreanu) [#49831](https://github.com/nodejs/node/pull/49831)
334
+ * \[[`4c58b92ba8`](https://github.com/nodejs/node/commit/4c58b92ba8)] - **test**: change forEach to for...of (Tiffany Lastimosa) [#49799](https://github.com/nodejs/node/pull/49799)
335
+ * \[[`01b01527d7`](https://github.com/nodejs/node/commit/01b01527d7)] - **test**: update skip for moved `test-wasm-web-api` (Richard Lau) [#49958](https://github.com/nodejs/node/pull/49958)
336
+ * \[[`179e293103`](https://github.com/nodejs/node/commit/179e293103)] - _**Revert**_ "**test**: mark test-runner-output as flaky" (Luigi Pinca) [#49905](https://github.com/nodejs/node/pull/49905)
337
+ * \[[`829eb99afd`](https://github.com/nodejs/node/commit/829eb99afd)] - **test**: disambiguate AIX and IBM i (Richard Lau) [#48056](https://github.com/nodejs/node/pull/48056)
338
+ * \[[`126407d438`](https://github.com/nodejs/node/commit/126407d438)] - **test**: deflake test-perf-hooks.js (Joyee Cheung) [#49892](https://github.com/nodejs/node/pull/49892)
339
+ * \[[`393fd5b7c9`](https://github.com/nodejs/node/commit/393fd5b7c9)] - **test**: migrate message error tests from Python to JS (Yiyun Lei) [#49721](https://github.com/nodejs/node/pull/49721)
340
+ * \[[`5dfe4236f8`](https://github.com/nodejs/node/commit/5dfe4236f8)] - **test**: fix edge snapshot stack traces (Geoffrey Booth) [#49659](https://github.com/nodejs/node/pull/49659)
341
+ * \[[`d164e537bf`](https://github.com/nodejs/node/commit/d164e537bf)] - **test,crypto**: update WebCryptoAPI WPT (Filip Skokan) [#50039](https://github.com/nodejs/node/pull/50039)
342
+ * \[[`55a03fedae`](https://github.com/nodejs/node/commit/55a03fedae)] - **test\_runner**: add test location for FileTests (Colin Ihrig) [#49999](https://github.com/nodejs/node/pull/49999)
343
+ * \[[`10b35cfb6e`](https://github.com/nodejs/node/commit/10b35cfb6e)] - **test\_runner**: replace spurious if with else (Colin Ihrig) [#49943](https://github.com/nodejs/node/pull/49943)
344
+ * \[[`27558c4314`](https://github.com/nodejs/node/commit/27558c4314)] - **test\_runner**: catch reporter errors (Moshe Atlow) [#49646](https://github.com/nodejs/node/pull/49646)
345
+ * \[[`709c6c0cab`](https://github.com/nodejs/node/commit/709c6c0cab)] - **(SEMVER-MINOR)** **test\_runner, cli**: add --test-concurrency flag (Colin Ihrig) [#49996](https://github.com/nodejs/node/pull/49996)
346
+ * \[[`64ef108dd9`](https://github.com/nodejs/node/commit/64ef108dd9)] - **test\_runner,test**: fix flaky test-runner-cli-concurrency.js (Colin Ihrig) [#50108](https://github.com/nodejs/node/pull/50108)
347
+ * \[[`d2def152d9`](https://github.com/nodejs/node/commit/d2def152d9)] - **tls**: reduce TLS 'close' event listener warnings (Tim Perry) [#50136](https://github.com/nodejs/node/pull/50136)
348
+ * \[[`294b650f5c`](https://github.com/nodejs/node/commit/294b650f5c)] - **tls**: handle cases where the raw socket is destroyed (Luigi Pinca) [#49980](https://github.com/nodejs/node/pull/49980)
349
+ * \[[`52b5693949`](https://github.com/nodejs/node/commit/52b5693949)] - **tls**: ciphers allow bang syntax (Chemi Atlow) [#49712](https://github.com/nodejs/node/pull/49712)
350
+ * \[[`05ee35028b`](https://github.com/nodejs/node/commit/05ee35028b)] - **tools**: update comment in `update-uncidi.sh` and `acorn_version.h` (Jungku Lee) [#50175](https://github.com/nodejs/node/pull/50175)
351
+ * \[[`35b160e6a3`](https://github.com/nodejs/node/commit/35b160e6a3)] - **tools**: refactor checkimports.py (Mohammed Keyvanzadeh) [#50011](https://github.com/nodejs/node/pull/50011)
352
+ * \[[`b959d36b77`](https://github.com/nodejs/node/commit/b959d36b77)] - **tools**: fix comments referencing dep\_updaters scripts (Keksonoid) [#50165](https://github.com/nodejs/node/pull/50165)
353
+ * \[[`bd5d5331b0`](https://github.com/nodejs/node/commit/bd5d5331b0)] - **tools**: remove no-return-await lint rule (翠 / green) [#50118](https://github.com/nodejs/node/pull/50118)
354
+ * \[[`b9adf3d66e`](https://github.com/nodejs/node/commit/b9adf3d66e)] - **tools**: update lint-md-dependencies (Node.js GitHub Bot) [#50083](https://github.com/nodejs/node/pull/50083)
355
+ * \[[`4978bdc4ec`](https://github.com/nodejs/node/commit/4978bdc4ec)] - **tools**: update eslint to 8.51.0 (Node.js GitHub Bot) [#50084](https://github.com/nodejs/node/pull/50084)
356
+ * \[[`e323a367fd`](https://github.com/nodejs/node/commit/e323a367fd)] - **tools**: remove genv8constants.py (Ben Noordhuis) [#50023](https://github.com/nodejs/node/pull/50023)
357
+ * \[[`1cc6cbff26`](https://github.com/nodejs/node/commit/1cc6cbff26)] - **tools**: update eslint to 8.50.0 (Node.js GitHub Bot) [#49989](https://github.com/nodejs/node/pull/49989)
358
+ * \[[`924231be2a`](https://github.com/nodejs/node/commit/924231be2a)] - **tools**: update lint-md-dependencies (Node.js GitHub Bot) [#49983](https://github.com/nodejs/node/pull/49983)
359
+ * \[[`732b5661ea`](https://github.com/nodejs/node/commit/732b5661ea)] - **tools**: add navigation ARIA landmark to generated API ToC (Rich Trott) [#49882](https://github.com/nodejs/node/pull/49882)
360
+ * \[[`353a14278e`](https://github.com/nodejs/node/commit/353a14278e)] - **tools**: update github\_reporter to 1.5.3 (Node.js GitHub Bot) [#49877](https://github.com/nodejs/node/pull/49877)
361
+ * \[[`0aaab45d7c`](https://github.com/nodejs/node/commit/0aaab45d7c)] - **tools**: improve macOS notarization process output readability (Ulises Gascón) [#50389](https://github.com/nodejs/node/pull/50389)
362
+ * \[[`ad326033e2`](https://github.com/nodejs/node/commit/ad326033e2)] - **tools**: remove unused `version` function (Ulises Gascón) [#50390](https://github.com/nodejs/node/pull/50390)
363
+ * \[[`2f32472544`](https://github.com/nodejs/node/commit/2f32472544)] - **tools**: drop support for osx notarization with gon (Ulises Gascón) [#50291](https://github.com/nodejs/node/pull/50291)
364
+ * \[[`3b1c15aeb0`](https://github.com/nodejs/node/commit/3b1c15aeb0)] - **tools**: use osx notarytool for future releases (Ulises Gascon) [#48701](https://github.com/nodejs/node/pull/48701)
365
+ * \[[`0ddb87ede3`](https://github.com/nodejs/node/commit/0ddb87ede3)] - **typings**: use `Symbol.dispose` and `Symbol.asyncDispose` in types (Niklas Mollenhauer) [#50123](https://github.com/nodejs/node/pull/50123)
366
+ * \[[`bf5b2115a0`](https://github.com/nodejs/node/commit/bf5b2115a0)] - **util**: remove internal mime fns from benchmarks (Aras Abbasi) [#50201](https://github.com/nodejs/node/pull/50201)
367
+ * \[[`ac02cdb0ad`](https://github.com/nodejs/node/commit/ac02cdb0ad)] - **util**: lazy parse mime parameters (Aras Abbasi) [#49889](https://github.com/nodejs/node/pull/49889)
368
+ * \[[`9853fd96df`](https://github.com/nodejs/node/commit/9853fd96df)] - **vm**: reject in importModuleDynamically without --experimental-vm-modules (Joyee Cheung) [#50137](https://github.com/nodejs/node/pull/50137)
369
+ * \[[`3697c19c80`](https://github.com/nodejs/node/commit/3697c19c80)] - **vm**: use internal versions of compileFunction and Script (Joyee Cheung) [#50137](https://github.com/nodejs/node/pull/50137)
370
+ * \[[`56bbc30a44`](https://github.com/nodejs/node/commit/56bbc30a44)] - **vm**: unify host-defined option generation in vm.compileFunction (Joyee Cheung) [#50137](https://github.com/nodejs/node/pull/50137)
371
+ * \[[`57efd5292c`](https://github.com/nodejs/node/commit/57efd5292c)] - **(SEMVER-MINOR)** **vm**: use import attributes instead of import assertions (Antoine du Hamel) [#50141](https://github.com/nodejs/node/pull/50141)
372
+ * \[[`17581c2716`](https://github.com/nodejs/node/commit/17581c2716)] - **vm**: use default HDO when importModuleDynamically is not set (Joyee Cheung) [#49950](https://github.com/nodejs/node/pull/49950)
373
+ * \[[`65e18aa8e7`](https://github.com/nodejs/node/commit/65e18aa8e7)] - **wasi**: address coverity warning (Michael Dawson) [#49866](https://github.com/nodejs/node/pull/49866)
374
+ * \[[`5b695d6a8d`](https://github.com/nodejs/node/commit/5b695d6a8d)] - **wasi**: fix up wasi tests for ibmi (Michael Dawson) [#49953](https://github.com/nodejs/node/pull/49953)
375
+ * \[[`b86e1f5cbd`](https://github.com/nodejs/node/commit/b86e1f5cbd)] - **(SEMVER-MINOR)** **wasi**: updates required for latest uvwasi version (Michael Dawson) [#49908](https://github.com/nodejs/node/pull/49908)
376
+ * \[[`b4d149b4d6`](https://github.com/nodejs/node/commit/b4d149b4d6)] - **worker**: handle detached `MessagePort` from a different context (Juan José) [#49150](https://github.com/nodejs/node/pull/49150)
377
+ * \[[`f564ed4e05`](https://github.com/nodejs/node/commit/f564ed4e05)] - **zlib**: fix discovery of cpu-features.h for android (MatteoBax) [#49828](https://github.com/nodejs/node/pull/49828)
378
+
54
379
  <a id="20.9.0"></a>
55
380
 
56
381
  ## 2023-10-24, Version 20.9.0 'Iron' (LTS), @richardlau
@@ -123,7 +448,7 @@ This rework addressed a series of long-standing memory leaks and use-after-free
123
448
  * `vm.SyntheticModule`
124
449
  * `vm.SourceTextModule`
125
450
 
126
- This should enable affected users (in particular Jest users) to upgrade from older versions of Node.js.
451
+ This should enable affected users to upgrade from older versions of Node.js.
127
452
 
128
453
  Contributed by Joyee Cheung in [#48510](https://github.com/nodejs/node/pull/48510).
129
454
 
package/LICENSE CHANGED
@@ -78,19 +78,30 @@ The externally maintained libraries used by Node.js are:
78
78
 
79
79
  - c-ares, located at deps/cares, is licensed as follows:
80
80
  """
81
- Copyright (c) 2007 - 2018, Daniel Stenberg with many contributors, see AUTHORS
81
+ MIT License
82
+
83
+ Copyright (c) 1998 Massachusetts Institute of Technology
84
+ Copyright (c) 2007 - 2023 Daniel Stenberg with many contributors, see AUTHORS
82
85
  file.
83
86
 
84
- Copyright 1998 by the Massachusetts Institute of Technology.
87
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
88
+ this software and associated documentation files (the "Software"), to deal in
89
+ the Software without restriction, including without limitation the rights to
90
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
91
+ the Software, and to permit persons to whom the Software is furnished to do so,
92
+ subject to the following conditions:
93
+
94
+ The above copyright notice and this permission notice (including the next
95
+ paragraph) shall be included in all copies or substantial portions of the
96
+ Software.
85
97
 
86
- Permission to use, copy, modify, and distribute this software and its
87
- documentation for any purpose and without fee is hereby granted, provided that
88
- the above copyright notice appear in all copies and that both that copyright
89
- notice and this permission notice appear in supporting documentation, and that
90
- the name of M.I.T. not be used in advertising or publicity pertaining to
91
- distribution of the software without specific, written prior permission.
92
- M.I.T. makes no representations about the suitability of this software for any
93
- purpose. It is provided "as is" without express or implied warranty.
98
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
99
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
100
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
101
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
102
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
103
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
104
+ SOFTWARE.
94
105
  """
95
106
 
96
107
  - cjs-module-lexer, located at deps/cjs-module-lexer, is licensed as follows:
package/README.md CHANGED
@@ -174,8 +174,6 @@ For information about the governance of the Node.js project, see
174
174
  **Ruben Bridgewater** <<ruben@bridgewater.de>> (he/him)
175
175
  * [cjihrig](https://github.com/cjihrig) -
176
176
  **Colin Ihrig** <<cjihrig@gmail.com>> (he/him)
177
- * [danielleadams](https://github.com/danielleadams) -
178
- **Danielle Adams** <<adamzdanielle@gmail.com>> (she/her)
179
177
  * [GeoffreyBooth](https://github.com/geoffreybooth) -
180
178
  **Geoffrey Booth** <<webadmin@geoffreybooth.com>> (he/him)
181
179
  * [gireeshpunathil](https://github.com/gireeshpunathil) -
@@ -206,8 +204,6 @@ For information about the governance of the Node.js project, see
206
204
  **Michaël Zasso** <<targos@protonmail.com>> (he/him)
207
205
  * [tniessen](https://github.com/tniessen) -
208
206
  **Tobias Nießen** <<tniessen@tnie.de>> (he/him)
209
- * [Trott](https://github.com/Trott) -
210
- **Rich Trott** <<rtrott@gmail.com>> (he/him)
211
207
 
212
208
  #### TSC regular members
213
209
 
@@ -221,6 +217,8 @@ For information about the governance of the Node.js project, see
221
217
  **Shelley Vohr** <<shelley.vohr@gmail.com>> (she/her)
222
218
  * [danbev](https://github.com/danbev) -
223
219
  **Daniel Bevenius** <<daniel.bevenius@gmail.com>> (he/him)
220
+ * [danielleadams](https://github.com/danielleadams) -
221
+ **Danielle Adams** <<adamzdanielle@gmail.com>> (she/her)
224
222
  * [fhinkel](https://github.com/fhinkel) -
225
223
  **Franziska Hinkelmann** <<franziska.hinkelmann@gmail.com>> (she/her)
226
224
  * [gabrielschulhof](https://github.com/gabrielschulhof) -
@@ -233,6 +231,8 @@ For information about the governance of the Node.js project, see
233
231
  **Rod Vagg** <<r@va.gg>>
234
232
  * [TimothyGu](https://github.com/TimothyGu) -
235
233
  **Tiancheng "Timothy" Gu** <<timothygu99@gmail.com>> (he/him)
234
+ * [Trott](https://github.com/Trott) -
235
+ **Rich Trott** <<rtrott@gmail.com>> (he/him)
236
236
 
237
237
  <details>
238
238
 
@@ -308,7 +308,7 @@ For information about the governance of the Node.js project, see
308
308
  * [bmeck](https://github.com/bmeck) -
309
309
  **Bradley Farias** <<bradley.meck@gmail.com>>
310
310
  * [bnb](https://github.com/bnb) -
311
- **Tierney Cyren** <<hello@bnb.im>> (they/he)
311
+ **Tierney Cyren** <<hello@bnb.im>> (they/them)
312
312
  * [bnoordhuis](https://github.com/bnoordhuis) -
313
313
  **Ben Noordhuis** <<info@bnoordhuis.nl>>
314
314
  * [BridgeAR](https://github.com/BridgeAR) -
@@ -357,6 +357,8 @@ For information about the governance of the Node.js project, see
357
357
  **Gireesh Punathil** <<gpunathi@in.ibm.com>> (he/him)
358
358
  * [guybedford](https://github.com/guybedford) -
359
359
  **Guy Bedford** <<guybedford@gmail.com>> (he/him)
360
+ * [H4ad](https://github.com/H4ad) -
361
+ **Vinícius Lourenço Claro Cardoso** <<contact@viniciusl.com.br>> (he/him)
360
362
  * [HarshithaKP](https://github.com/HarshithaKP) -
361
363
  **Harshitha K P** <<harshitha014@gmail.com>> (she/her)
362
364
  * [himself65](https://github.com/himself65) -
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.16',
39
+ 'v8_embedder_string': '-node.25',
40
40
 
41
41
  ##### V8 defaults for Node.js #####
42
42
 
@@ -230,7 +230,7 @@
230
230
  ],
231
231
  },],
232
232
  ['OS == "android"', {
233
- 'cflags': [ '-fPIC' ],
233
+ 'cflags': [ '-fPIC', '-I<(android_ndk_path)/sources/android/cpufeatures' ],
234
234
  'ldflags': [ '-fPIC' ]
235
235
  }],
236
236
  ],
@@ -139,7 +139,6 @@
139
139
  'lib/internal/fs/recursive_watch.js',
140
140
  'lib/internal/fs/rimraf.js',
141
141
  'lib/internal/fs/streams.js',
142
- 'lib/internal/fs/sync.js',
143
142
  'lib/internal/fs/sync_write_stream.js',
144
143
  'lib/internal/fs/utils.js',
145
144
  'lib/internal/fs/watchers.js',
@@ -28,7 +28,7 @@
28
28
  #ifndef NAPI_EXTERN
29
29
  #ifdef _WIN32
30
30
  #define NAPI_EXTERN __declspec(dllexport)
31
- #elif defined(__wasm32__)
31
+ #elif defined(__wasm__)
32
32
  #define NAPI_EXTERN \
33
33
  __attribute__((visibility("default"))) \
34
34
  __attribute__((__import_module__("napi")))
@@ -517,6 +517,16 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_add_finalizer(napi_env env,
517
517
 
518
518
  #endif // NAPI_VERSION >= 5
519
519
 
520
+ #ifdef NAPI_EXPERIMENTAL
521
+
522
+ NAPI_EXTERN napi_status NAPI_CDECL
523
+ node_api_post_finalizer(napi_env env,
524
+ napi_finalize finalize_cb,
525
+ void* finalize_data,
526
+ void* finalize_hint);
527
+
528
+ #endif // NAPI_EXPERIMENTAL
529
+
520
530
  #if NAPI_VERSION >= 6
521
531
 
522
532
  // BigInt
@@ -265,6 +265,8 @@ enum Flags : uint32_t {
265
265
  // cppgc::InitializeProcess() before creating a Node.js environment
266
266
  // and call cppgc::ShutdownProcess() before process shutdown.
267
267
  kNoInitializeCppgc = 1 << 13,
268
+ // Initialize the process for predictable snapshot generation.
269
+ kGeneratePredictableSnapshot = 1 << 14,
268
270
 
269
271
  // Emulate the behavior of InitializeNodeWithArgs() when passing
270
272
  // a flags argument to the InitializeOncePerProcess() replacement