chore(deps): update dependency enhanced-resolve to v5#25
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
41ba4e0 to
b37434f
Compare
b37434f to
bb43b8f
Compare
bb43b8f to
3064a7a
Compare
3064a7a to
4839388
Compare
4839388 to
9506933
Compare
9506933 to
1a8c456
Compare
1a8c456 to
bad2315
Compare
bad2315 to
189f755
Compare
189f755 to
5761519
Compare
5761519 to
3b68ba5
Compare
3b68ba5 to
7a10b91
Compare
7a10b91 to
5416e68
Compare
5416e68 to
2b1678d
Compare
2b1678d to
96b9994
Compare
96b9994 to
7bd9bf9
Compare
7bd9bf9 to
16f688c
Compare
16f688c to
7223c1b
Compare
701fbf6 to
eb4b0de
Compare
4fc95b1 to
fe3ef2a
Compare
92c1edf to
481e1ab
Compare
481e1ab to
ece832b
Compare
ece832b to
b5f2999
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^4.1.1→^5.24.0Release Notes
webpack/enhanced-resolve (enhanced-resolve)
v5.24.0Compare Source
Minor Changes
contextpath andrequestarguments ofresolve(andresolveSync/resolvePromise) to acceptfile:URLinstances, converting them to filesystem paths. Plain strings stay literal paths, matching Node'sfs. (by @alexander-akait in #607)Patch Changes
Make the resolver runtime-agnostic so it works in browsers, Deno and Bun as well as Node. File contents are decoded without assuming a Node
Buffer, and browser shims are provided for thepath,urlandgraceful-fsbuiltins (Node, Deno and Bun keep using the native ones) so the package bundles for the browser — supply your ownfileSystemthere. (by @alexander-akait in #606)Rename the positional
resolve/resolveSync/resolvePromiseparameters toparent/specifier(frompath/request) for ESM-aligned naming and document them in the README. Purely cosmetic — arguments are positional, so there is no behavior or API change. (by @alexander-akait in #611)v5.23.0Compare Source
Minor Changes
roots,modules,alias/fallbacktargets,restrictions, andtsconfig(the config file,configFile,baseUrl, andreferences) to accept fileURLinstances (such asnew URL("./dir/", import.meta.url)), converting them to filesystem paths. Plain strings are still treated as literal paths, matching Node'sfs. (by @alexander-akait in #604)v5.22.2Compare Source
Patch Changes
modulesentry when a packageexportstarget is filtered out byrestrictions, instead of throwing. (by @alexander-akait in #600)v5.22.1Compare Source
Patch Changes
restrictionsbypass via an in-root symlink pointing outside the root. (by @alexander-akait in #595)v5.22.0Compare Source
Minor Changes
CachedInputFileSystem#purgeaccepts a second{ exact?: boolean }argument;exact: trueremoves only entries whose key matcheswhatexactly instead of any entry whose key starts withwhat. (by @alexander-akait in #591)v5.21.6Compare Source
Patch Changes
Speed up alias resolution on the hot path. (by @alexander-akait in #589)
AliasPlugin/TsconfigPathsPlugin: bucket compiled alias options by the first char code ofname, so resolves skip options whose name can't possibly match the request's first char. Gated to cases with 2+ distinct first chars so degenerate single-bucket lists (e.g. long alias chains) don't pay for theMap.get.TsconfigPathsPlugin: memoize_selectPathsDataForContext(map, requestPath)per map so the per-source-filecontextListscan only runs once per directory. Gated to maps with 2+ contexts so single-context tsconfigs aren't penalized by the cache lookup.Biggest wins on alias-heavy configs (300+ entries):
huge-alias-miss+151%,huge-alias-list+126%,alias-first-char-miss+120%.v5.21.5Compare Source
Patch Changes
61f36fd)v5.21.4Compare Source
Patch Changes
tsconfig: trueis used, walk up parent directories to findtsconfig.json, matching TypeScript's ownfindConfigFilebehavior. (by @xiaoxiaojx in #585)v5.21.3Compare Source
Patch Changes
pathspattern matches but the mapped path does not exist, matching TypeScript's native resolution behavior. Previously, patterns like"@​*"would block scoped npm packages (e.g.@sentry/react) from resolving vianode_modules. (by @xiaoxiaojx in #579)v5.21.2Compare Source
Patch Changes
Fix TsconfigPathsPlugin circular project references causing stack overflow, add support for extending from unscoped npm packages, and use
statinstead ofreadFilefor existence checks in extends resolution. (by @xiaoxiaojx in #575)perf: dedupe miss paths in
DirectoryExistsPlugin/FileExistsPluginand prune the per-resolveTsconfigPathsPlugincontext scan. (by @alexander-akait in #574)perf: drop a dead Map lookup in
findMatchand flattenAliasFieldPlugin's cache check. (by @alexander-akait in #574)perf: hot-path tweaks in
ImportsFieldPlugin,AliasUtils, andutil/entrypoints. (by @alexander-akait in #574)perf: cut per-resolve allocations in
Resolver.parse,loadDescriptionFile, andTsconfigPathsPlugin._selectPathsDataForContext. (by @alexander-akait in #574)v5.21.1Compare Source
Patch Changes
Allocation-free reductions on hot-path code: hoist
/#/g,/\$/gand/\\/gto module-level constants and gate the corresponding.replacecalls behindincludes(…)so paths/queries/requests without the match char skip the regex state machine entirely (the common case); share a singleEMPTY_NO_MATCHtuple instead of allocating[[], null]per "no match" / "no condition matched" return; switchdirectMapping'sfor...ofovermappingTargetand inner results to indexed loops to avoid iterator-object allocation per call; inlineisConditionalMappingat its two hot-path call sites and merge the duplicatedefault/conditionNames.has(condition)branches incomputeConditionalMapping; replaceinvalidSegmentRegEx.exec(…) !== nullwith.test(…)(no match-array allocation); drop the deaddeprecatedInvalidSegmentRegEx.test(…) !== nullclause inImportsFieldPlugin(.testreturns boolean;true !== nullandfalse !== nullare both true, so it was&& true); drop the redundantrelativePath.length === 0guard before!startsWith("./")inExportsFieldPlugin(the empty-string case is already covered). (by @alexander-akait in #558)restore plugin compatibility for
[...resolveContext.stack]iteration (by @alexander-akait in #569)fix
TsconfigPathsPluginto supportresolveSyncwithuseSyncFileSystemCalls(by @alexander-akait in #572)v5.21.0Compare Source
Minor Changes
Added promise API and support to resolve without
contextandresolveContext. (by @alexander-akait in #520)Add
extensionAliasForExportsoption. Whentrue,extensionAliasalso applies to paths resolved through thepackage.jsonexportsfield. Off by default to match Node.js; opt in for full TypeScript-resolver parity with packages that ship.tssources alongside the compiled.jsthey declare inexports. (by @alexander-akait in #554)Patch Changes
Properly handle DOS device paths (
\\?\…and\\.\…). (by @alexander-akait in #551)Prevent fallback to parent node_modules when the
exportsfield target file is not found. (by @xiaoxiaojx in #495)Imports field spec deviation: non-relative targets (e.g.
"#a": "#b") no longer re-enter imports resolution, aligning with the Node.js ESM spec wherePACKAGE_IMPORTS_RESOLVEdoes not recursively resolve#specifiers. (by @xiaoxiaojx in #503)Previously
{ "#a": "#b", "#b": "./the.js" }would chain-resolve#ato./the.js; now it correctly fails, matching Node.js behavior.Move
cachedJoin/cachedDirname/createCachedBasenamecaches from module-level globals to per-Resolver instances. This prevents unbounded memory growth in long-running processes — when a Resolver is garbage collected, its join/dirname/basename caches are released with it. (by @xiaoxiaojx in #507)Fixed when
tsconfig: trueis used (default config file) and notsconfig.jsonexists. (by @xiaoxiaojx in #502)Apply the
extensionAliasoption to theimportsfield to be align with typescript resolution. (by @alexander-akait in #549)Improved performance of the many plugins. (by @alexander-akait in #529)
Replace the
Set<string>-based resolver stack with a singly-linkedStackEntryclass that exposes a Set-compatible API. (by @xiaoxiaojx in #526)Each
doResolvecall now prepends a single linked-list node instead of cloning the entire Set, making stack push O(1) in time and memory. Recursion detection walks the linked list (O(n)), but because the stack is typically shallow this is much cheaper than cloning a Set per call.Cache the result of
stripJsonComments+JSON.parseinreadJsonusing aWeakMapkeyed by the raw file buffer. This avoids redundant comment-stripping and JSON parsing on every resolve call that reads tsconfig.json files (viastripComments: true), improving TsconfigPathsPlugin warm performance by ~20-35% depending on the depth of theextendschain. (by @xiaoxiaojx in #524)Avoid OOM in CachedInputFileSystem when duration is Infinity. (by @alexander-akait in #527)
v5.20.1Compare Source
Patch Changes
Optimize
TsconfigPathsPluginand fix extends resolution bugs. (by @alexander-akait in #492)Improve resolver cache hit rate. (by @alexander-akait in #492)
v5.20.0Compare Source
Features
baseUrloption to override the tsconfig.json'sbaseUrlFixes
tsconfig.jsontsconfig.jsonv5.19.0Compare Source
Features
tsconfig-paths-webpack-plugin) .v5.18.4Compare Source
Fixes
#/file:schemav5.18.3Compare Source
Fixes
Performance
v5.18.2Compare Source
Fixes
v5.18.1Compare Source
Perf
\0v5.18.0Compare Source
Features
v5.17.1Compare Source
Fixes
exportsandimportsarray target resolvingPerf
v5.17.0Compare Source
Features
defaultcondition to be anywherev5.16.1Compare Source
Bugfixes
v5.16.0Compare Source
Features:
Bugfixes
v5.15.1Compare Source
Bugfixes
pnpapithe issuer belongs tov5.15.0Compare Source
New Features
false/null/undefinedplugins by @alexander-akait in #389Dependencies & Maintenance
New Contributors
Full Changelog: webpack/enhanced-resolve@v5.14.1...v5.15.0
v5.14.1Compare Source
Bugfixes
strictmode is now enabled forenhanced-resolveby @alexander-akait in #381Dependencies & Maintenance
Full Changelog: webpack/enhanced-resolve@v5.14.0...v5.14.1
v5.14.0Compare Source
Features
Bugfixes
resolveby @43081j in #357aliasFieldswas not being applied to packageexportsfield by @alexander-akait in #380Dependencies & Maintenance
checkout,setup-node, andcodecovgithub actions by @snitin315 in #378New Contributors
Full Changelog: webpack/enhanced-resolve@v5.13.0...v5.14.0
v5.13.0Compare Source
Features
withFileTypesoptions from FileSystem API by @fu1996 in #374Bugfixes
Dependencies
Developer Experience
conditionNamesdefault by @43081j in #359New Contributors
Full Changelog: webpack/enhanced-resolve@v5.12.0...v5.13.0
v5.12.0Compare Source
v5.11.0Compare Source
Features
v5.10.0Compare Source
Features
extensionAliasoptionBugfixes
importsfieldv5.9.3Compare Source
Bugfixes
aliaswhen#v5.9.2Compare Source
Bugfixes
v5.9.1Compare Source
Bugfixes
v5.9.0Compare Source
Features
yieldoption to allow reporting multiple resultsContributing
v5.8.3Compare Source
Bugfix
.in abrowserfieldv5.8.2Compare Source
Bugfix
importsfield)v5.8.1Compare Source
Bugfix
v5.8.0Compare Source
Bugfixes
enforceExtensionto true whenextensionsincludes an empty string (to specify the exact order)v5.7.0Compare Source
Contribution
v5.6.0Compare Source
Features
v5.5.0Compare Source
Features
preferAbsoluteoption to prefer absolute paths over rootsv5.4.1Compare Source
Bugfixes
exportsfield in packagesContribution
v5.4.0Compare Source
Features
Bugfixes
v5.3.2Compare Source
Bugfix
v5.3.1Compare Source
Bugfixes
v5.3.0Compare Source
Bugfixes
v5.2.0Compare Source
Features
lstatto filesystem interface and CachedFileSystem#in requests#in paths#will be escaped in the resulting pathBugfixes
optionsargument in filesystem methods when using the SyncAsyncFileSystem decoratorv5.1.0Compare Source
Features
preferRelativeoptionBugfixes
v5.0.0Compare Source
Features
joinexpected from filesystemalias: { something: false }exportsfield supportexportsFieldsoptionconditionNamesoptionexportsfield is presentrestrictionsoption, which allows to restrict the allowed paths to resolve toorootsoptionfullySpecifiedoption for better node.js esm compatoptionsargument for all methodsimportsfield in package.jsonfallbackoption, which is likealiasbut is only activated when normal resolving failsRemovals
Bugfixes
"main": "."crashmodule/now correctly resolves to directory and not tomodule.jsas fileContribution
Performance
aliasFields,descriptionFiles,extensions,modules,mainFieldsandmainFilesInternals
@scope/nameConfiguration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.