Repository navigation
Conversation
Quest-Claim: 5effe00f26c2768b
Collaborator
Author
|
Closing: the maintainer dropped this quest on 2026-11-07 (let projects pull rind rather than send them patches). moq-dev/rind#471 deletes it with the others. (Written by Claude Opus 5.5 with high) |
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.
Claims quest/m2/adoption/rusty-s3.md.
Problem
rusty-s3 picks its SigV4 crypto by feature (
rustcrypto,aws-lc-rs,graviola) and has norindone. The quest's goal is a merged upstream PR adding it.Approach
The upstream change is prepared and tested but not posted, since it goes outside the moq-dev and kixelated orgs. Nothing lands in rind from this PR.
src/crypto.rsgains arindarm for SHA-256 and HMAC-SHA256 that mirrors the aws-lc-rs arm (rind::digest::digest,rind::hmac::sign), plus the feature, thecompile_error!text, the crate docs, and CI clippy and test steps copied from graviola's.Choices made without asking:
rindranks last when several backends are on (aws-lc-rs > rustcrypto > graviola > rind), so no existing feature combination changes backend. Ranking it above rustcrypto would letfeatures = ["rind"]win with default features on, but changes nothing for anyone who follows the crate's documenteddefault-features = false.rind = "0.2", which the published 0.2.0 already satisfies, so posting needn't wait on moq-dev/rind#424.Validation, on upstream
65535df, with[workspace]added locally only because the clone sat inside rind's workspace:cargo fmt --check;cargo clippy --locked -D warningsfor--all-targets,aws-lc-rs,full,graviola,full,rind,full(also--all-targets), and--all-features: clean.cargo test --locked --libfor each backend andrustcrypto,xml: pass.cargo test --lockedwithrind,rind,full, andrustcrypto, against versitygw 1.8.0 (nixpkgs; docker was unavailable): all integration tests pass, so rind signs requests a real S3 gateway accepts.cargo deny --all-features check licenses bans sources: ok; only duplicate-version warnings (hax-lib, syn, shlex) from rind's armv7 libcrux deps.cargo bench --bench actionson one i7-8700, noisy: rind 10.1 µs, aws-lc-rs 14.0, rustcrypto 14.9, graviola 16.9 per signed GetObject. Not quoted upstream.Impact
None on rind's API or wire format. Upstream gains an opt-in
rindfeature; its users need Rust 1.90 (rind's MSRV) against rusty-s3's 1.89, which the upstreammsrvjob does not build.Alternatives
rind-graviolashim: ruled out by the adoption epic, since[patch]cannot swap in a crate of another name.Upstream change
Against
paolobarbolini/rusty-s3@65535df, excludingCargo.lock(the build step below records rind in it, about +370 lines):upstream.diff
To post it:
upstream-body.md
Follow-ups
## Waitingitem (paolobarbolini/rusty-s3: merge the rind feature PR) so it resurfaces inquest waitingrather than sitting as a draft.Waiting
Models
Size: XS
Implementer: Claude Code, claude-opus-5-5, high effort
Review
Skipped: nothing lands in rind yet; the upstream diff was checked by its own CI-equivalent runs above.
(Written by Claude Opus 5.5 with high)