Avatar for the webpack user
webpack
webpack-sources
BlogDocsChangelog

feat: port performance fixes and ignoreList propagation from rspack-sources

#226
Comparing
claude/rspack-sources-perf-JEowh
(
33df884
) with
main
(
7ad6559
)
CodSpeed Performance Gauge
-15%
Improvement
7
Regression
64
Untouched
140

Benchmarks

211 total
clear-cache memory: unique tasks (clearCache default)
benchmark/memory/clear-cache/index.bench.mjs
CodSpeed Performance Gauge
-14%
3.2 MB3.7 MB
compat-source: source() (wrapping SourceLike)
benchmark/cases/compat-source/index.bench.mjs
CodSpeed Performance Gauge
-13%
154.6 µs178.1 µs
raw-source: buffers() cached
benchmark/cases/raw-source/index.bench.mjs
CodSpeed Performance Gauge
-13%
171.4 µs197.3 µs
original-source: source()
benchmark/cases/original-source/index.bench.mjs
CodSpeed Performance Gauge
-13%
82 µs94.3 µs
concat-source: new ConcatSource() (10 raw)
benchmark/cases/concat-source/index.bench.mjs
CodSpeed Performance Gauge
-13%
232.9 µs267.9 µs
original-source: buffers() (from buffer)
benchmark/cases/original-source/index.bench.mjs
CodSpeed Performance Gauge
-13%
89 µs102.2 µs
prefix-source: new PrefixSource(str, Source)
benchmark/cases/prefix-source/index.bench.mjs
CodSpeed Performance Gauge
-13%
122.2 µs140.2 µs
prefix-source: new PrefixSource(str, string)
benchmark/cases/prefix-source/index.bench.mjs
CodSpeed Performance Gauge
-13%
122.6 µs140.5 µs
compat-source: buffer() (delegated)
benchmark/cases/compat-source/index.bench.mjs
CodSpeed Performance Gauge
-13%
171.1 µs196 µs
compat-source: sourceAndMap()
benchmark/cases/compat-source/index.bench.mjs
CodSpeed Performance Gauge
-12%
237.6 µs270 µs
original-source memory: new OriginalSource()
benchmark/memory/original-source/index.bench.mjs
CodSpeed Performance Gauge
-12%
1.3 KB1.4 KB
concat-source: new ConcatSource() (strings)
benchmark/cases/concat-source/index.bench.mjs
CodSpeed Performance Gauge
-12%
265.5 µs300.6 µs
concat-source memory: source() concatenates children
benchmark/memory/concat-source/index.bench.mjs
CodSpeed Performance Gauge
-11%
356.1 KB401.2 KB
original-source: getName()
benchmark/cases/original-source/index.bench.mjs
CodSpeed Performance Gauge
-11%
109 µs122.3 µs
concat-source memory: new ConcatSource(...children)
benchmark/memory/concat-source/index.bench.mjs
CodSpeed Performance Gauge
×5.1
21.1 KB4.1 KB
concat-source memory: map({ columns: true }) composes child maps
benchmark/memory/concat-source/index.bench.mjs
CodSpeed Performance Gauge
+70%
4.1 MB2.4 MB
source-map-source memory: map({ columns: true })
benchmark/memory/source-map-source/index.bench.mjs
CodSpeed Performance Gauge
+33%
1,040 B784 B
original-source memory: sourceAndMap({ columns: true })
benchmark/memory/original-source/index.bench.mjs
CodSpeed Performance Gauge
+32%
2.1 MB1.6 MB
original-source memory: map({ columns: true }) builds full mappings
benchmark/memory/original-source/index.bench.mjs
CodSpeed Performance Gauge
+31%
1.9 MB1.4 MB
prefix-source memory: new PrefixSource()
benchmark/memory/prefix-source/index.bench.mjs
CodSpeed Performance Gauge
+22%
1.4 KB1.2 KB
cached-source memory: warm sourceAndMap() returns cached references
benchmark/memory/cached-source/index.bench.mjs
CodSpeed Performance Gauge
+13%
288 B256 B
webpack-20961: warm + clearCache({maps,source:false,parsedMap}) per chunk (PR #20963)
benchmark/memory/webpack-20961/index.bench.mjs
CodSpeed Performance Gauge
+9%
2.6 MB2.4 MB
webpack-20961: warm + full clearCache() per chunk (most aggressive)
benchmark/memory/webpack-20961/index.bench.mjs
CodSpeed Performance Gauge
+9%
2.2 MB2 MB
clear-cache memory: unique tasks (clearCache maps + parsedMap, keep source)
benchmark/memory/clear-cache/index.bench.mjs
CodSpeed Performance Gauge
+6%
4 MB3.8 MB
cached-source memory: cold sourceAndMap() populates all caches
benchmark/memory/cached-source/index.bench.mjs
CodSpeed Performance Gauge
+4%
199.1 KB190.7 KB

Commits

Click on a commit to change the comparison range
Base
main
7ad6559
-17.13%
feat: port performance fixes and ignoreList propagation from rspack-sources
16f8fc2
1 day ago
by claude
+3.62%
perf: eliminate per-call closure + hidden-class churn from rspack-sources port
e49f79c
1 day ago
by claude
+25.02%
refactor: route per-source extras off onSource onto an options side-channel
3107f43
1 day ago
by claude
-22.24%
chore: collapse package.json arrays to single-line per prettier rule
023615a
1 day ago
by claude
-15.62%
test: cover the new ignoreList/originalLines paths
222fea5
1 day ago
by claude
+24.33%
test: cover combined source-map onSourceInfo remap branches
01722ec
1 day ago
by claude
-9.92%
revert: strip ignoreList/debugId/sourceRoot propagation feature
5bfda14
1 day ago
by claude
-0.45%
test: cover ReplaceSource empty-replacement + column-tracking branches
c971353
1 day ago
by claude
-1.55%
test: mark unreachable V8<7.0 stable-sort fallback with istanbul ignore
185df9f
1 day ago
by claude
+26.89%
revert: strip OriginalSource + ReplaceSource changes for clean A/B test
ee1a250
13 hours ago
by claude
-32.83%
chore: regenerate types.d.ts after OriginalSource revert
a38b924
13 hours ago
by claude
+7.93%
test: add ReplaceSource tests for trailing inserts, empty replacement, column tracking
3908b55
13 hours ago
by claude
+19.88%
test: cover ReplaceSource multi-source streamChunks path
0cf4d54
13 hours ago
by claude
+22.34%
chore: satisfy prefer-destructuring lint rule in ReplaceSource test
2d5a7ea
13 hours ago
by claude
-17.62%
perf(getFromStreamChunks): keep setAtIndex PACKED to fix combined-inner regression
c897cfc
12 hours ago
by claude
-26.93%
revert(getFromStreamChunks): drop setAtIndex helper, keep inline padding
25e1418
12 hours ago
by claude
+5.26%
perf: re-layer ReplaceSource fast paths + OriginalSource.originalLines + setAtIndex
33508f4
11 hours ago
by claude
-0.23%
test+chore: cover originalLines(), simplify setAtIndex, istanbul-ignore V8 fallback
c47755e
11 hours ago
by claude
+2.14%
chore: istanbul-ignore pre-existing ReplaceSource chunk-skipping edges
4614799
11 hours ago
by claude
-4.23%
test: convert remaining /* istanbul ignore next */ to ignore-else
23e0966
11 hours ago
by claude
-3.49%
test: cover in-chunk multi-line replacement + trailing-remainer same-line cases
f4384e9
11 hours ago
by claude
+0.31%
chore: satisfy no-lonely-if eslint rule from the chunk-skipping refactor
33df884
11 hours ago
by claude
© 2026 CodSpeed Technology
Home Terms Privacy Docs