bitcoin: cut down on exact_features test matrixes
What changed, and why it matters
This commit only changes the list of feature combinations that are tested automatically in CI. It removes most of a large, exhaustive test matrix and keeps just two core combinations to avoid timeouts on older Rust compilers. There is no change to the actual library code, dependencies, or user-facing behavior.
No security action needed. This is a CI optimization. If desired, verify that the remaining exact feature combinations plus cargo-rbmt's random subsets still provide adequate coverage for the project's MSRV policy.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The change is confined to bitcoin/Cargo.toml under the [package.metadata.rbmt] exact_features key used by cargo-rbmt. It reduces the number of explicitly enumerated feature combinations from 55 to 2, leaving the random subset testing to cargo-rbmt. No source code, dependency versions, feature definitions, or default feature sets are modified.
Changed components
bitcoin/Cargo.tomlCI/test configuration (cargo-rbmt exact_features matrix)Inspect captured patch +2 / −57
diff --git a/bitcoin/Cargo.toml b/bitcoin/Cargo.toml
index f995a117..57d86af7 100644
--- a/bitcoin/Cargo.toml
+++ b/bitcoin/Cargo.toml
@@ -122,63 +122,8 @@ examples = [
"serde:std serde",
]
exact_features = [
- ["base64", "bitcoinconsensus"],
- ["base64", "rand"],
- ["base64", "secp-recovery"],
- ["base64", "serde"],
- ["bitcoinconsensus", "rand"],
- ["bitcoinconsensus", "secp-recovery"],
- ["bitcoinconsensus", "serde"],
- ["rand", "secp-recovery"],
- ["rand", "serde"],
- ["secp-recovery", "serde"],
- ["std", "base64"],
- ["std", "bitcoinconsensus"],
- ["std", "rand"],
- ["std", "secp-recovery"],
- ["std", "serde"],
- ["base64", "bitcoinconsensus", "rand"],
- ["base64", "bitcoinconsensus", "secp-recovery"],
- ["base64", "bitcoinconsensus", "serde"],
- ["base64", "rand", "secp-recovery"],
- ["base64", "rand", "serde"],
- ["base64", "secp-recovery", "serde"],
- ["bitcoinconsensus", "rand", "secp-recovery"],
- ["bitcoinconsensus", "rand", "serde"],
- ["bitcoinconsensus", "secp-recovery", "serde"],
- ["rand", "secp-recovery", "serde"],
- ["std", "base64", "bitcoinconsensus"],
- ["std", "base64", "rand"],
- ["std", "base64", "secp-recovery"],
- ["std", "base64", "serde"],
- ["std", "bitcoinconsensus", "rand"],
- ["std", "bitcoinconsensus", "secp-recovery"],
- ["std", "bitcoinconsensus", "serde"],
- ["std", "rand", "secp-recovery"],
- ["std", "rand", "serde"],
- ["std", "secp-recovery", "serde"],
- ["base64", "bitcoinconsensus", "rand", "secp-recovery"],
- ["base64", "bitcoinconsensus", "rand", "serde"],
- ["base64", "bitcoinconsensus", "secp-recovery", "serde"],
- ["base64", "rand", "secp-recovery", "serde"],
- ["bitcoinconsensus", "rand", "secp-recovery", "serde"],
- ["std", "base64", "bitcoinconsensus", "rand"],
- ["std", "base64", "bitcoinconsensus", "secp-recovery"],
- ["std", "base64", "bitcoinconsensus", "serde"],
- ["std", "base64", "rand", "secp-recovery"],
- ["std", "base64", "rand", "serde"],
- ["std", "base64", "secp-recovery", "serde"],
- ["std", "bitcoinconsensus", "rand", "secp-recovery"],
- ["std", "bitcoinconsensus", "rand", "serde"],
- ["std", "bitcoinconsensus", "secp-recovery", "serde"],
- ["std", "rand", "secp-recovery", "serde"],
- ["base64", "bitcoinconsensus", "rand", "secp-recovery", "serde"],
- ["std", "base64", "bitcoinconsensus", "rand", "secp-recovery"],
- ["std", "base64", "bitcoinconsensus", "rand", "serde"],
- ["std", "base64", "bitcoinconsensus", "secp-recovery", "serde"],
- ["std", "base64", "rand", "secp-recovery", "serde"],
- ["std", "bitcoinconsensus", "rand", "secp-recovery", "serde"],
- ["std", "base64", "bitcoinconsensus", "rand", "secp-recovery", "serde"],
+ ["bitcoinconsensus", "secp-recovery", "base64", "serde"],
+ ["std", "bitcoinconsensus", "secp-recovery", "base64", "serde"],
]
[package.metadata.rbmt.lint]
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.