swc-project
swc
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
docs(es/minifier): Document local invariants of the console noop substitution Per the AGENTS.md guidance for assumptions beyond the documented list: - Own overrides of `bind`/`toString`/`valueOf` on a console method are not preserved; the names are matched statically, as terser does. - The hoisted `console == null` check reads the global twice, so the binding is assumed stable rather than a side-effectful accessor.
striedinger:fix/minifier-drop-console-bind
14 hours ago
fix(es/minifier): freshen copied IIFE parameters
marcoshernanz:codex/fix-cloned-iife-mangle-bindings
14 hours ago
fix(es/minifier): Preserve per-hop ?. semantics, drop the Function.prototype noop, move exec tests into fixtures - Guard per optional hop: `console?.error.bind(x)` hoists the console check (`console == null ? void 0 : (console.error && noop).bind()`), so a nullish `console` still short-circuits while a nullish `console.error` still throws at the `.bind` access. - Revert the ES5 noop to `function () {}`: `Function.prototype` relies on the mutable global `Function`. The remaining ES5 deviation (constructing a dropped bound method succeeds) is documented as a local invariant. - Replace the inline exec tests with fixture suites per the fixture test guide, adding a nullish-console fixture.
striedinger:fix/minifier-drop-console-bind
15 hours ago
fix(es/minifier): preserve effects of returned value calls
marcoshernanz:codex/fix-pure-callee-return-call
15 hours ago
fix(es/minifier): Use Function.prototype as the ES5 noop, carry ?. across the rewritten member access - For ES5 targets, substitute `Function.prototype` instead of `function () {}`: it is callable, returns `undefined` and, like the native console methods, is not a constructor. - When the short-circuit guard is inserted, make the rewritten member access optional so an earlier `?.` (e.g. `console?.error.bind(x)`) still lets the chain yield `undefined` for a nullish `console`.
striedinger:fix/minifier-drop-console-bind
15 hours ago
ci: acknowledge h2 advisory
fix/drop-console-consumed-methods
15 hours ago
fix(es/minifier): Restrict noop substitution to known console methods, handle computed props, make the noop non-constructible - Only substitute a noop when the call goes through a known `console` method; custom properties on `console` collapse to `undefined` as before. - Recognize `console.error["bind"]` (computed, statically known names) the same as `console.error.bind`. - With `ecma` >= 2015, emit an arrow for the noop so the result of `.bind()` is not constructible, matching the native console methods.
striedinger:fix/minifier-drop-console-bind
16 hours ago
fix(es/minifier): Limit noop substitution to known Function.prototype methods, preserve optional short-circuiting, add changeset
striedinger:fix/minifier-drop-console-bind
16 hours ago
Latest Branches
CodSpeed Performance Gauge
-3%
fix(es/minifier): Don't replace value-used console.*.bind() calls with undefined
#12138
14 hours ago
3e577e3
striedinger:fix/minifier-drop-console-bind
CodSpeed Performance Gauge
0%
fix(es/minifier): freshen copied IIFE parameters
#12141
14 hours ago
1745810
marcoshernanz:codex/fix-cloned-iife-mangle-bindings
CodSpeed Performance Gauge
0%
fix(es/minifier): preserve effects of returned value calls
#12140
15 hours ago
9a1fb44
marcoshernanz:codex/fix-pure-callee-return-call
© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs