@@ -1096,12 +1096,9 @@ def require_wasm_legacy_eh(self):
1096
1096
1097
1097
def require_wasm_eh (self ):
1098
1098
self .set_setting ('WASM_LEGACY_EXCEPTIONS' , 0 )
1099
- nodejs = self .get_nodejs ()
1100
- if nodejs :
1101
- if self .node_is_canary (nodejs ):
1102
- self .js_engines = [nodejs ]
1103
- self .node_args .append ('--experimental-wasm-exnref' )
1104
- return
1099
+ if self .try_require_node_version (24 ):
1100
+ self .node_args .append ('--experimental-wasm-exnref' )
1101
+ return
1105
1102
1106
1103
if self .is_browser_test ():
1107
1104
return
@@ -1113,9 +1110,9 @@ def require_wasm_eh(self):
1113
1110
return
1114
1111
1115
1112
if 'EMTEST_SKIP_EH' in os .environ :
1116
- self .skipTest ('test requires canary or d8 (and EMTEST_SKIP_EH is set)' )
1113
+ self .skipTest ('test requires node v24 or d8 (and EMTEST_SKIP_EH is set)' )
1117
1114
else :
1118
- self .fail ('either d8 or node canary required to run wasm-eh tests. Use EMTEST_SKIP_EH to skip' )
1115
+ self .fail ('either d8 or node v24 required to run wasm-eh tests. Use EMTEST_SKIP_EH to skip' )
1119
1116
1120
1117
def require_jspi (self ):
1121
1118
# emcc warns about stack switching being experimental, and we build with
@@ -1131,13 +1128,10 @@ def require_jspi(self):
1131
1128
return
1132
1129
1133
1130
exp_args = ['--experimental-wasm-stack-switching' , '--experimental-wasm-type-reflection' ]
1134
- nodejs = self .get_nodejs ()
1135
- if nodejs :
1136
- # Support for JSPI came earlier than 22, but the new API changes are not yet in any node
1137
- if self .node_is_canary (nodejs ):
1138
- self .js_engines = [nodejs ]
1139
- self .node_args += exp_args
1140
- return
1131
+ # Support for JSPI came earlier than 22, but the new API changes require v24
1132
+ if self .try_require_node_version (24 ):
1133
+ self .node_args += exp_args
1134
+ return
1141
1135
1142
1136
if config .V8_ENGINE and config .V8_ENGINE in self .js_engines :
1143
1137
self .emcc_args .append ('-sENVIRONMENT=shell' )
@@ -1146,9 +1140,9 @@ def require_jspi(self):
1146
1140
return
1147
1141
1148
1142
if 'EMTEST_SKIP_JSPI' in os .environ :
1149
- self .skipTest ('test requires node canary or d8 (and EMTEST_SKIP_JSPI is set)' )
1143
+ self .skipTest ('test requires node v24 or d8 (and EMTEST_SKIP_JSPI is set)' )
1150
1144
else :
1151
- self .fail ('either d8 or node canary required to run JSPI tests. Use EMTEST_SKIP_JSPI to skip' )
1145
+ self .fail ('either d8 or node v24 required to run JSPI tests. Use EMTEST_SKIP_JSPI to skip' )
1152
1146
1153
1147
def require_wasm2js (self ):
1154
1148
if self .is_wasm64 ():
0 commit comments