Avatar for the webpack user
webpack
enhanced-resolve
BlogDocsChangelog

perf: faster getPaths/basename/isSubPath + per-fs getPaths cache

#535
Comparing
claude/search-perf-improvements-GXYWT
(
f86e4ee
) with
main
(
1c52e71
)
CodSpeed Performance Gauge
-48%
Improvement
2
Regression
2
Untouched
63
New
2

Benchmarks

69 total
cache-predicate: mixed cached/uncached requests (warm)
benchmark/cases/cache-predicate/index.bench.mjs
CodSpeed Performance Gauge
-48%
2.2 ms4.2 ms
main-files: [main, entry, index] (warm)
benchmark/cases/main-files/index.bench.mjs
CodSpeed Performance Gauge
-24%
925.6 µs1,223.8 µs
tsconfig-paths: 5 path prefixes (warm)
benchmark/cases/tsconfig-paths/index.bench.mjs
CodSpeed Performance Gauge
+23%
3.3 ms2.7 ms
realistic-midsize: mixed batch (cold cache)
benchmark/cases/realistic-midsize/index.bench.mjs
CodSpeed Performance Gauge
+15%
8.2 ms7.1 ms
is-sub-path: all-pairs parent × request (no trailing sep)
benchmark/cases/is-sub-path/index.bench.mjs
CodSpeed Performance Gauge
N/A
N/A1.7 ms
is-sub-path: all-pairs parent (trailing sep) × request
benchmark/cases/is-sub-path/index.bench.mjs
CodSpeed Performance Gauge
N/A
N/A1.8 ms
tsconfig-extends: 3-level extends chain (warm)
benchmark/cases/tsconfig-extends/index.bench.mjs
CodSpeed Performance Gauge
+9%
2.6 ms2.4 ms
node-compare: enhanced-resolve sync x 1000 (fs cache)
benchmark/cases/node-compare/index.bench.mjs
CodSpeed Performance Gauge
+4%
87.8 ms84.1 ms
deep-package-subpath: pkg/a/b/c requests (warm)
benchmark/cases/deep-package-subpath/index.bench.mjs
CodSpeed Performance Gauge
+4%
2.1 ms2.1 ms
exports-patterns-many: 6 prefixes x 4 leaves (warm)
benchmark/cases/exports-patterns-many/index.bench.mjs
CodSpeed Performance Gauge
+3%
5.2 ms5 ms
exports-field: conditions=require,node (warm)
benchmark/cases/exports-field/index.bench.mjs
CodSpeed Performance Gauge
+3%
2.3 ms2.2 ms
unsafe-cache: ON, 3x repeat
benchmark/cases/unsafe-cache/index.bench.mjs
CodSpeed Performance Gauge
+3%
973.1 µs943.4 µs
deep-hierarchy: bare specifier from 10-deep dir (warm)
benchmark/cases/deep-hierarchy/index.bench.mjs
CodSpeed Performance Gauge
+3%
2.4 ms2.3 ms
node-compare: enhanced-resolve promise x 1000 (fs cache)
benchmark/cases/node-compare/index.bench.mjs
CodSpeed Performance Gauge
+3%
160.7 ms156.3 ms
mixed-conditions: 4 condition sets against nested exports
benchmark/cases/mixed-conditions/index.bench.mjs
CodSpeed Performance Gauge
+3%
1.1 ms1.1 ms
unsafe-cache-key-build: 48 distinct requests, 3x pass, cached
benchmark/cases/unsafe-cache-key-build/index.bench.mjs
CodSpeed Performance Gauge
+3%
5.8 ms5.7 ms
exports-field: conditions=import,node (warm)
benchmark/cases/exports-field/index.bench.mjs
CodSpeed Performance Gauge
+3%
2.8 ms2.7 ms
fallback: node-builtin polyfill aliases (warm)
benchmark/cases/fallback/index.bench.mjs
CodSpeed Performance Gauge
+3%
1.4 ms1.3 ms
modules-flat-addrs: 8-deep dir × 4 modules, 4 bare resolves
benchmark/cases/modules-flat-addrs/index.bench.mjs
CodSpeed Performance Gauge
+3%
2.7 ms2.6 ms
node-compare: enhanced-resolve async x 1000 (fs cache)
benchmark/cases/node-compare/index.bench.mjs
CodSpeed Performance Gauge
+2%
162.7 ms158.7 ms
realistic-midsize: mixed batch (warm cache)
benchmark/cases/realistic-midsize/index.bench.mjs
CodSpeed Performance Gauge
+2%
3.2 ms3.1 ms
failed-resolution: missing files + packages
benchmark/cases/failed-resolution/index.bench.mjs
CodSpeed Performance Gauge
+2%
1.8 ms1.7 ms
query-fragment: ?query + #fragment mix (warm)
benchmark/cases/query-fragment/index.bench.mjs
CodSpeed Performance Gauge
+2%
1.8 ms1.8 ms
main-field: browser/module/main combos (warm)
benchmark/cases/main-field/index.bench.mjs
CodSpeed Performance Gauge
+2%
1.3 ms1.3 ms
sync-resolver: resolveSync mixed batch (warm)
benchmark/cases/sync-resolver/index.bench.mjs
CodSpeed Performance Gauge
+1%
706.9 µs696.8 µs

Commits

Click on a commit to change the comparison range
Base
main
1c52e71
-47.09%
perf: collapse doResolve intermediate context + keep prior hot-path wins
3ebcc7e
15 hours ago
by claude
-0.87%
perf: revert Resolver.isDirectory charCode change
0ab316d
14 hours ago
by claude
-0.47%
perf: revert createInnerContext + findMatch changes — CodSpeed regressions
c70be4d
14 hours ago
by claude
+0.08%
perf: short-circuit parseIdentifier FILE_REG_EXP by first-char charCode
f86e4ee
14 hours ago
by claude
© 2026 CodSpeed Technology
Home Terms Privacy Docs