Repository navigation
Strict SemVer checks; keep polling Packagist through transient errors - #70
Merged
Merged
Conversation
There was a problem hiding this comment.
🟢 Approval recommended
The focused validation and retry changes have no identified blocking issues.
No open issues 🎉
What changed in this PR
Tightens version validation across tests and CI, and makes release verification tolerate transient Packagist failures.
Changes:
- Rejects leading zeros in numeric SemVer prerelease identifiers.
- Rejects prereleases of the latest stable release.
- Continues Packagist polling after request or parsing failures.
| File | Description |
|---|---|
| tests/ConvertApi/ConfigurationTest.php | Tightens the version-format assertion. |
| .github/workflows/release.yml | Strengthens tag validation and retries failed Packagist checks. |
| .github/workflows/build.yml | Strengthens version validation and prevents prerelease regressions. |
Review effort: Balanced
Addresses the Copilot review of #69: the Packagist poll in release.yml aborted on the first failed request under bash -e; SemVer validators accepted leading-zero pre-release identifiers; build.yml let VERSION be a pre-release of the latest release. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
tomasr78
force-pushed
the
ci/strict-semver-and-poll-retry
branch
from
October 20, 2026 07:56
415e957 to
5d3ffa6
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.
Follow-up to #69, addressing the three Copilot review points that landed after it was merged:
release.ymlPackagist poll: Actions runs steps withbash -e, so a failedcurlorjqin theREF=$(…)assignment ended the step on the first attempt instead of retrying. It now falls back toREF=''and the loop tries again. (The v3.0.1 release run was not affected: Packagist answered on the first attempt.)build.yml,release.ymlandConfigurationTest: no leading zeros in numeric pre-release identifiers (3.0.1-beta.01), no empty identifiers, and no leading zeros in the core numbers in the test (03.0.1).build.yml: rejects aConvertApi::VERSIONthat is a pre-release of the latest release (e.g.3.0.1-beta.1afterv3.0.1), which SemVer sorts below it.Checked locally: the regex accepts
3.0.1,3.1.0-beta.1,3.1.0-rc.0and3.1.0-x-1.2a, and rejects03.0.1,3.0.1-beta.01,3.0.1-beta..1and3.0.1-. The offline tests pass.🤖 Generated with Claude Code