Commit 2a3fe14
committed
fix(modules): throw when a module cannot be resolved
An unresolvable bare specifier resolved to a placeholder module whose
exports was a Proxy that threw on property access, so requiring a missing
module without dereferencing it succeeded silently. The ESM resolver had
the same construct, plus debug-mode branches that returned an empty
MaybeLocal without scheduling an exception, which is not a valid resolve
callback result.
The placeholder never worked in the first place: the module name was
interpolated unquoted into a single-quoted JS string literal, so the
generated proxy script was always a SyntaxError. On V8 10.3 the pending
exception left by that failed compile escaped the require callback, which
is the only reason "should throw error if cant find node module" passed.
Both paths now throw "Cannot find module '<specifier>'".1 parent aa2e26d commit 2a3fe14
3 files changed
Lines changed: 14 additions & 196 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | 42 | | |
46 | 43 | | |
47 | 44 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | 20 | | |
31 | 21 | | |
32 | 22 | | |
| |||
411 | 401 | | |
412 | 402 | | |
413 | 403 | | |
414 | | - | |
415 | | - | |
416 | | - | |
417 | | - | |
418 | | - | |
419 | | - | |
420 | | - | |
421 | | - | |
422 | | - | |
423 | | - | |
424 | | - | |
425 | | - | |
426 | | - | |
427 | | - | |
428 | | - | |
| 404 | + | |
429 | 405 | | |
430 | 406 | | |
431 | 407 | | |
| |||
1067 | 1043 | | |
1068 | 1044 | | |
1069 | 1045 | | |
1070 | | - | |
1071 | | - | |
1072 | | - | |
1073 | | - | |
1074 | | - | |
1075 | | - | |
1076 | 1046 | | |
1077 | | - | |
| 1047 | + | |
1078 | 1048 | | |
1079 | 1049 | | |
1080 | 1050 | | |
| |||
1176 | 1146 | | |
1177 | 1147 | | |
1178 | 1148 | | |
1179 | | - | |
1180 | | - | |
1181 | | - | |
1182 | | - | |
1183 | | - | |
1184 | | - | |
1185 | | - | |
1186 | | - | |
1187 | | - | |
1188 | | - | |
1189 | | - | |
1190 | | - | |
1191 | | - | |
1192 | | - | |
1193 | | - | |
1194 | | - | |
1195 | | - | |
1196 | | - | |
1197 | | - | |
1198 | | - | |
1199 | | - | |
1200 | | - | |
1201 | | - | |
1202 | | - | |
1203 | | - | |
1204 | | - | |
1205 | | - | |
1206 | | - | |
1207 | | - | |
1208 | | - | |
1209 | | - | |
1210 | | - | |
1211 | | - | |
1212 | | - | |
1213 | | - | |
1214 | | - | |
1215 | | - | |
1216 | | - | |
1217 | | - | |
1218 | | - | |
1219 | | - | |
1220 | | - | |
1221 | | - | |
1222 | | - | |
1223 | | - | |
1224 | | - | |
1225 | | - | |
1226 | | - | |
1227 | | - | |
1228 | | - | |
1229 | | - | |
1230 | | - | |
1231 | | - | |
1232 | | - | |
1233 | | - | |
1234 | | - | |
1235 | | - | |
1236 | | - | |
1237 | | - | |
1238 | | - | |
1239 | | - | |
1240 | | - | |
1241 | | - | |
1242 | | - | |
1243 | | - | |
1244 | | - | |
1245 | | - | |
1246 | | - | |
1247 | | - | |
1248 | 1149 | | |
1249 | 1150 | | |
1250 | 1151 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | 28 | | |
44 | 29 | | |
45 | 30 | | |
| |||
1375 | 1360 | | |
1376 | 1361 | | |
1377 | 1362 | | |
1378 | | - | |
1379 | | - | |
1380 | | - | |
1381 | | - | |
1382 | | - | |
1383 | | - | |
1384 | | - | |
1385 | | - | |
1386 | | - | |
1387 | | - | |
1388 | | - | |
1389 | | - | |
1390 | | - | |
1391 | | - | |
1392 | | - | |
1393 | | - | |
1394 | | - | |
1395 | | - | |
1396 | | - | |
1397 | | - | |
1398 | | - | |
1399 | | - | |
1400 | | - | |
1401 | | - | |
1402 | | - | |
1403 | | - | |
1404 | | - | |
1405 | | - | |
1406 | | - | |
1407 | | - | |
1408 | | - | |
1409 | | - | |
1410 | | - | |
1411 | | - | |
1412 | | - | |
1413 | | - | |
1414 | | - | |
1415 | | - | |
1416 | | - | |
1417 | | - | |
1418 | | - | |
1419 | | - | |
1420 | | - | |
1421 | | - | |
1422 | | - | |
1423 | | - | |
1424 | | - | |
1425 | | - | |
1426 | | - | |
1427 | | - | |
1428 | | - | |
| 1363 | + | |
| 1364 | + | |
| 1365 | + | |
1429 | 1366 | | |
1430 | | - | |
1431 | | - | |
1432 | | - | |
1433 | | - | |
1434 | | - | |
1435 | | - | |
1436 | | - | |
1437 | | - | |
1438 | | - | |
1439 | | - | |
| 1367 | + | |
| 1368 | + | |
| 1369 | + | |
1440 | 1370 | | |
1441 | 1371 | | |
1442 | 1372 | | |
| |||
1467 | 1397 | | |
1468 | 1398 | | |
1469 | 1399 | | |
1470 | | - | |
1471 | | - | |
1472 | | - | |
1473 | | - | |
1474 | | - | |
1475 | | - | |
1476 | | - | |
1477 | | - | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
1478 | 1403 | | |
1479 | 1404 | | |
1480 | 1405 | | |
| |||
1484 | 1409 | | |
1485 | 1410 | | |
1486 | 1411 | | |
1487 | | - | |
1488 | | - | |
1489 | | - | |
1490 | | - | |
1491 | | - | |
1492 | | - | |
1493 | | - | |
1494 | | - | |
| 1412 | + | |
| 1413 | + | |
| 1414 | + | |
1495 | 1415 | | |
1496 | 1416 | | |
1497 | 1417 | | |
| |||
0 commit comments