-
Notifications
You must be signed in to change notification settings - Fork 416
ruby-3.4/3.4.5 package update #59311
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ruby-3.4/3.4.5 package update #59311
Conversation
octo-sts
bot
commented
Jul 15, 2025
Signed-off-by: wolfi-bot <[email protected]>
🔄 Build Failed: Git Checkout Error
Build Details
Root Cause Analysis 🔍The git checkout step failed because the commit hash expected for tag v3_4_5 (a38531fd3f617bf734ef7d6c595325f69985ea1d) does not match the actual commit hash found in the repository (20cda200d3ce092571d0b5d342dadca69636cb0f). This indicates that either the expected commit hash in the build configuration is incorrect or the tag points to a different commit than expected. 🔍 Build failure fix suggestionsFound similar build failures that have been fixed in the past and analyzed them to suggest a fix: Similar PRs with fixes
Suggested ChangesFile: ruby-3.4.yaml
Replacement: Content: Click to expand fix analysisAnalysisAfter examining the similar fixed build failures, I've identified a common pattern: the expected commit hash in the git-checkout step doesn't match the actual commit hash for the specified tag in the repository. This typically happens because Git tags can point to different types of objects (commit object or tag object), and sometimes a tag points to a tag object which then points to a commit object. When tags are updated or force-pushed in the upstream repository, the commit they point to can change. In all three examples, the fix was to update the expected-commit value to match the actual commit hash that the tag currently points to in the repository. Click to expand fix explanationExplanationThe build is failing because the git-checkout step is looking for a specific commit hash (a38531fd3f617bf734ef7d6c595325f69985ea1d) when checking out the v3_4_5 tag, but the tag actually points to a different commit (20cda200d3ce092571d0b5d342dadca69636cb0f). This mismatch is causing the build to fail. This situation likely occurred because the upstream Ruby repository may have changed what commit the v3_4_5 tag points to. This can happen when tags are moved or force-updated in the upstream repository. The Melange build system enforces this commit hash check to ensure reproducibility and to prevent unexpected changes when building packages. The fix is straightforward: update the expected-commit parameter in the git-checkout step to match the actual commit hash that the v3_4_5 tag currently points to. This allows the build to proceed with the current state of the repository while maintaining the version-specific build. This approach was successfully used in all three of the example fixes where similar issues occurred with GitLab Runner, Calico, and SCons packages. Click to expand alternative approachesAlternative Approaches
Was this comment helpful? Please use 👍 or 👎 reactions on this comment. |
Signed-off-by: Ajay Kemparaj <[email protected]>