Avatar for the webpack user
webpack
enhanced-resolve
BlogDocsChangelog

perf: bucket alias options by first char & sort exports keys by priority

#589Merged
Comparing
claude/improve-performance-nbabA
(
932e2ff
) with
main
(
6a83888
)
CodSpeed Performance Gauge
+94%
Improvement
7
Regression
3
Untouched
128

Benchmarks

138 total
deep-hierarchy: relative from 10-deep dir (warm)
benchmark/cases/deep-hierarchy/index.bench.mjs
CodSpeed Performance Gauge
-95%
1 KB18.6 KB
prefer-relative: bare-as-relative (warm)
benchmark/cases/prefer-relative/index.bench.mjs
CodSpeed Performance Gauge
-36%
2 KB3.1 KB
realistic-midsize: mixed batch (cold cache)
benchmark/cases/realistic-midsize/index.bench.mjs
CodSpeed Performance Gauge
-14%
7 ms8.2 ms
alias-realistic: @/path + @components aliases (warm)
benchmark/cases/alias-realistic/index.bench.mjs
CodSpeed Performance Gauge
×770
402,544 B520 B
huge-alias-list: 300+8 aliases, match near end
benchmark/cases/huge-alias-list/index.bench.mjs
CodSpeed Performance Gauge
×2.5
3.3 ms1.4 ms
alias-first-char-miss: 300 aliases, scoped tail matches
benchmark/cases/alias-first-char-miss/index.bench.mjs
CodSpeed Performance Gauge
×2.3
3.6 ms1.5 ms
cache-predicate: mixed cached/uncached requests (warm)
benchmark/cases/cache-predicate/index.bench.mjs
CodSpeed Performance Gauge
×2.1
4 ms1.9 ms
alias-realistic: @/path + @components aliases (warm)
benchmark/cases/alias-realistic/index.bench.mjs
CodSpeed Performance Gauge
+56%
4.1 ms2.6 ms
large-alias-list: 50+8 aliases, match near end
benchmark/cases/large-alias-list/index.bench.mjs
CodSpeed Performance Gauge
+35%
1.8 ms1.3 ms
alias-wildcard-scan: 100+1 wildcard + 1 exact
benchmark/cases/alias-wildcard-scan/index.bench.mjs
CodSpeed Performance Gauge
+32%
3.1 ms2.3 ms
prefer-absolute: absolute paths (warm)
benchmark/cases/prefer-absolute/index.bench.mjs
CodSpeed Performance Gauge
+7%
1.9 KB1.8 KB
description-files-multi: package.json + bower + component (warm)
benchmark/cases/description-files-multi/index.bench.mjs
CodSpeed Performance Gauge
+7%
1.9 KB1.8 KB
fully-specified: ESM-style imports (warm)
benchmark/cases/fully-specified/index.bench.mjs
CodSpeed Performance Gauge
+7%
1.9 KB1.8 KB
cache-predicate: mixed cached/uncached requests (warm)
benchmark/cases/cache-predicate/index.bench.mjs
CodSpeed Performance Gauge
+7%
2 KB1.9 KB
symlinks: follow symlinks=true (warm)
benchmark/cases/symlinks/index.bench.mjs
CodSpeed Performance Gauge
+4%
134.5 KB129.3 KB
node-compare: enhanced-resolve async x 1000 (no cache)
benchmark/cases/node-compare/index.bench.mjs
CodSpeed Performance Gauge
+1%
176.5 KB174.8 KB
alias-field: browser field (warm)
benchmark/cases/alias-field/index.bench.mjs
CodSpeed Performance Gauge
+1%
1.5 ms1.5 ms
node-compare: enhanced-resolve async x 1000 (fs cache)
benchmark/cases/node-compare/index.bench.mjs
CodSpeed Performance Gauge
+1%
142.1 ms141.2 ms
tsconfig-paths: 5 path prefixes (warm)
benchmark/cases/tsconfig-paths/index.bench.mjs
CodSpeed Performance Gauge
0%
2.3 ms2.3 ms
failed-resolution: missing files + packages
benchmark/cases/failed-resolution/index.bench.mjs
CodSpeed Performance Gauge
0%
1.7 ms1.7 ms
main-field: browser/module/main combos (warm)
benchmark/cases/main-field/index.bench.mjs
CodSpeed Performance Gauge
0%
1.1 ms1.1 ms
symlinks: symlinks=false (warm)
benchmark/cases/symlinks/index.bench.mjs
CodSpeed Performance Gauge
0%
407.9 µs407.4 µs
node-compare: enhanced-resolve async x 1000 (fs + unsafeCache)
benchmark/cases/node-compare/index.bench.mjs
CodSpeed Performance Gauge
0%
27.3 ms27.3 ms
modules-addrs-cached: 8 bare resolves from one 8-deep dir
benchmark/cases/modules-addrs-cached/index.bench.mjs
CodSpeed Performance Gauge
0%
2.9 ms2.9 ms
realistic-midsize: mixed batch (cold cache)
benchmark/cases/realistic-midsize/index.bench.mjs
CodSpeed Performance Gauge
0%
103.3 KB103.2 KB

Commits

Click on a commit to change the comparison range
Base
main
6a83888
+89.53%
perf: cache tsconfig context selection & bucket exports/imports keys
1adbc84
10 days ago
by claude
×2.2
perf: skip alias bucket lookup when there's only one bucket
5531443
10 days ago
by claude
-1.5%
chore: add changelog entry
5d5fde8
10 days ago
by claude
×2.3
perf: cache exports/imports field processor result per (field, conds, request)
a725274
10 days ago
by claude
+9.15%
perf: skip TsconfigPaths context cache for single-context tsconfigs
56231bc
10 days ago
by claude
+72.74%
fix(TsconfigPathsPlugin): TS narrowing for cache perMap
c7da3d4
10 days ago
by claude
-65.62%
perf: revert exports/imports processor result cache
2613264
10 days ago
by claude
perf: skip exports/imports bucket build for fields with ≤8 keys
86c62ec
10 days ago
by claude
perf: revert entrypoints.js sort + bucket optimization
932e2ff
10 days ago
by claude
© 2026 CodSpeed Technology
Home Terms Privacy Docs