What changed, and why it matters
This commit only updates generated API snapshot files to reflect that a new `extend` method was added to the `Witness` type. The actual code change happened elsewhere, and these files are just machine-generated documentation of the public API surface. There is no security issue visible in this commit itself.
No action needed for this commit. If reviewing the related source-code change that introduced `Witness::extend`, verify that the implementation correctly handles witness element length prefixes and does not allow construction of invalid witness data.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The diff updates primitives/api/all-features.txt and primitives/api/alloc-only.txt, which are generated public-API snapshots used to track API changes. They now include impl<T: AsRef<[u8]>> Extend<T> for bitcoin_primitives::witness::Witness and its associated extend method. No source code, logic, or behavior is changed in this commit. The extend implementation is not shown, so its correctness or security cannot be assessed here.
Changed components
primitives/api/all-features.txtprimitives/api/alloc-only.txtInspect captured patch +8 / −0
diff --git a/primitives/api/all-features.txt b/primitives/api/all-features.txt
index c6fcde22..53115c2f 100644
--- a/primitives/api/all-features.txt
+++ b/primitives/api/all-features.txt
@@ -6140,6 +6140,8 @@ impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::wit
pub fn alloc::sync::Arc<[T]>::eq(&self, rhs: &bitcoin_primitives::witness::Witness) -> bool [impl: impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::sync::Arc<[T]>]
impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::vec::Vec<T>
pub fn alloc::vec::Vec<T>::eq(&self, rhs: &bitcoin_primitives::witness::Witness) -> bool [impl: impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::vec::Vec<T>]
+impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::Extend<T> for bitcoin_primitives::witness::Witness
+ pub fn bitcoin_primitives::witness::Witness::extend<I: core::iter::traits::collect::IntoIterator<Item = T>>(&mut self, iter: I) [impl: impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::Extend<T> for bitcoin_primitives::witness::Witness]
impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::FromIterator<T> for bitcoin_primitives::witness::Witness
pub fn bitcoin_primitives::witness::Witness::from_iter<I: core::iter::traits::collect::IntoIterator<Item = T>>(iter: I) -> Self [impl: impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::FromIterator<T> for bitcoin_primitives::witness::Witness]
impl<const N: usize, T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<&[T; N]> for bitcoin_primitives::witness::Witness
@@ -7508,6 +7510,8 @@ impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::wit
pub fn alloc::sync::Arc<[T]>::eq(&self, rhs: &bitcoin_primitives::witness::Witness) -> bool [impl: impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::sync::Arc<[T]>]
impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::vec::Vec<T>
pub fn alloc::vec::Vec<T>::eq(&self, rhs: &bitcoin_primitives::witness::Witness) -> bool [impl: impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::vec::Vec<T>]
+impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::Extend<T> for bitcoin_primitives::witness::Witness
+ pub fn bitcoin_primitives::witness::Witness::extend<I: core::iter::traits::collect::IntoIterator<Item = T>>(&mut self, iter: I) [impl: impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::Extend<T> for bitcoin_primitives::witness::Witness]
impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::FromIterator<T> for bitcoin_primitives::witness::Witness
pub fn bitcoin_primitives::witness::Witness::from_iter<I: core::iter::traits::collect::IntoIterator<Item = T>>(iter: I) -> Self [impl: impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::FromIterator<T> for bitcoin_primitives::witness::Witness]
impl<const N: usize, T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<&[T; N]> for bitcoin_primitives::witness::Witness
diff --git a/primitives/api/alloc-only.txt b/primitives/api/alloc-only.txt
index fed9ec35..98a95b04 100644
--- a/primitives/api/alloc-only.txt
+++ b/primitives/api/alloc-only.txt
@@ -5698,6 +5698,8 @@ impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::wit
pub fn alloc::sync::Arc<[T]>::eq(&self, rhs: &bitcoin_primitives::witness::Witness) -> bool [impl: impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::sync::Arc<[T]>]
impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::vec::Vec<T>
pub fn alloc::vec::Vec<T>::eq(&self, rhs: &bitcoin_primitives::witness::Witness) -> bool [impl: impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::vec::Vec<T>]
+impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::Extend<T> for bitcoin_primitives::witness::Witness
+ pub fn bitcoin_primitives::witness::Witness::extend<I: core::iter::traits::collect::IntoIterator<Item = T>>(&mut self, iter: I) [impl: impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::Extend<T> for bitcoin_primitives::witness::Witness]
impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::FromIterator<T> for bitcoin_primitives::witness::Witness
pub fn bitcoin_primitives::witness::Witness::from_iter<I: core::iter::traits::collect::IntoIterator<Item = T>>(iter: I) -> Self [impl: impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::FromIterator<T> for bitcoin_primitives::witness::Witness]
impl<const N: usize, T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<&[T; N]> for bitcoin_primitives::witness::Witness
@@ -6937,6 +6939,8 @@ impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::wit
pub fn alloc::sync::Arc<[T]>::eq(&self, rhs: &bitcoin_primitives::witness::Witness) -> bool [impl: impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::sync::Arc<[T]>]
impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::vec::Vec<T>
pub fn alloc::vec::Vec<T>::eq(&self, rhs: &bitcoin_primitives::witness::Witness) -> bool [impl: impl<T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<bitcoin_primitives::witness::Witness> for alloc::vec::Vec<T>]
+impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::Extend<T> for bitcoin_primitives::witness::Witness
+ pub fn bitcoin_primitives::witness::Witness::extend<I: core::iter::traits::collect::IntoIterator<Item = T>>(&mut self, iter: I) [impl: impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::Extend<T> for bitcoin_primitives::witness::Witness]
impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::FromIterator<T> for bitcoin_primitives::witness::Witness
pub fn bitcoin_primitives::witness::Witness::from_iter<I: core::iter::traits::collect::IntoIterator<Item = T>>(iter: I) -> Self [impl: impl<T: core::convert::AsRef<[u8]>> core::iter::traits::collect::FromIterator<T> for bitcoin_primitives::witness::Witness]
impl<const N: usize, T: core::borrow::Borrow<[u8]>> core::cmp::PartialEq<&[T; N]> for bitcoin_primitives::witness::Witness
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.