Skip to content

chore(release): new release - #245

Merged
alexander-akait merged 1 commit into
mainfrom
changeset-release/main
Jul 6, 2026
Merged

chore(release): new release#245
alexander-akait merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actions github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

webpack-sources@3.5.1

Patch Changes

  • perf: stream potential tokens in OriginalSource instead of materialising an array (by @alexander-akait in #246)

    OriginalSource.streamChunks (and therefore map() / sourceAndMap()) previously built the full splitIntoPotentialTokens array of substrings and then iterated it — even though map() and sourceAndMap() run with finalSource: true and discard every chunk substring. The scan is now streamed by offset, so chunk substrings are only allocated when actually emitted. This removes the intermediate array and, on the dominant final-source paths, all per-token slices: map() / sourceAndMap() allocate ~38–46% less memory and run ~15–40% faster.

  • Reduce allocations and CPU in map() / sourceAndMap(): mappings are serialized into a reused byte buffer instead of per-mapping strings, ReplaceSource verifies original content through a line-offset index instead of splitting sources into line arrays, and ReplaceSource.streamChunks emits position-only chunks and returns the final source directly when finalSource is requested. (by @alexander-akait in #251)

  • Skip sorting ReplaceSource replacements when they were added in order. (by @alexander-akait in #249)

  • perf: use lookup table in splitIntoPotentialTokens for faster character classification (by @xiaoxiaojx in #240)

    Replace multi-comparison chains (4 comparisons in phase 1, 6 in phase 2) with a single Uint8Array bitmask lookup per character. This reduces per-character branching overhead, yielding ~7% improvement on typical source and ~21% on large sources.

@github-actions
github-actions Bot force-pushed the changeset-release/main branch 4 times, most recently from 2398608 to 720aa64 Compare July 5, 2026 12:18
@github-actions
github-actions Bot force-pushed the changeset-release/main branch from 720aa64 to 06feccc Compare July 5, 2026 19:49
@alexander-akait
alexander-akait merged commit 210e0a4 into main Jul 6, 2026
1 check passed
@alexander-akait
alexander-akait deleted the changeset-release/main branch July 6, 2026 11:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant