-
Notifications
You must be signed in to change notification settings - Fork 64
konflux: unpin uv version for hermetic build #890
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
Conversation
WalkthroughRelaxed the uv constraint in the Containerfile to Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes
Possibly related PRs
Suggested reviewers
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (1)
🧰 Additional context used🧠 Learnings (1)📚 Learning: 2025-11-24T16:58:04.410ZApplied to files:
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)
🔇 Additional comments (3)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
tisnik
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (2)
Containerfile (1)
20-37: Relaxing the uv pin changes hermetic/reproducibility characteristicsSwitching to
pip3.12 install "uv>=0.8.15"means the builder image will pick up newer uv releases over time, which can affect lockfile format, resolution behaviour, oruv syncdefaults and make Konflux builds less reproducible compared to the previously pinned toolchain (and to the project’s general preference for exact pins based on previous sprints).If this drift is intentional for Konflux (so the platform can roll forward uv without touching this repo), it would be good to:
- Explicitly call this out in the PR description or a short comment here.
- Optionally update the commented-out install in the final stage to stay consistent with the new policy if/when it’s re-enabled.
requirements.hermetic.txt (1)
1-2: Hermetic requirements now allow uv and pip to drift; confirm pip unpin is intentionalChanging both lines to:
uv>=0.8.15 pip>=24.2means the “hermetic” toolchain for Konflux can now vary over time for both uv and pip. That may be fine for uv (per the PR objective), but for pip this also weakens strict hermeticity and can introduce behaviour changes when new pip releases land.
Two concrete suggestions:
- Please confirm that unpinning
pipas well asuvis intentional and aligns with your Konflux expectations.- If you do want some guardrails, consider constraining the upper bound (e.g.,
<25) or documenting in a comment that this file is allowed to float for tooling despite the project’s usual exact-pin policy. (Based on learnings, the rest of the stack is typically pinned exactly.)
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
Containerfile(1 hunks)requirements.hermetic.txt(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: matysek
Repo: lightspeed-core/lightspeed-stack PR: 292
File: pyproject.toml:43-45
Timestamp: 2025-08-18T10:55:18.914Z
Learning: The lightspeed-stack project updates dependencies every sprint as part of their regular maintenance cycle, which explains their preference for exact dependency pins rather than version ranges.
📚 Learning: 2025-11-24T16:58:04.410Z
Learnt from: CR
Repo: lightspeed-core/lightspeed-stack PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-24T16:58:04.410Z
Learning: Use Python package manager `uv` with `uv run` prefix for all development commands
Applied to files:
requirements.hermetic.txtContainerfile
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)
- GitHub Check: build-pr
- GitHub Check: Konflux kflux-prd-rh02 / lightspeed-stack-on-pull-request
- GitHub Check: E2E: library mode / azure
- GitHub Check: E2E: library mode / ci
- GitHub Check: E2E: server mode / azure
- GitHub Check: E2E: server mode / ci
Signed-off-by: Haoyu Sun <hasun@redhat.com>
Description
keep uv version up to date.
Type of change
Tools used to create PR
Identify any AI code assistants used in this PR (for transparency and review context)
Related Tickets & Documents
Checklist before requesting a review
Testing
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.