Commit graph

18 commits

Author SHA1 Message Date
zhangpeng
0fa24bcafc
feat(resovler): impl Into for IOError (#1223)
patch for rspack issue
[#4564](https://github.com/web-infra-dev/rspack/issues/4564)
2023-11-11 23:21:51 +08:00
Boshen
b7a0b4f27f
feat(resolver): add TsconfigNotFound error (#905) 2023-09-13 16:36:59 +08:00
Boshen
d161de95b6
perf(resolver): optimize canonicalize (#870) 2023-09-08 23:03:39 +08:00
Boshen
aa7b665fe9
feat(resolver): add thiserror (#847) 2023-09-03 14:50:31 +08:00
Boshen
6ed57532cd
fix(resolver): fix a case where ignored package has a fallback (#837) 2023-09-02 17:22:35 +08:00
Boshen
3d8ee2567f
feat(resolver): check for node.js core modules (#794) 2023-08-25 22:33:10 +08:00
Boshen
8c7109b24e
feat(resolver): check for infinite recursion (#714) 2023-08-11 12:53:42 +08:00
Boshen
59f5dc1906
feat(resolver): implement restrictions (path only) (#693) 2023-08-07 13:50:42 +08:00
Boshen
3bfa314e95
refactor(resolver): clean some code (#692) 2023-08-06 21:42:54 +08:00
Boshen
2e3934db49
feat(resolver): imports field (#681) 2023-08-02 15:54:07 +08:00
Boshen
c4669e1f78
feat(resolver): finish most of exports field (#674)
Found a behaviour mismatch: when an array is provided in exports field,
enhanced-resolve will try to read the file and try the next one if it
fails. But in the spec, the path is not read, it's only tested against
"invalid package target".

```
For each item targetValue in target, do
1. Let resolved be the result of PACKAGE_TARGET_RESOLVE( packageURL, targetValue, patternMatch, isImports, conditions), continuing the loop on any Invalid Package Target error.
2. If resolved is undefined, continue the loop.
3. Return resolved.
```

I tested against node.js and verifies node.js conforms to the spec.
2023-08-01 15:53:31 +08:00
Boshen
3b9cc474e9
feat(resolver): port the rest of the exports field tests (#659) 2023-07-30 01:03:10 +08:00
Boshen
3f07306be0
feat(resolver): implement fallback (#572) 2023-07-19 14:42:43 +08:00
Boshen
0c17f4f783
feat(resolver): implement the basics of path alias (#564) 2023-07-18 13:30:14 +08:00
Boshen
cac4e73461
feat(resolver): implement browser field (#561) 2023-07-17 15:16:08 +08:00
Boshen
05c9b5dfd8
feat(resolver): implement extension_alias (#556) 2023-07-16 16:39:51 +08:00
Boshen
ca4d2fa248
feat(resolver): resolve as module (#544) 2023-07-14 11:59:22 +08:00
Boshen
4d187ce963
feat(resolver): resolve js file (#543) 2023-07-13 18:04:00 +08:00