* 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)
* 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
* 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
* 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
* start migrating, broken
* first iteration of updating
* fmt and clippy
* add Composite<u32> decoding via scale value patch
* bump scale type gen versions
* fix decoding with new scale decode
* compiling with changed deps
* core utils, condig, client, metadata
* core crate compiling
* signer crate no once lock
* add core to no-std-tests, change imports
* broken commit, start pulling everything together in subxt
* port more things to subxt
* events in core crate, extrinsics sadly much more difficult
* almost all examples pass again
* dynamic values fix in examples
* fix no std issue and fmt
* remove unused dependencies
* fix lightclient impl
* runtime version refactor
* formatting and addressing nits
* more comments addressed
* update wasm example and no-std-signer tests
* other nits and error impl on signer errors
* fix feature flag
* fix runtime version refactor
* fix doc links
* fix integration tests
* fix feature flag gated client state
* fix native feature in CI
* fix lightclient utils
* make imports more lean in subxt-core
* integrate changes from subxt-core imports into subxt
* other changes in subxt simplify imports more
* fix and docs
* doc false for cli
* fix clippy
* remove events block hash in tests
* codegen no-std support in generated code
* export alloc crate for no-std codegen
* fix doc test
* implement James comments
* remove std traits, use core traits instead
* address nits
* remove unusued dep in no-std tests
* fix Box import in no_std
* sp-crypto-hashing instead of sp-core-hashing
* bump scale-typegen, add no std codegen tests
* fix some things
* replace unmaintained derivative with derive_where to remove non-canonical warnings
* fmt
* remove unused dep
* fix deps
* update artifacts to fix type ID mismatches
* bump to latest scale-typegen
---------
Co-authored-by: James Wilson <james@jsdw.me>
* start migrating, broken
* first iteration of updating
* fmt and clippy
* add Composite<u32> decoding via scale value patch
* bump scale type gen versions
* fix decoding with new scale decode
* fix js-sys versions
* add nit comments
* add insecure url checks
* rename variables
* add feature flags to expose Url properly
* fix test compile error
* fix feature errors
* remove comment
* add url crate and use it for url parsing
* fix compile errors
* satisfy the holy clippy
* fix typos and host loopback
* macro attribute, provide validation function in utils
* fix expected output of ui tests
* remove the success case for --allow-insecure because we cannot establish ws:// connection at the moment.
* remove defautl feature, add target cfg, change CI job waml
* adjust CI job
* Adjust docs
* adjust the CI job
* add wasm targe to ci again
* remove the unresolved links from the book
* Update subxt/src/book/usage/transactions.rs
---------
Co-authored-by: James Wilson <james@jsdw.me>
* parachain rpc lists
* guide almost done
* add the 3rd config
* subscribe to block with configs
* delete table file
* spaces instead of tabs
* remove original ajuna example
* zombienet setup
* nft minting example
* include port, use different names
* link the example from the book
* format book
* add config creation to book, simplify example structure
* fix the nft creation script
* fix doc ref
* fixing links to foreign crates
* fix table formatting
* include nits
* move more docs to book, and simplify parachain-example
* another pass over docs and link to exampels from guide
* nit: adjust comment to numbers
* teeny README fix for parachain-example
* fix command in readme
* add CI for examples and fix parachain-example bug I left in
* add target arch
* cargo fmt
* make CI not fail
* remove index from docs
---------
Co-authored-by: James Wilson <james@jsdw.me>