* add proper tests for custom values
* remove try operators
* use sustrate compat for import of hash
* add license and hex
* add script to artifacts.sh
* custom values with ids not in metadata can be accessed in static interface
* fmt and clippy
* access bytes of custom values directly, even if type id wrong
* final fixes
* removing substrate-compat flag from ui tests
* Update subxt/src/custom_values/custom_values_client.rs
Co-authored-by: James Wilson <james@jsdw.me>
* remove types access in type generator
* 2 extra lines
---------
Co-authored-by: James Wilson <james@jsdw.me>
* codegen: Add uncheckedExtrinsic substitute
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* subxt: Add uncheckedExtrinsic replacement
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Test uncheckedExtrinsic encoding
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* testing: Apply clippy
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* subxt: Implement encode_to instead of encode for uncheckedExtrinsic
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* subxt: Remove encode_as_fields from uncheckedExtrinsic
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* utils: Extend the UncheckedExtrinsic interface
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* utils: Use Static<Encoded> for uncheckedExtrinsic
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* utils: Remove extra impl on the uncheckedExtrinsic
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* utils: Add back the EncodeAsType
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* utils: Simplify the decode_as_type
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* utils: Use encode_as_type
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* utils: impl Decode for UncheckedExtrinsic
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update subxt/src/utils/unchecked_extrinsic.rs
Co-authored-by: James Wilson <james@jsdw.me>
* utils: Apply cargo fmt
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* utils: Check encoding / decoding of uncheckedExtrinsic
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* utils/tests: Use an already encoded tx bytes to start with
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
---------
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Co-authored-by: James Wilson <james@jsdw.me>
* Add Static type which defers to Encode/Decode and impls EncodeAsType/DecodeAsType
* rename to static_type and impl Deref/Mut
* Improve type substitution in codegen so that concrete types can be swapped in
* A couple of comment tweaks and no need for a macro export
* Extend type substitution logic to work recursively on destination type
* cargo fmt
* Fix a couple of comments
* update ui test outpuot
* Add docs and missing_docs lint
* Add test for replacing multiple of Ident
* Update codegen/src/error.rs
Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
* update copyright year and fix ui test
* simplify another error
---------
Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
* WIP EncodeAsType and DecodeAsType
* remove silly cli experiment code
* Get things finally compiling with EncodeAsType and DecodeAsType
* update codegen test and WrapperKeepOpaque proper impl (in case it shows up in codegen)
* fix tests
* accomodate scale-value changes
* starting to migrate to EncodeAsType/DecodeAsType
* static event decoding and tx encoding to use DecodeAsFields/EncodeAsFields
* some tidy up and add decode(skip) attrs where needed
* fix root event decoding
* #[codec(skip)] will do, and combine map_key stuff into storage_address since it's all specific to that
* fmt and clippy
* update Cargo.lock
* remove patched scale-encode
* bump scale-encode to 0.1 and remove unused dep in testing crate
* update deps and use released scale-decode
* update scale-value to latest to remove git branch
* Apply suggestions from code review
Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com>
* remove sorting in derives/attr generation; spit them out in order given
* re-add derive sorting; it's a hashmap
* StaticTxPayload and DynamicTxPayload rolled into single Payload struct
* StaticStorageAddress and DynamicStorageAddress into single Address struct
* Fix storage address byte retrieval
* StaticConstantAddress and DynamicConstantAddress => Address
* Simplify storage codegen to fix test
* Add comments
* Alias to RuntimeEvent rather than making another, and prep for substituting call type
* remove unnecessary clone
* Fix docs and failing UI test
* root_bytes -> to_root_bytes
* document error case in StorageClient::address_bytes()
---------
Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com>
* begin porting over traits; remove Config use of Hash
* port over the Header bits that we need
* sp_core_hashing where possible, move Verify to PairSigner, remove unused errors
* tidy up Config things and move related bits into one place
* fix codegen
* copy Era over
* move AccountId, Address, Signer to Signer trait and a pass over fixing examples
* impl MultiAddress, MultiSignature, AccountId32 and add back to Config (for decoding later)
* Copy over StorageKey, StorageData, StorageChangeSet
* subxt core compiling with no sp_core or sp_runtime
* Get examples compiling
* pass over fixing tests
* cargo fmt
* clippy tweaks and update polkadot.rs
* fix codegen docs
* port over special DigestItem encoding/decoding
* clippy and doc fixes
* cargo fmt and example fix
* more cargo fmt-ing...
* substrate-extra to substrate-compat
* cargo.toml comments
* simplify PairSigner trait bounds
* move RPC types to a separate file
* fix docs
* Add some tests for things and other PR feedback
* bump to latest sp deps
* avoid needing substrate-compat feature in a test