GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||||||||||
GeezerVison is showing github.com — fix: improve range parsing performance by reggi · Pull Request #918 · npm/node-semver Conversation
|
| whitespace[char.charCodeAt(0)] = 1 | ||
| } | ||
|
|
||
| /** |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
nit: The full description on helpers like isWhitespace, isDigit and a few others feel heavier than the implementation.
Just something to consider.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| } | ||
|
|
||
| /** | ||
| * Reads a number using the old regex's length and leading-zero rules. |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
This is a temporal comment, so it only makes sense in the context of the PR, but probably needs more detail to stand independently.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
## 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 <[email protected]> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
The base branch was changed.
## 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 <[email protected]> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
## 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 <[email protected]> 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 <[email protected]> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
b598ea8 to
1b3a949
Compare
There was an error while loading. Please reload this page.
## Summary Backport the v7 range parsing performance fix from #918 to v6. Replace execution of `COMPARATORTRIM` during range parsing with a regex-free whitespace scanner while preserving the existing exported regexes. Preserve v6-specific parsing behavior, including numeric-first prerelease matching. Add coverage confirming legacy compatibility, exported regex preservation, and parsing without executing `COMPARATORTRIM`. ## Stack Depends on #924, the v6 coverage backport of #917. This PR targets `reggi/chore-adds-tests-v6` so its diff contains only fix commit `9d1812e`. Merge #924 first, then retarget this PR to `release/v6` if GitHub does not do so automatically. ## 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. Additional differential checks matched the legacy regex across 30,870 cases. The full supported Node-version matrix remains unverified locally. Co-authored-by: Copilot <[email protected]> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
## Summary Backport the v7 range parsing performance fix from #918 to v5. Replace execution of `COMPARATORTRIM` during range parsing with a regex-free whitespace scanner while preserving the existing exported regexes. Preserve v5-specific parsing behavior, including numeric-first prerelease matching. Add coverage confirming legacy compatibility, exported regex preservation, and parsing without executing `COMPARATORTRIM`. ## Stack Depends on #926, the v5 coverage backport of #917. This PR targets `reggi/chore-adds-tests-v5` so its diff contains only fix commit `4a94e99`. Merge #926 first, then retarget this PR to `release/v5` if GitHub does not do so automatically. ## 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. Additional differential checks matched the legacy regex across 30,870 cases. The full supported Node-version matrix remains unverified locally. Co-authored-by: Copilot <[email protected]> Copilot-Session: 03b4a44c-26a3-4d56-9b26-cd46006844c6
🤖 I have created a release *beep* *boop* --- ## [7.8.6](v7.8.5...v7.8.6) (2026-11-02) ### Bug Fixes * [`69b305d`](69b305d) [#918](#918) improve range parsing performance (#918) (@reggi, @Copilot) ### Chores * [`7257c14`](7257c14) [#917](#917) cover comparator normalization (#917) (@reggi, @Copilot) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.