mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-20 01:11:08 +00:00
Support constructing and submitting V5 transactions (#1931)
* TransactionExtensions basic support for V5 VerifySignature and renames * WIP: subxt-core v5 transaction support * Subxt to support V5 extrinsics * WIP tests failing with wsm trap error * Actually encode mortality to fix tx encode issue * fmt * rename to sign_with_account_and_signature * Add explicit methods for v4 and v5 ext construction * clippy * fix wasm example and no mut self where not needed * fix doc example * another doc fix * Add tests for tx encoding and fix v5 encode issue * add copyright and todo * refactor APIs to have clear v4/v5 split in core and slightly nicer split in subxt proper * rename Partial/SubmittableExtrinsic to *Transaction * Remove SignerT::address since it's not needed * doc fixes * fmt * doc fixes * Fix comment number * Clarify panic behaviour of inject_signature * fmt
This commit is contained in:
@@ -345,10 +345,6 @@ mod subxt_compat {
|
||||
self.public_key().into()
|
||||
}
|
||||
|
||||
fn address(&self) -> T::Address {
|
||||
self.public_key().into()
|
||||
}
|
||||
|
||||
fn sign(&self, signer_payload: &[u8]) -> T::Signature {
|
||||
self.sign(signer_payload).into()
|
||||
}
|
||||
|
||||
+1
-10
@@ -164,7 +164,7 @@ impl FromStr for DerivationPath {
|
||||
}
|
||||
|
||||
/// A signature generated by [`Keypair::sign()`].
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, codec::Encode)]
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, codec::Encode, codec::Decode)]
|
||||
pub struct Signature(pub [u8; 65]);
|
||||
|
||||
impl AsRef<[u8; 65]> for Signature {
|
||||
@@ -267,10 +267,6 @@ mod subxt_compat {
|
||||
self.public_key().into()
|
||||
}
|
||||
|
||||
fn address(&self) -> T::Address {
|
||||
self.public_key().into()
|
||||
}
|
||||
|
||||
fn sign(&self, signer_payload: &[u8]) -> T::Signature {
|
||||
self.sign(signer_payload).into()
|
||||
}
|
||||
@@ -404,11 +400,6 @@ mod test {
|
||||
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn check_account_id_eq_address(keypair in keypair()) {
|
||||
assert_eq!(SubxtSigner::account_id(&keypair), SubxtSigner::address(&keypair));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn check_signing_and_verifying_matches(keypair in keypair(), msg in ".*") {
|
||||
let sig = SubxtSigner::sign(&keypair, msg.as_bytes());
|
||||
|
||||
@@ -338,10 +338,6 @@ mod subxt_compat {
|
||||
self.public_key().into()
|
||||
}
|
||||
|
||||
fn address(&self) -> T::Address {
|
||||
self.public_key().into()
|
||||
}
|
||||
|
||||
fn sign(&self, signer_payload: &[u8]) -> T::Signature {
|
||||
self.sign(signer_payload).into()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user