Skip to content

Releases: webpack/enhanced-resolve

v5.24.5

Choose a tag to compare

@github-actions github-actions released this 30 Jul 10:14
aefeac3

Patch Changes

  • Soft-fail when auto tsconfig discovery loads a broken config, and keep relative extends paths relative. (by @xiaoxiaojx in #645)

v5.24.4

Choose a tag to compare

@github-actions github-actions released this 28 Jul 17:22
24c3521

Patch Changes

  • Keep the original request resolvable when extensionAlias lists its own extension. (by @alexander-akait in #641)

  • Fix string restrictions boundary checks: a restriction ending with a separator no longer rejects everything inside it, restrictions are normalized before they are compared, and a Windows path now matches the way path.win32 does, treating / and \ as interchangeable and comparing case-insensitively, while \ stays a filename character in a posix path. The same comparison backs tsconfig path matching. (by @alexander-akait in #643)

  • Treat a UNC path (\\server\share\…) as a Windows path, so it normalizes, joins and walks up with path.win32 semantics instead of being taken for a bare module request. (by @alexander-akait in #644)

v5.24.3

Choose a tag to compare

@github-actions github-actions released this 20 Jul 05:39
b37222e

Patch Changes

  • Resolve tsconfig extends package specifiers from ancestor node_modules directories (workspace hoisting). (by @alexander-akait in #631)

v5.24.2

Choose a tag to compare

@github-actions github-actions released this 06 Jul 11:36
82026bf

Patch Changes

  • Batch cached filesystem callbacks from one synchronous burst into a single tick. (by @alexander-akait in #623)

v5.24.1

Choose a tag to compare

@github-actions github-actions released this 24 Jun 14:59
6951d57

Patch Changes

  • Reduce hot-path allocations in the resolve pipeline. (by @xiaoxiaojx in #615)

v5.24.0

Choose a tag to compare

@github-actions github-actions released this 11 Jun 14:06
af82f5a

Minor Changes

  • Allow the context path and request arguments of resolve (and resolveSync/resolvePromise) to accept file: URL instances, converting them to filesystem paths. Plain strings stay literal paths, matching Node's fs. (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 the path, url and graceful-fs builtins (Node, Deno and Bun keep using the native ones) so the package bundles for the browser — supply your own fileSystem there. (by @alexander-akait in #606)

  • Rename the positional resolve/resolveSync/resolvePromise parameters to parent/specifier (from path/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.0

Choose a tag to compare

@github-actions github-actions released this 05 Jun 13:46
476fad1

Minor Changes

  • Allow the path-like resolve options roots, modules, alias/fallback targets, restrictions, and tsconfig (the config file, configFile, baseUrl, and references) to accept file URL instances (such as new URL("./dir/", import.meta.url)), converting them to filesystem paths. Plain strings are still treated as literal paths, matching Node's fs. (by @alexander-akait in #604)

v5.22.2

Choose a tag to compare

@github-actions github-actions released this 03 Jun 17:43
487659b

Patch Changes

  • Fall back to the next modules entry when a package exports target is filtered out by restrictions, instead of throwing. (by @alexander-akait in #600)

v5.22.1

Choose a tag to compare

@github-actions github-actions released this 28 May 16:15
ec96727

Patch Changes

  • Fix restrictions bypass via an in-root symlink pointing outside the root. (by @alexander-akait in #595)

v5.22.0

Choose a tag to compare

@github-actions github-actions released this 22 May 09:39
25b923a

Minor Changes

  • CachedInputFileSystem#purge accepts a second { exact?: boolean } argument; exact: true removes only entries whose key matches what exactly instead of any entry whose key starts with what. (by @alexander-akait in #591)