Commit Graph
100 Commits
Author SHA1 Message Date
James Wilson 3f57740a9a Actually bump subxt-historic to 0.0.8 2025-12-05 17:12:54 +00:00
James Wilson c32017e453 subxt-historic: prep 0.0.8 release: expose type resolver that can be used with visitors (#2140)
* subxt-historic: prep 0.0.8 release: expose type resolver that can be used with visitors

* clippy

* Fix example

* Fix docs test
2025-12-05 17:11:25 +00:00
James Wilson 24ccd584f1 Prep subxt-historic 0.0.7 release: expose ClientAtBlock bits (#2138) 2025-12-03 18:45:16 +00:00
James Wilson eee2fd5c6e subxt-historic: expose metadata at a given block (#2135) 2025-12-01 17:10:42 +00:00
James Wilson 8203679cbd Merge v0.50.x to master (#2127)
* v0.50.0: Integrate frame-decode, redo storage APIs and break up Error. (#2100)

* WIP integrating new frame-decode and working out new storage APIS

* WIP: first pass adding new storage things to subxt-core

* Second pass over Address type and start impl in Subxt

* WIP new storage APIs

* WIP New storage APIs roughly completed, lots of errors still

* Remove PlainorMap enum; plain and map values now use same struct to simplify usage

* Begin 'fixing' errors

* WIP splitting errors and tidying payload/address traits

* Get subxt-core compiling

* Small fixes in subxt-core and remove metadata mod

* subxt-core: cargo check --all-targets passes

* Fix test

* WIP starting to update subxt from subxt-core changes

* WIP splitting up subxt errors into smaller variants

* WIP errors: add DispatchError errors

* Port new Storage APIs to subxt-core

* cargo check -p subxt passes

* Quick-fix errors in subxt-cli (explore subcommand)

* fmt

* Finish fixing codegen up and start fixing examples

* get Subxt examples compiling and bytes_at for constants

* Add some arcs to limit lifetimes in subxt/subxt-core storage APIs

* A little Arcing to allow more method chaining in Storage APIs, aligning with Subxt

* Update codegen test

* cargo check --all-targets passing

* cargo check --features 'unstable-light-client' passing

* clippy

* Remove unused dep in subxt

* use published frame-decode

* fix wasm-example

* Add new tx extension to fix daily tests

* Remove unused subxt_core::dynamic::DecodedValue type

* Update book to match changes

* Update docs to fix more broken bits

* Add missing docs

* fmt

* allow larger result errs for now

* Add missing alloc imports in subxt-core

* Fix doc tests and fix bug getting constant info

* Fix V14 -> Metadata transform for storage & constants

* Fix parachain example

* Fix FFI example

* BlockLength decodes t ostruct, not u128

* use fetch/iter shorthands rather than entry in most storage tests

* Fix some integration tests

* Fix Runtime codegen tests

* Expose the dynamic custom_value selecter and use in a UI test

* Update codegen metadata

* Tidy CLI storage query and support (str,str) as a storage address

* Add (str,str) as valid constant address too

* Show string tuple in constants example

* Via the magic of traits, avoid needing any clones of queries/addresses and accept references to them

* clippy

* [v0.50] update scale-info-legacy and frame-decode to latest (#2119)

* bump scale-info-legacy and frame-decode to latest

* Remove something we don't need in this PR

* Fully remove unused for now dep

* [v0.50] Convert historic metadata to subxt::Metadata (#2120)

* First pass converting historic metadatas to our subxt::Metadata type

* use published frame-decode

* fmt and rename legacy metadata macro

* Enable legacy feature where needed in subxt_metadata so it compiles on its own

* Use cargo hack more in CI and fix subxt-metadata features

* Add tests for metadata conversion (need to optimise; some too expensive right now

* Address performance and equality issues in metadata conversion testing

* fmt

* fmt all

* clippy

* Fix a doc link

* Test codegen and fixes to make it work

* Remove local frame-decode patch

* bump frame-decode to latest

* [v0.50.0] Allow visiting extrinsic fields in subxt_historic (#2124)

* Allow visiting extrinsic fields

* fmt

* Don't use local scale-decode dep

* Clippy and tidy

* Extend 'subxt codegen' CLI to work with legacy metadatas

* Simplify historic extrinsics example now that AccountId32s have paths/names

* clippy

* clippy

* clippy..

* Allow visiting storage values, too, and clean up extrinsic visiting a little by narrowing lifetime

* Try to fix flaky test

* Add custom value decode to extrinsics example

* Remove useless else branch ra thought I needed

* Simplify examples

* Prep to release v0.0.5 (#2126)
2025-11-22 10:44:03 +00:00
James Wilson 6298d9a87b Try ficing Rustc to version polkadot-sdk CI uses (#2118) 2025-11-10 10:57:08 +00:00
James Wilson 663caed412 Bump smoldot / smoldot-light to latest (#2110)
* Bump smoldot / smoldot-light

* Add new EthSetOrigin tx extension to fix test on new polkadot

* Fix runtime API call in test
2025-10-21 22:44:22 +01:00
James Wilson b13b8ec8d0 [subxt-historic]: extract call and event types from metadata at a block (#2095)
* Inject call and event types from metadata too at some block in subxt-historic

* bump subxt-historic to 0.0.4

* Fix unrelated doc things to try and fix this job

* Other Rust 1.90 fixes

* 'Fix' Test

* Try fixing clippy WASM job

* Try again to get clippy wasm working

* trybuild fix

* trybuild fix take 2
2025-09-25 13:37:09 +01:00
James Wilson b1a3a3afcc Attempt to Fix CI take 2 (#2097)
* Attempt to fix build-nodes job; install llvm-dev

* clang too
2025-09-24 17:40:15 +01:00
James Wilson 709ecfd5be Attempt to fix build-nodes job; install llvm-dev (#2096) 2025-09-24 17:18:06 +01:00
James Wilson a79c531a82 Add --at-block option to CLI tool to download metadata at a specific block (#2079)
* Add --at-block option to CLI tool to download metadata at a specific block; useful for debugging

* clippy
2025-09-02 17:19:39 +01:00
James Wilson afb116fa6c 17 accounts now, not 16 (#2078) 2025-09-02 14:36:58 +01:00
James Wilson abcda67fc0 subxt-historic: add support for returning the default values of storage entries (#2072) 2025-09-02 11:32:09 +01:00
James Wilson f565bda011 Prep for 0.44.0 release (#2071) 2025-08-29 12:12:53 +01:00
James Wilson 3aabd6dc09 Add subxt-historic crate for accesing historic (non head-of-chain) blocks (#2040)
* WIP subxt-historic

* WIP subxt-historic

* WIP subxt-historic; flesh out basic foundations

* WIP filling in extrinsic decoding functionality

* iter and decode transaction extensions

* Fill in the Online/OfflineClient APIs and move more things to be part of the chain Config

* WIP storage

* clippy, fmt, finish extrinsics example

* prep for 0.0.1 release to claim crate name

* fix README link

* fmt

* WIP thinking about storage APIs

* WIP working out storage APIs

* Storage plain value fetching first pass

* WIP storage: first pass iterating over values done

* First apss finishing storage APIs

* fmt and clippy

* Create a storage example showing fetch and iteration

* Bump to frame-decode 0.9.0

* Bump subxt-historic to 0.0.3 for preview release

* Remove unused deps

* fix import

* clippy

* doc fixes

* tweak CI and fix some cargo hack findings

* Update README: subxt-historic is prerelease
2025-08-26 17:56:21 +01:00
770fc9dc7a Do not panic when encoding call data with invalid fields (#2070)
* don't panic

* Add unit tests

* fmt

* clippy

* fmt

---------

Co-authored-by: elfedy <federico@moonsonglabs.com>
Co-authored-by: Federico Rodríguez <federodriguez.88@gmail.com>
2025-08-26 17:54:51 +01:00
James Wilson c82a612373 Tweak test to reduce chance of failure, and need jsonrpsee/server for tests (#2057) 2025-08-20 11:28:55 +01:00
James Wilson 42f1a62a05 Fix 1.89 clippy warnings (#2055)
* Fix 1.89 clippy warnings

* WASM lightclient clippy fixes too
2025-08-11 15:33:55 +01:00
James Wilson fdc42f088b Increase reconnecting client request/response size (#2046) 2025-07-29 17:53:57 +01:00
James Wilson 841a43b1ec Prepare for 0.43.0 release (#2041) 2025-07-18 10:01:33 +01:00
James Wilson 026c239305 Fix 'subxt explore storage': don't turn keys to bytes (#2038)
* Fix 'subxt explore storage': don't turn keys to bytes

* fmt

* Remove unused imports
2025-07-08 13:33:39 +01:00
James Wilsonandwassimans ff6fc1585e Add FFI example (#2037)
* Add FFI example

* Remove unnecessary dependency (libc)

* Tweak python example and add CI
CI Tweak; separate task for ffi-example run

* Remove OnceCell dep; use std

---------

Co-authored-by: wassimans <wassim@wassimans.com>
2025-07-08 12:06:13 +01:00
James Wilson 77b6abccba Address some issues around tx mortality (#2025)
* Clarify mortality config

* Fix EncodeAsType / DecodeAsType impls for Era to be proper ones

* Fix test now that txs are mortal by default

* clippy

* missing imports

* allow Era decoding from CheckMortality

* tweak a comment

* fmt

* Add more explicit tests for mortality
2025-06-23 15:22:14 +01:00
James Wilson a78f52b9d5 Keep codec attrs even when Encode/Decode not used (#2023)
* Keep codec attrs even when Encode/Decode not used

* Fix p2p port discovery for newest substrate

* clippy
2025-06-18 10:32:29 +01:00
James Wilson 3643f2c694 Run CI on v0.N.x branches or PRs to them for ease of backporting (#2017) 2025-06-03 13:10:15 +01:00
James WilsonandJosé Duarte f831e8f87c De-dup types early in CLI/macro so that derives/substitutes work for de-duped types (#2015)
* De-dup types early to enable derives for them

* ensure_unique_type_paths in CLI codegen, too

* Update UI test outpuot

---------

Co-authored-by: José Duarte <duarte.gmj@gmail.com>
2025-06-03 12:03:55 +01:00
James Wilson a4331dfa08 If only one hasher, always treat any key as a single and not NMap key, even if it's a tuple. (#2010)
* If only one hasher, always treat any key as a single and not DoubleMap or NMap key

* Fix test

* Make the dyanmic storage key handling match our codegen handling
2025-06-02 15:18:00 +01:00
James Wilson ed25a3ac26 Remove codec::Encode and codec::Decode derives from generated APIs by default (#2008)
* Remove codec::Encode and codec::Decode from generated APIs by default

* clippy fixes

* clippy

* More fixes, and CompactAs only if Encode/Decode

* revert println in example

* fix lightclient test

* fix docs

* Fix another rust doc comment

* Fix failing storage test

* Remove now-unnecessary test

* clippy

* clippy

* Remove pointless clone
2025-05-29 14:43:42 +01:00
James Wilson 0473cfd292 Prep to release 0.42.1: Reduce rust-version to Rustc 1.85.0 (#2005)
* Reduce rust-version to Rustc 1.85.0

* Bump to 0.42.1 in prep to release patch version
2025-05-12 13:13:21 +01:00
James Wilson f8c333f30b Update release notes to include strip-metadata util 2025-05-12 12:11:38 +01:00
James Wilson 77f83557a5 Actually bump Cargo.toml to 0.42.0 2025-05-12 11:36:58 +01:00
James Wilson 7de8d36806 Prep to release v0.42.0 (#2003)
* Prep to release v0.42.0

* Remove test_context reference from example

* standalone_crate for doc tests because codegen is expensive

* fmt
2025-05-12 10:32:38 +01:00
James Wilson 23c62f3d5d Update to 2024 edition (#2001)
* Update to 2024 edition

* Update to 2024 edition; fmt, use<> and remove refs

* async functions
2025-05-09 16:12:18 +01:00
James Wilson 98c1d153b6 Update Smoldot to latest version (#1991)
* Update Smoldot

* Update lockfile

* fix wasm example dependency issue
2025-05-09 15:27:34 +01:00
James Wilson a0330768ff Update native test timeout to 45 mins (#2002) 2025-05-09 14:39:28 +01:00
James Wilson 9ba89e3ed7 Support v16 metadata and use it by default if it's available (#1999)
* Support v16 metadata and use it by default if it's available

* lockfile

* fix blocks test; new transaction extension in kitchensink runtime

* Bump scale-typegen to 0.11.1 to cater for Duration prelude type

* fmt

* Fix no-std test building

* Cargo update and bump substrate deps

* Update test and no-std deps

* fmt

* fix test
2025-05-08 14:44:44 +01:00
James Wilson 4524590821 Metadata V16: Implement support for Pallet View Functions (#1981)
* Support Pallet View Functions in Subxt

* fmt

* clippy

* Move a little view function logic to subxt_core

* clippy

* Add back check that prob isnt needed

* avoid vec macro in core

* Add view funciton test and apply various fixes to get it working

* Add test for dynamic view fn call and fix issues

* clippy

* fix test-runtime

* fmt

* remove export

* avoid vec for nostd core

* use const instead of fn for view fn call name

* Update to support latest unstable metadata

* Update metadata stripping tests for new v16 version
2025-04-24 14:42:07 +01:00
James Wilson 21b3f52191 Metadata V16: Be more dynamic over which hasher is used. (#1974)
* Use DynamicHasher256 to support Blake2 or Keccack depending on chain

* remove Config::Hash associated type, replace with HashFor<Config> alias

* Fix doc links

* fix wasm tests

* Don't strip system pallet associated types. check System.Hashing, not Hash. Rename BlockHash trait to Hash

* Tweak comment

* fmt

* fix merge

* Fix typo
2025-04-23 10:12:48 +01:00
James Wilson b3317c5b77 Add DefaultParams to allow more transaction extensions to be used when calling _default() methods (#1979)
* Add DefaultParams to allow more transaction extensions to be used when calling _default() methods

* More imple for AnyOf/DefaultParams

* Prevent T param being used twice in macro

* clippy
2025-04-04 10:08:26 +01:00
James Wilson cdab21e8c3 Use wat instead of wabt to avoid CI cmake error (and use supported dep) (#1980) 2025-04-03 10:22:46 +01:00
James Wilson 054140be1d Support v1 archive RPCs (#1977)
* Support v1 archive RPCs

* Update tests and don't alias, need to change call names too
2025-04-01 17:34:05 +01:00
James Wilson 72ac18491c Support V16 metadata and refactor metadata code (#1967)
* WIP integrate unstable v16 metadata into Subxt

* first pass moving retain to the CLI tool

* Remove otuer enum variant stripping and move now simpler strip_metadata to new crate. test it

* tidyup to use stripmetadata package etc

* Fix / comment out tests

* fmt

* clippy

* Fix wasm example

* wasm-example fix

* wasm-example fix

* Maske sure to move IDs around after types.retain()

* fmt

* Tweak comment

* Find dispatch error separately to avoid issues during mapping

* Expose associated type information in pallet metadata

* Hopefully fix flaky archive RPC

* remove unwanted temp file

* Address nits

* Add back commented-otu tests and address review comments

* use either, and simplify for_each
2025-03-28 15:35:55 +00:00
James Wilson 06e658cd4b Allow submitting transactions ignoring follow events (#1962) 2025-03-14 16:08:38 +00:00
James Wilson da3ea0b528 Improve error message regarding failure to extract metadata from WASM runtime (#1961)
* Improve error message re failure to extract metadata from runtime

* Improve error on legacy metadata loading too

* allow missing host funcs, too
2025-03-13 09:40:50 +00:00
James Wilson af59a9960b Fix CLI storage diff (#1958)
* Fix CLI storage diff

* attempt to avoid race in tests
2025-03-12 15:51:39 +00:00
James WilsonandNiklas Adolfsson 20bc4b89ca Add docs for subxt-rpcs and fix example (#1954)
* Add docs for subxt-rpcs and fix example

* Add docs bits in Cargo.toml

* add missing docsrs cfg_attr

---------

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2025-03-11 17:14:14 +00:00
James WilsonandNiklas Adolfsson 4c32ee1e78 Prepare for 0.41.0 release (#1952)
* Prepare for 0.41.0 release

* Example fmt tweak and remove small entry from changes

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

---------

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2025-03-11 15:29:15 +00:00
James Wilson 16c50846c1 Map finality timeout to Dropped instead of Invalid (#1953) 2025-03-11 15:49:52 +01:00
James Wilson b6b9ac65c7 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
2025-03-11 11:14:27 +00:00
James Wilson 49c66a0fd5 Wrap the subxt::events::Events type to avoid exposing subxt_core errors and types unnecessarily (#1948)
* Wrap the subxt::events::Events type to avoid exposing subxt_core errors and types unnecessarily (#1947)

* Actually import module and fix issues

* Remove a couple of unnecessary conversions now

* Test
2025-03-06 16:30:47 +00:00
James Wilson c29edf6fef Bump frame-metadata to 20.0.0 (#1944) 2025-03-06 07:38:31 +01:00
James Wilson 23c0651c57 Add archive RPCs to subxt-rpcs (#1940)
* Add archive RPCs to subxt-rpcs

* Add tests for archive RPCs

* ".unwrap_*" to ".as_*"

* clippy

* Add proper unsub method for archive_unstable_storage
2025-03-05 15:23:50 +00:00
James Wilson e59eef21b4 Allow transaction timeout in ChainheadBackend to be configured (#1943)
* Add configurable transaction timeout to ChainheadBackend

* u64, not usize

* Actually, stick with usize
2025-03-05 10:43:54 +00:00
James Wilson 037d5178b8 Document generating interface from Runtime WASM and change feature to runtime-wasm-path (#1936)
* runtime_metadata_path => runtime_wasm_path and document this feature

* fix doc
2025-03-03 12:07:48 +00:00
James Wilson 816a86423b Split RPCs into a separate crate (#1910)
* WIP extract RPCs into separate crate

* fmt

* Fix test

* Remove unused deps

* fix import

* WIP: Fix up errors and most tests. Start extracintg some tests/code to rpc crate

* MockRpcClient sync or async

* MockRpcClient only async but better type inference

* WIP MockRpcClient FnMuts and some test updates to use it

* Get all but one test working with new MockRpcClient

* WIP trying to debug failure

* WIP, Tests mostly fixed, need to add back oen more

* Get mock RPC tests working

* fmt

* fmt

* Clippy and comment tweak

* update CI to explicitly check subxt-rpc features

* clippy

* small tweaks after pass over

* feature flag rename

* update some docs

* Fix some examples

* fmt

* Fix features flags to work with web/wasm32

* Fix unused dep warning

* explicit targets in wasm CI

* Add better crate level docs

* fmt

* Address review comments

* Comment out flaky test for now and make more obvious how similar POlkadot and Substrate configs are

* Not a doc comment

* Remove unused imports
2025-02-18 12:07:00 +00:00
James Wilson c96387c47d Prep to release 0.39.0 (#1918)
* Pre pto release 0.39.0

* Actually save updates in Cargo.toml

* Tweak changelog text
2025-02-05 11:00:09 +00:00
James Wilson d924ece39a Don't double hash: use the same hash in ExtrinsicDetails and ExtrinsicDetails (#1917)
* Don't double hash: use the same hash in ExtrinsicDetails and ExtrinsicEvents

* clippy
2025-02-03 17:47:31 +00:00
James Wilson 29bf00e209 Fix and test sr25519 signing in nostd (#1872)
* Fix and test sr25519 signing in nostd

* Remove sr25519 signing test on nostd for thumbabi target

* Don't use sr25519 feature in nostd tests

* Fix nits, remove WASM deps from nostd test, improve comments

* Change copypasted comment

* fmt

* Update CI to account for signer tests
2025-01-30 17:13:58 +00:00
James Wilson 94f4e7f39b preserve custom metadata when converting between Subxt metadata and frame_metadata (#1914) 2025-01-30 16:14:11 +00:00
James Wilson dff4dab65e Tweak test to look at holds, not locks after polkadot-sdk@f5673cf (#1896) 2025-01-20 15:38:13 +01:00
James Wilson c71ba59db9 Bump frame-decode and frame-metadata to latest (#1870) 2024-11-25 08:20:24 +01:00
James WilsonandNiklas Adolfsson 0dbcdbdd9c Attempt to quickfix flaky legacy_and_unstable_block_subscription_reconnect (#1868)
* Attempt to quickfix flaky legacy_and_unstable_block_subscription_reconnect test

* Make test name match behaviour

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Timeout to 300s

---------

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2024-11-18 12:49:12 +00:00
James Wilson 137701757e re-enable Ci (#1867) 2024-11-15 15:14:43 +01:00
James Wilson 057c847474 Fix unstable-light-client + ChainHeadBackend tx events (#1865)
* Fix unstable-light-client + ChainHeadBackend tx events

* Add note that Broadcasted event should no longer be returned at all

* fmt
2024-11-13 15:26:11 +01:00
James Wilson f861adf5f0 When native feature is enabled, we need polkadot-sdk/std for eg examples to work (#1864) 2024-11-13 10:59:01 +00:00
James Wilson 3219659f12 Fix substrate nightly (#1848) 2024-10-30 10:40:02 +01:00
James Wilson ff2196d5f1 Update the release notes to work for current releases (#1842) 2024-10-25 16:44:45 +02:00
James Wilson 9640ecc751 Prep to release v0.38.0 (#1841)
* Prep to release v0.38.0

* Remove entry from changelog
2024-10-24 15:45:02 +01:00
James WilsonandNiklas Adolfsson 15cf58f723 Make it clearer which extrinsic failed to decode (#1835)
* Add an extrinsic index to decode errors so that we know which extrinsic failed

* Fix subxt::BlockError to align with subxt_core::BlockError

---------

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2024-10-23 18:03:32 +02:00
James Wilson c07c760d85 Update frame-decode to 0.4.0 (#1833) 2024-10-22 13:08:40 +02:00
James Wilson b5209a162e Use frame-decode for core extrinsic decode logic (#1785)
* WIP using frame-decode for core extrinsic decode logic

* fmt

* Fix dependabot config

* clippy

* tidy some imports

* Fix a couple of tests

* Update to frame-decode 0.0.7

* fix docs

* Decode exts earlier to avoid doing it every iter/find step

* frame-decode to 0.1.0

* fmt

* clippy

* fix wasm example

* doc test fixes

* Fix test

* Fix a couple of subxt_core tests
2024-10-01 11:21:51 +01:00
James Wilson 83ef8a9f13 Allow tx payloads to be boxed (#1690)
* Allow tx payloads to be boxed

* Add example of boxed payloads

* explicit box import

* box import at top

* cargo fmt
2024-07-29 17:10:49 +01:00
James Wilson c3267ed488 Add hash method to ExtrinsicDetails (#1676)
* Add hash method to ExtrinsicDetails

* fix test
2024-07-22 13:54:32 +01:00
James Wilson 75bb9b8354 Allow PartialExtrinsic to be held across await points (#1658)
* Allow PartialTransaction to be held across await points, and example to prove it

* Add comment to tx_parital example

* Fix book link
2024-06-26 13:23:26 +01:00
James Wilson 4a07b64c27 Allow running integration tests given a SUBXT_TEST_URL=ws://foo:port (#1640)
* Allow running integration tests given a SUBXT_TEST_URL=ws://foo:port

* update comment

* fmt

* Fix lightclient get_url usage

* fix light client

* fix lightclient tests take 2
2024-06-24 14:29:08 +01:00
James Wilson dd343be1f3 Add a basic version of the CheckMetadataHash signed extension (#1590)
* Add a basic version of the CheckMetadataHash signed extension

* update example too

* encode None to signer payload when no hash provided

* Enable decoding txs using CheckMetadataHash, too

* Tidy up decoding CheckMetadataHash
2024-05-23 11:54:53 +02:00
James Wilson 8c6452e22a Prep for 0.36.0 release (#1587)
* Prep for 0.36.0 release

* Stabilise unstabvle backend notes

* Make clearer that RPC methods dont retry
2024-05-16 16:37:20 +01:00
James Wilson 31c4328c8a Update README.md (#1584)
* Update README.md

Make it clear that Subxt is not just for submitting extrinsics at the top of the README

* And WebAssembly
2024-05-16 12:21:39 +01:00
James Wilson 31b2b82eb9 Bump scale-decode and related deps to latest (#1583) 2024-05-15 17:41:04 +01:00
James Wilson bc079e7c98 Update deps to use scale-type-resolver 0.2 (#1565)
* Updates for scale-type-resolver 0.2

* show that we can check the name too now

* Bump versions and fix WrapperKeepOpaque name check
2024-04-30 08:45:39 +01:00
James Wilson ac606cf625 Rename traits to remove T suffix (#1535)
* Rename traits to renmove T suffix

* Fix doc links

* Fix straggler doc links
2024-04-16 16:35:14 +01:00
James Wilson 1e111ea9db Make subxt-core ready for publishing (#1508)
* Move Extrinsic decoding things to subxt_core and various tidy-ups

* A couple more fixes and fmt

* first pass moving tx logic to subxt_core

* cargo fmt

* fix wasm example

* clippy

* more clippy

* WIP Adding examples and such

* Move storage functionality more fully to subxt_core and nice examples for storage and txs

* Add example for events

* consistify how addresses/payloads are exposed in subxt-core and add runtime API fns

* Add runtime API core example

* fmt

* remove scale-info patch

* Add a little to the top level docs

* swap args around

* clippy

* cargo fmt and fix wasm-example

* doc fixes

* no-std-ise new subxt-core additions

* alloc, not core

* more no-std fixes

* A couple more fixes

* Add back extrinsic decode test
2024-04-15 15:20:11 +01:00
James Wilson 9765ad067a Remove dupe storage item if we get one back, to be compatible with Smoldot + legacy RPCs (#1534)
* Remove dupe storage item if we get one back, to be compatibel with Smoldot + legacy RPCs

* remove commented-out code
2024-04-15 11:42:08 +01:00
James Wilson 51d9ce0d76 Swap BinaryHeap for Vec to avoid Ord constraint issue (#1523)
* Swap BianryHeap for KeyedVec to avoid Ord constraint issue

* Vec, not KeyedVec
2024-04-10 17:49:40 +01:00
James WilsonandNiklas Adolfsson 9810406db2 Prep to release 0.35 (#1489)
* Prep to release 0.35

* Remove newline

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Fix a couple of small nits

---------

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2024-03-21 16:37:12 +00:00
James Wilson 98c4c0135b chore: rename sp-core-hashing to sp-crypto-hashing (#1490)
* rename sp-core-hashing to sp-crypto-hashing

* fmt
2024-03-21 16:18:00 +01:00
James Wilson b069c4425a Rework light client (#1475)
* WIP second pass over light client code for simpler API

* First pass new light client

* pub(crate) LightClientRpc::new_raw(), and fmt

* Update examples and add back a way to configure boot nodes and fetch chainspec from a URL

* Fix light client examples

* remove unused deps and tidy lightclient feature flags

* fix wasm error

* LightClientRpc can be cloned

* update light client tests

* Other small fixes

* exclude mod unless jsonrpsee

* Fix wasm-lightclient-tests

* add back docsrs bit and web+native feature flag compile error

* update book and light client example names

* fix docs
2024-03-15 15:21:06 +00:00
James Wilson ddd0865fa9 Make storage_page_size for the LegacyBackend configurable (#1458) 2024-02-29 13:13:58 +00:00
James Wilson 3ffccb0369 [lightclient] lookup chain ID just once at beginning of each message (#1452)
* lookup chain ID just once at beginning of each message

* data => chain_data for more clarity

* cargo fmt
2024-02-28 18:50:35 +01:00
James Wilson 70d56dc62f avoid a panic in case we try decoding naff bytes (#1444) 2024-02-24 11:48:39 +01:00
James Wilson 19be36cd2b Fix error mapping to wrong transaction status (#1445) 2024-02-23 17:24:04 +00:00
James Wilson 0d1cc92f27 Update DispatchError to match latest in polkadot-sdk (#1442) 2024-02-23 16:16:52 +01:00
James Wilson 6f63ded5c1 [audit] Handle errors when fetching storage keys from Unstablebackend (#1440)
* Handle errors when fetching storage keys from Unstablebackend

* cargo fmt
2024-02-23 14:28:08 +01:00
James Wilson 4614ff7bbb Swap type aliases around to be semantically correct (#1441) 2024-02-23 14:27:57 +01:00
James WilsonandNiklas Adolfsson 0f48d54209 Return Pending rather than loop around if no new finalized hash in submit_transaction (#1378)
* Return Pending rather than loop around if no new finalized hash in submit_transaction

* uptodate => up-to-date

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

---------

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2024-01-18 17:54:46 +00:00
James Wilson e36f4ad270 fix submit_transaction debug logging of message 2024-01-18 12:35:29 +00:00
James Wilson fa2a75a3a9 Try a few RPC nodes in case one of them is not working 2024-01-18 12:02:27 +00:00
James Wilson f4acd1bae8 resolve clippy err 2024-01-18 10:27:16 +00:00
James Wilson 901aba9248 Merge branch 'master' into jsdw-follow-tweaks-and-logging 2024-01-18 09:22:46 +00:00
James Wilson fdaf08d9c7 update CI file from Alex PR 2024-01-18 09:22:26 +00:00