AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Informational 15 Bitcoin

Merge rust-bitcoin/rust-bitcoin#6715: internals: migrate the `u256` type from the include system to the internals package

Public commit record

What the developer wrote

Authored by Andrew Poelstra

91/100 · Strong
Merge rust-bitcoin/rust-bitcoin#6715: internals: migrate the `u256` type from the include system to the internals package

230c95aad69f343cef54654f0b03a6a71ea60f1b internals: move unused test dependencies to dev-dependencies (Nick Johnson)
f1b63f2b9c79e71fe07c93bd93252ae49946c5fd internals: migrate the u256 from include to internals (Nick Johnson)
4707d00d70c43796debcc89187f0b0587da46113 ci: fail if bitcoin-internals is exposed in public api (Nick Johnson)

Pull request description:

With `cargo-rbmt@0.5.*` is merged in #6547, `cargo-rbmt`'s api check can now enforce that a "private" dependency does not leak out of a crate's exposed API. With this enforcement, we can move over the `u256` type from the `include/` system into the standard `internals` package.

The third commit is not directly related, but noticed that `internals` appeared to be needlessly leaking dependencies.

Part of the #6458 effort.


ACKs for top commit:
tcharding:
ACK 230c95aad69f343cef54654f0b03a6a71ea60f1b
apoelstra:
ACK 230c95aad69f343cef54654f0b03a6a71ea60f1b; successfully ran local tests


Tree-SHA512: 71d30bf1f15767efaa6b67d66f3e8fd3cee2c2931d6ad4bfeb8f638b54be5667ca279f8654b67834ceb6ac95f9c1044a3aa7c98d1a78ffc16fdf293a8edffc97
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Mentions testing or verification✓ Links an issue, advisory, or supporting reference
The short version

What changed, and why it matters

This commit is a routine internal code reorganization. It moves a 256-bit unsigned integer helper type (U256) from a duplicated file that was copy-pasted into multiple crates into a single shared internal crate. It also cleans up some test-only dependencies. There is no security-relevant behavior change visible in the diff.

Recommended action

No security action needed. This is a refactoring change. Reviewers may optionally verify that the `private = ["bitcoin_internals"]` metadata correctly prevents leakage of `U256` into downstream public APIs.

Security signals we found

No strong security signals were identified.

Risk score

Why this scored 15/100

Our methodology →
Potential impact 0/30
Exploitability 0/25
Stealth signal 0/15
Affected reach 0/15
Confidence 10/10
Evidence quality 5/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.