chore: scope the deprecated-field lint to the wire-compat sites that need it - #603
Open
blacks1ne wants to merge 1 commit into
Open
Conversation
…need it global.proto marks ProverConfirm.filter and ProverReject.filter deprecated in favour of the repeated `filters`, which produces 11 warnings across the converters, the client ops and the cross-language signing fixtures. The field cannot simply be dropped. It is still on the wire — peers predating the change populate it, and prover_confirm_to_proto/prover_reject_to_proto are expected to reproduce their input byte-for-byte (the round-trip tests assert exactly that). Removing the reads would silently change the encoding and the signing payload derived from it. So the lint is allowed at the eight functions that legitimately touch the field, each with a note pointing at the wire-compat reason, rather than crate-wide. Any NEW use of a deprecated API still warns. When the field is finally retired from the proto, these allows are the checklist of call sites to delete. (cherry picked from commit 2ff76dba78e352aaeb59bebbf9e1f3c226ce1ae3)
blacks1ne
force-pushed
the
chore/warnings-deprecated-proto-filter
branch
from
August 18, 2026 10:35
55e14f5 to
387a334
Compare
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.
global.protodeprecatesProverConfirm.filterandProverReject.filterinfavour of the repeated
filters— 11 warnings.The field cannot just be dropped. It is still on the wire from peers that predate
the change, and
prover_confirm_to_proto/prover_reject_to_protoare expectedto reproduce their input byte-for-byte — the round-trip tests assert exactly
that. Removing the reads would silently change the encoding, and the signing
payload derived from it.
So this is
#[allow(deprecated)]on the eight functions that legitimately touchthe field, each carrying the wire-compat reason. Any new use still warns, and
when the field is finally retired these allows are the checklist of call sites to
delete.
Series
Part of the warning-cleanup series that starts with #597. The eight PRs are
disjoint and each stands on its own, but they are meant to be read in order —
please take #597 first: it is the only one of the eight that fixes a bug
rather than a warning, and it is the shortest.
932045a3the 16 being
classgroup's GMP FFI glue, deliberately left visible rather thansilenced. Update: those 16 are now fixed rather than documented, in fix: correct classgroup GMP FFI declarations and uninitialized values #605,
which corrects the declarations and the uninitialized values instead of
annotating them. With fix: correct classgroup GMP FFI declarations and uninitialized values #605 and the channelwasm commit in chore: drop unused imports and bindings in the crypto crates #599, the combined
tree checks with zero warnings.
--exclude channelwasm. That crateis in scope now — chore: drop unused imports and bindings in the crypto crates #599 covers it — so the exclusion is gone.)
Happy to re-pace these, drop any of them, or squash the set into a single PR if
you would rather review it in one pass — just say which.
Drafted with Claude Code; every site was read individually and the reasoning is
in the commit message.