Repository navigation
Conversation
This was referenced Oct 8, 2026
reggi
added a commit
that referenced
this pull request
Oct 16, 2026
Use the regex-free forward scanner from PR #918 while retaining the existing regex exports. Include regression coverage for compatibility, exported regex preservation, and parsing without COMPARATORTRIM execution. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
reggi
force-pushed
the
reggi/improve-range-parsing-performance
branch
from
October 16, 2026 19:33
66d057c to
b598ea8
Compare
reggi
force-pushed
the
reggi/chore-adds-tests
branch
from
October 16, 2026 19:33
6e8d7d1 to
0fc683a
Compare
This was referenced Oct 16, 2026
nishantms
previously approved these changes
Oct 16, 2026
martinrrm
previously approved these changes
Oct 19, 2026
nkolev92
previously approved these changes
Oct 19, 2026
| whitespace[char.charCodeAt(0)] = 1 | ||
| } | ||
|
|
||
| /** |
There was a problem hiding this comment.
nit: The full description on helpers like isWhitespace, isDigit and a few others feel heavier than the implementation.
Just something to consider.
| } | ||
|
|
||
| /** | ||
| * Reads a number using the old regex's length and leading-zero rules. |
There was a problem hiding this comment.
This is a temporal comment, so it only makes sense in the context of the PR, but probably needs more detail to stand independently.
reggi
added a commit
that referenced
this pull request
Oct 20, 2026
## Summary - Add regression fixtures and integration coverage for comparator whitespace, equality boundaries, and malformed loose alternatives. - Cover long prerelease identifiers, build-metadata normalization, and existing version limits across strict/loose and prerelease options. - Tests only; no production behavior changes. ## Stack First of two stacked PRs; followed by #918. Contains only commit 1eda6b4. Merge this PR before the performance implementation. ## Validation Full `npm test` (including coverage, ESLint, and template checks) passes on the combined stack. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
reggi
dismissed stale reviews from nkolev92, martinrrm, and nishantms
October 20, 2026 17:07
The base branch was changed.
reggi
added a commit
that referenced
this pull request
Oct 20, 2026
## Summary Backport the v7 range parsing coverage from #917 to v5. Add coverage for comparator whitespace normalization, range parsing options, equality boundaries, malformed loose alternatives, long identifiers, and build metadata. Use the same range fixture inputs and options as v7 while preserving v5-specific expected results. Tests only; no production code or dependency changes. ## Stack First of two stacked v5 backport PRs, based on `release/v5`. Contains test commit `8bbf475`. The follow-up backport of the v7 performance fix in #918 targets this branch. Merge this PR before the v5 fix. The follow-up v5 fix is #927. ## Validation The full v5 test suite passed locally on Node 20.19.5 with 100% statement, branch, function, and line coverage; one test was skipped. The full supported Node-version matrix remains unverified locally. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
reggi
added a commit
that referenced
this pull request
Oct 20, 2026
## Summary Backport the v7 range parsing coverage from #917 to v6. Add coverage for comparator whitespace normalization, range parsing options, equality boundaries, malformed loose alternatives, long identifiers, and build metadata. Use the same range fixture inputs and options as v7 while preserving v6-specific expected results. Tests only; no production code or dependency changes. ## Stack First of two stacked v6 backport PRs, based on `release/v6`. Contains test commit `b381d7f`. The follow-up backport of the v7 performance fix in #918 targets this branch. Merge this PR before the v6 fix. The follow-up v6 fix is #925. ## Validation The full v6 test suite passed locally on Node 20.19.5 with 100% statement, branch, function, and line coverage; one test was skipped. The full supported Node-version matrix remains unverified locally. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
Use the regex-free forward scanner from PR #918 while retaining the existing regex exports. Include regression coverage for compatibility, exported regex preservation, and parsing without COMPARATORTRIM execution. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
reggi
force-pushed
the
reggi/improve-range-parsing-performance
branch
from
October 21, 2026 19:19
b598ea8 to
1b3a949
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Stack
Originally stacked on #917, which was squash-merged into
mainas 7257c14. Rebased ontomainafter that merge so this PR contains only the comparator normalization implementation and its tests. The implementation patch is unchanged.Validation
npm testpassed: 54 test files, 100% coverage, ESLint, and template checks.Performance tradeoff
Local Node v26 benchmarks showed approximately 6–7% slower ordinary uncached Range parsing versus the original regex. The shared byte-table lookup did not introduce the additional slowdown observed with Set-based membership checks. Measurements are local microbenchmarks, not cross-runtime guarantees.