feat(rust-cmov): add rust-cmov component - #18445
Merged
Merged
Conversation
Copilot started reviewing on behalf of
Autumn Nash (WithEnoughCoffee)
August 14, 2026 20:37
View session
Contributor
There was a problem hiding this comment.
Pull request overview
Adds rust-cmov as a packaged dependency for the RustCrypto/uv dependency chain.
Changes:
- Pins and configures Fedora’s
rust-cmov0.5.4 package. - Disables
%checkpendingproptest1.11. - Adds lock data and rendered packaging files.
Reviewed changes
Copilot reviewed 4 out of 5 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
base/comps/rust-cmov/rust-cmov.comp.toml |
Defines the component and build configuration. |
locks/rust-cmov.lock |
Pins the upstream commit and inputs. |
specs/r/rust-cmov/rust-cmov.spec |
Provides the rendered RPM specification. |
specs/r/rust-cmov/rust-cmov.azl.macros |
Disables package checks. |
specs/r/rust-cmov/sources |
Records the crate checksum. |
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Autumn Nash (WithEnoughCoffee)
added a commit
that referenced
this pull request
Aug 14, 2026
…a2/streebog + compat packages, proptest Bumps shared Rust crypto crates as part of the uv crate-alignment cascade, adding version-pinned compat packages for old consumers. Also adds rust-ctutils (needed transitively via rust-digest's new "mac" feature -> rust-hmac 0.13.0). rust-ctutils disables %check (proptest >=1.11 is a %check-only dep not yet in production) and depends on rust-cmov, which is split into #18445 to land as a real tagged build first -- Koji scratch builds are never tagged, so same-PR sibling packages can't resolve against each other. Reverted the rust-proptest-macro/rust-convert_case bump: it was an optional fix for a theoretical future consumer, and convert_case is itself new/scratch-only, creating the same unresolvable chicken-and-egg dependency.
Autumn Nash (WithEnoughCoffee)
force-pushed
the
feat/rust-cmov
branch
from
August 14, 2026 20:46
fd04606 to
b5b0526
Compare
Copilot started reviewing on behalf of
Autumn Nash (WithEnoughCoffee)
August 14, 2026 20:47
View session
Contributor
Author
|
/azp run |
|
Azure Pipelines: 2 pipeline(s) were filtered out due to trigger conditions. |
reuben olinsky (reubeno)
requested changes
Aug 14, 2026
Copilot started reviewing on behalf of
Autumn Nash (WithEnoughCoffee)
August 14, 2026 21:48
View session
Adds rust-cmov, a new leaf crate not previously packaged in AZL. It provides architecture-specific constant-time predication intrinsics and is a hard (non-dev) BuildRequires of rust-ctutils (crate(cmov/default) >= 0.5.3, < 0.6.0), needed transitively by rust-digest's "mac" feature -> rust-hmac 0.13.0 as part of the uv crate-alignment cascade (#18405, zip transitive prereqs). Split out into its own PR, mirroring the rust-cpubits precedent: Koji scratch builds are never tagged/imported into the target repo, so rust-ctutils's scratch build can never resolve a same-PR sibling's scratch-built cmov output, regardless of build order or retries. This package must land as a real (non-scratch, tagged) build in azl4-build before rust-ctutils (and the rest of the #18405 dependency chain) can pass its scratch-build gate. %check is disabled: proptest is a %check-only (dev-)dependency (crate(proptest/default) >= 1.11.0, < 2.0.0), and production azl4-build only has proptest 1.9.0 today (the 1.11.0 bump lands separately in #18405). The library itself does not need proptest to build.
Autumn Nash (WithEnoughCoffee)
force-pushed
the
feat/rust-cmov
branch
from
August 14, 2026 23:35
46c2296 to
757d01a
Compare
Contributor
Author
|
/azp run |
|
Azure Pipelines: 2 pipeline(s) were filtered out due to trigger conditions. |
Member
|
Autumn Nash (@WithEnoughCoffee) Are you ready to take this out of draft? |
Contributor
Author
Almost working on a few thing. |
Autumn Nash (WithEnoughCoffee)
marked this pull request as ready for review
August 17, 2026 20:50
Copilot started reviewing on behalf of
Autumn Nash (WithEnoughCoffee)
August 17, 2026 20:53
View session
Contributor
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 4 out of 5 changed files in this pull request and generated no new comments.
Suppressed comments (1)
base/comps/rust-cmov/rust-cmov.comp.toml:4
- The follow-up validates the build and dependency list, but
rpm -qRpdoes not inspect the payload or install the new RPMs. A new component still requires the repository's mock-chroot inspection and smoke test: runrpm -qlpfor both generated RPMs inside mock, install them there, and verify thecmov-0.5.4Cargo registry content/capability. Document those results (or why installation cannot be tested) before merge.
spec = { type = "upstream", upstream-distro = { name = "fedora", version = "43" }, upstream-commit = "bc3168902de75d99f5e549f37012cffc50fb7711" }
Contributor
Author
|
/azp run |
|
Azure Pipelines: 2 pipeline(s) were filtered out due to trigger conditions. |
reuben olinsky (reubeno)
approved these changes
Aug 17, 2026
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
Adds
rust-cmov, a new leaf crate not previously packaged in AZL. It providesarchitecture-specific constant-time predication intrinsics and is a hard
(non-dev) BuildRequires of
rust-ctutils(crate(cmov/default) >= 0.5.3, < 0.6.0),needed transitively by
rust-digest's "mac" feature ->rust-hmac0.13.0 aspart of the uv crate-alignment cascade in #18405 (zip transitive prereqs).
Why split this out
scratch builds are never tagged/imported into the target repo's build
tag, so
rust-ctutils's scratch build can never resolve a same-PR sibling'sscratch-built
cmovoutput, regardless of build order or retries (samearchitectural issue previously solved for
rust-cpubitsahead ofrust-aes).This package needs to land as a real (non-scratch, tagged) build in
azl4-buildbeforerust-ctutils(and the rest of the #18405 dependencychain) can pass its scratch-build gate.
%checkis disabled for this package:proptestis a%check-only(dev-)dependency (
crate(proptest/default) >= 1.11.0, < 2.0.0), andproduction
azl4-buildonly hasproptest1.9.0 today (the 1.11.0 bumplands separately in #18405). The library itself does not need
proptesttobuild.
Filing a ticket to follow up with the protest %check
Testing
azldev component update -a --check-only -qpasses.azldev component render -p rust-cmovis clean/up to date.