Skip to content

feat(rind-ring): patch ring from moq-dev/rind-patch, without rind's test vectors - #456

Merged
kixelated merged 2 commits into
mainfrom
quest/m2/adoption/aws-lc-rs/patch-repo
Nov 7, 2026
Merged

kixelated merged 2 commits into
mainfrom
quest/m2/adoption/aws-lc-rs/patch-repo

Conversation

@kixelated

@kixelated kixelated commented Nov 7, 2026 •

Copy link
Copy Markdown
Collaborator

Finishes quest/m2/adoption/aws-lc-rs/patch-repo.md, following moq-dev/rind#444.

Summary

The ring patch shim moves from rind's patch/ring to moq-dev/rind-patch (initial commit), where it depends on the published rind-ring = "0.17" instead of by path. A binary now patches with

[patch.crates-io]
ring = { git = "https://github.com/moq-dev/rind-patch" }

and Cargo clones a few KB instead of rind's ~150 MB of test-vector submodules.

  • rind-patch: a root workspace with ring/ as its only member (the aws-lc-rs shim joins as a second member), a README, LICENSE-APACHE, LICENSE-ISC, and LICENSE-MIT-0, and a Build workflow that runs cargo fmt --check and cargo clippy --deny warnings against crates.io. Its Cargo.lock is ignored, since a patching binary's own lockfile governs.
  • patch/fixture patches ring from rind-patch, as the docs say. sh/patch.sh also patches rind-ring to this checkout, so a rind-ring change runs through the shim before its release. It then checks that ring resolves only to rind-patch's shim and rind-ring only to the checkout. When rind-ring moves past ring 0.17, the shim's 0.17 requirement no longer matches the checkout, so the check fails until rind-patch follows.
  • Docs: rind-ring's README and crate docs, MIGRATE.md, and MIGRATING.md give the new line and say ring v0.17.999 comes "from rind-patch".
  • Quests: deletes the finished quest and its link, and points the aws-lc-rs epic and aws-lc-rs-patch at rind-patch. The quest's Waiting item cleared when the maintainer created the repository on 2026-11-07.

Public API

No crate API changes. The documented git route changes: ring = { git = "https://github.com/moq-dev/rind" } no longer finds a ring crate, since patch/ring is gone. That line reached main only in #444 and was never in a release, so the title has no !. A ! would also make release-plz propose rind-ring 0.18 (CONTRIBUTING.md's Releases). To migrate, swap moq-dev/rind for moq-dev/rind-patch in the patch line and run cargo update -p ring.

Choices made without asking

  • ring/ is a workspace member rather than the root package, so the aws-lc-rs shim can sit beside it without a restructure.
  • rind-patch's license files name Copyright 2026 The rind Authors, since the shim is new code with no third-party source.
  • rind-patch CI is a single ubuntu-24.04 job. The shim has no architecture-specific code, and rind's own CI covers each backend.
  • The fixture takes rind-patch's latest main on each run (cargo generate-lockfile), as a binary adding the patch today would.

Caused by

None. This finishes the plan #444 recorded, rather than fixing a defect in it.

Validation

  • nix develop --command just check: passes, including sh/patch.sh, which ran the QUIC handshake through rind-patch@9a0a884 with this checkout's rind-ring.
  • quest check --base origin/main: 146 documents ok.
  • rind-patch: cargo clippy --workspace --all-features -- --deny warnings passes with rind-ring patched to rind's checkout, and actionlint is clean. Against crates.io it fails to resolve rind-ring = "^0.17" until moq-dev/rind#424 publishes rind-ring 0.17.0, so rind-patch's first CI run is red.

Models

Size: XS
Implementer: Claude Code, Claude Opus 5.5, high effort

(Written by Claude Opus 5.5 with high)

🤖 Generated with Claude Code

Review

Rewritten by quest review after each round.

  • Reviewer: Codex, gpt-6.1-sol, low effort
  • Session: 01a1b4bd-51d0-7cf2-88e5-0bb3f0e1f315, round 1
  • Head: ed94b3e
  • Base: origin/main at 89d10b9
  • Score: 10/10, No actionable defects were found in the specified diff; cached external shim manifests confirm the intended dependency wiring and shell syntax checks passed, though build tests were not run in the read-only environment.
  • Findings: none

kixelated and others added 2 commits November 6, 2026 22:37
…est vectors

The ring shim moves from patch/ring to moq-dev/rind-patch, where it
depends on the published rind-ring, so a binary's [patch.crates-io] line
no longer clones rind's ~150 MB of test-vector submodules. sh/patch.sh
runs the fixture through that shim with rind-ring patched to the
checkout, so a rind-ring change still runs through it before release.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated kixelated changed the title The patch shims live in a small repo of their own feat(rind-ring): patch ring from moq-dev/rind-patch, without rind's test vectors Nov 7, 2026
@kixelated
kixelated marked this pull request as ready for review November 7, 2026 06:42
@pullfrog

pullfrog Bot commented Nov 7, 2026 •

Copy link
Copy Markdown

Your OpenCode Go account is out of credit. Top it up, then re-trigger Pullfrog.

OpenCode Go's response
provider error: Insufficient account funds

Top up OpenCode Go →

Pullfrog  | Rerun failed job ➔ | View workflow run | via Pullfrog | Using glm-5.3

@coderabbitai

coderabbitai Bot commented Nov 7, 2026

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 13 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 96d7fa60-1ea7-40e5-8561-a32fd35beb75
Commits

Reviewing files that changed from the base of the PR and between 89d10b9 and ed94b3e.

Files selected for processing: 12

  • MIGRATE.md
  • MIGRATING.md
  • patch/fixture/Cargo.toml
  • patch/ring/Cargo.toml
  • patch/ring/src/lib.rs
  • quest/m2/adoption/aws-lc-rs/README.md
  • quest/m2/adoption/aws-lc-rs/aws-lc-rs-patch.md
  • quest/m2/adoption/aws-lc-rs/patch-repo.md
  • rind-ring/README.md
  • rind-ring/src/lib.rs
  • sh/dispatch.sh
  • sh/patch.sh
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

Share

@kixelated
kixelated added this pull request to the merge queue Nov 7, 2026
Merged via the queue into main with commit 480c0fe Nov 7, 2026
10 of 11 checks passed
@moq-bot moq-bot Bot mentioned this pull request Nov 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant