Skip to content

Releases: scs/substrate-api-client

v0.18.0

04 Jul 14:16
ece488c
Compare
Choose a tag to compare

For release-polkadot-v1.14.0 use branch release-polkadot-v1.14.0
For release-polkadot-v1.13.0 use branch release-polkadot-v1.13.0

🎉 Featuring

  • quickfix to handle new Merkleized metadata
  • Better wasm support
  • improvements on the build pipeline

What's Changed since v0.17.0

⚡ Breaking API changes

🌈 Features

🐛 Bug Fixes

Miscellaneous

20 changes

v0.17.0

29 Feb 13:41
8510517
Compare
Choose a tag to compare

For release-polkadot-v1.8.0 use branch release-polkadot-v1.8.0
For release-polkadot-v1.7.2 use branch release-polkadot-v1.7.2
For release-polkadot-v1.7.1 use branch release-polkadot-v1.7.1
For release-polkadot-v1.7.0 use branch release-polkadot-v1.7.0

🎉 Featuring

  • The Runtime Api is now supported
  • Upon execution error onchain of an extrinsic being watches, the full report is now returned, including all information about the failure.
  • Macros are now safe to use: no more unwraps

What's Changed since v0.16.0

⚡ Breaking API changes

🌈 Features

🐛 Bug Fixes

Miscellaneous

14 changes

v0.16.0

22 Dec 14:12
724f7c3
Compare
Choose a tag to compare

For release-polkadot-v1.6.0 use branch release-polkadot-v1.6.0
For release-polkadot-v1.5.0 use branch release-polkadot-v1.5.0

🎉 Featuring

  • Library updates (tungstenite, parity scale)
  • Small bugfixes and improvements from user issues

What's Changed since v0.15.0

⚡ Breaking API changes

🌈 Features

  • node-api: Box Error::DecodeValue and Error::EncodeValue (#700) @haerdib
  • Lower log-level of messages of tungstenite and ws-rpc clients (#674) @haerdib

🐛 Bug Fixes

  • Update WithExtrinsicParams to use ExtrinsicSigner<Self> (#698) @haerdib
  • Fix compile errors of stand-alone features (#677) @haerdib

Miscellaneous

11 changes
  • Update WithExtrinsicParams to use ExtrinsicSigner<Self> (#698) @haerdib
  • node-api: Box Error::DecodeValue and Error::EncodeValue (#700) @haerdib
  • Update to polkadot release v1.4.0 commit (#695) @haerdib
  • Update parity scale dependencies (#687) @haerdib
  • Update tungstenite and array-bytes (#689) @haerdib
  • Create no_std example for extrinsic creation (#556) @Niederb
  • Fix compile errors of stand-alone features (#677) @haerdib
  • Remove deprecated functions (#678) @haerdib
  • Rpc-api author: Clarify comments about blocking functions (#679) @haerdib
  • Lower log-level of messages of tungstenite and ws-rpc clients (#674) @haerdib
  • Fix feature order in node-api toml (#672) @haerdib

v0.15.0

09 Nov 08:52
be3e1f7
Compare
Choose a tag to compare

For release-polkadot-v1.4.0 use branch release-polkadot-v1.4.0
For release-polkadot-v1.3.0 use branch release-polkadot-v1.3.0

🎉 Featuring

  • Several security updates of dependencies
  • Support of stable metadata v15 (#657)

What's Changed since v0.14.0

⚡ Breaking API changes

🌈 Features

  • Update frame metadata to v16 (#657) @haerdib
  • Add trait bounds to config: Index: Default, BlockNumber: AtLeast32BitsUnsigned (#648) @clangenb

🐛 Bug Fixes

  • Add subscription ID recognition to tungstenite and ws-rpc client (#662) @haerdib

Miscellaneous

7 changes

v0.14.0

07 Aug 09:00
0b32693
Compare
Choose a tag to compare

For release-polkadot-v1.2.0 use branch polkadot-v1.2.0 or release-polkadot-v1.2.0
For release-polkadot-v1.1.0 use branch polkadot-v1.1.0 or release-polkadot-v1.1.0

🎉 Featuring

  • get_storage_keys_paged now allows fetching more than the limited 1000 from Substrate (see #602)
  • submit_and_watch_extrinsic_until returns an error in case the extrinsic fails to be executed onchain (see #606)
  • Improved Async support: Subscriptions are now also available (see #612)
  • Runtime upgrades can now be detected with the function detect_runtime_update(). Examples are available in both sync and async versions (see #635)

What's Changed since v0.13.0

⚡ Breaking API changes

🌈 Features

🐛 Bug Fixes

Miscellaneous

14 changes

v0.13.0

30 Jun 13:22
a74ea58
Compare
Choose a tag to compare

For polkadot-v1.0.0 use branch polkadot-v1.0.0 or release-polkadot-v1.0.0

🎉 Featuring

  • Metadata v15 is now supported (see #587)
  • Duplicate Substrate type definitions were removed as Substrate features serde now (see #580)
  • New functions: get_system_account_next_index and storage_double_map_key_prefix (see #573 and #575)

What's Changed since v0.12.0

⚡ Breaking API changes

🌈 Features

  • add storage_double_map_key_prefix (#568) @bai-3
  • Add function get_system_account_next_index (#573) @haerdib

Miscellaneous

14 changes

v0.12.0

09 May 15:55
0c8b9e8
Compare
Choose a tag to compare

For polkadot-v1.0.0 use branch polkadot-v1.0.0-tag-v0.12.0
For polkadot-v0.9.43 use branch polkadot-v0.9.43
For polkadot-v0.9.42 use branch polkadot-v0.9.42

🎉 Featuring

  • Async support for direct request/response communication (see #521)
  • Improve Dispatch Errors (see #563)
  • Introduce chain api helpers (see #538)
  • Support decoding events from the metadata (see #545)
  • Small bug fixing (see #535, #524)
  • Code clean up (see #522, #532 #534, #541, #563)

What's Changed since v0.11.0

⚡ Breaking API changes

🌈 Features

  • Improve Dispatch Errors (#563) @echevrier
  • Add next_events_from_metadata and rename next_event (#545) @haerdib
  • Provide async support for direct request/response communication (#521) @Niederb
  • Make pallet-staking and pallet-contracts dependencies optional (#522) @Niederb

🐛 Bug Fixes

  • Clean up dependencies and fix primitives no_std build (#535) @haerdib
  • Update to Substrate commit 7363dce (#524) @haerdib

Miscellaneous

16 changes

What's Changed

Full Changelog: v0.11.0...v0.12.0

v0.11.0

05 Apr 14:45
c82bc0b
Compare
Choose a tag to compare

For polkadot-v0.9.43 use branch polkadot-v0.9.43-tag-v0.11.0
For polkadot-v0.9.42 use branch polkadot-v0.9.42-tag-v0.11.0
For polkadot-v0.9.41 use branch polkadot-v0.9.41
For polkadot-v0.9.40 use branch polkadot-v0.9.40

🎉 Featuring

  • Full wasm support in no_std mode (see #478)
  • Multiple smaller bug / missing feature fixes (#458, #471, #509, #510, ...)
  • Code clean up and improved documentation (#473, #448)

What's Changed since v0.10.0

⚡ Breaking API changes

  • check and rework wildcard pub re-export (#473) @echevrier
  • Function renamings in state api interface + improved documentation (#448) @masapr

🌈 Features

🐛 Bug Fixes

Miscellaneous

16 changes

v0.10.0

01 Feb 15:09
07ed77d
Compare
Choose a tag to compare

For polkadot-v0.9.43 use branch polkadot-v0.9.43-tag-v0.10.0
For polkadot-v0.9.42 use branch polkadot-v0.9.42-tag-v0.10.0
For polkadot-v0.9.41 use branch polkadot-v0.9.41-tag-v0.10.0
For polkadot-v0.9.40 use branch polkadot-v0.9.40-tag-v0.10.0
For polkadot-v0.9.39 use branch polkadot-v0.9.39
For polkadot-v0.9.38 use branch polkadot-v0.9.38-tag-v0.10.0
For polkadot-v0.9.37 use branch polkadot-v0.9.37-tag-v0.10.0

🎉 Featuring

  • Fully generic UncheckedExtriniscV4 (see #418):
    • Signature, AccountId and Signer type are no longer hardcoded, but fully adaptable.
    • Introduced ExtrinsicSigner struct for easy type assignment
  • submit_extrinsic (and watch) no longer requires encoded extrinsic, but the UncheckedExtrsinsicV4 itself. This way, the correct extrinsic type is enforced by the compiler. The encoded extrinsic may still be submitted with the newly introduced submit_opaque_extrinsic (and watch). See #421
  • Introduced new functionality with fetch_events_for_extrinsic and fetch_events_from_block. With these functions, events associated to a specific event or inside a given block can be easily retrieved. Some examples have been adapted to show the use case of these features. See #437.
  • Extrinsic creation code was heavily simplified and a trait for each implemented pallet was introduced. This allows mocking and better unit testing on the user side. See #434

What's Changed since v0.9.0

⚡ Breaking API changes

  • Remove wait_for_event and simplify event access in subscribe_events (#437) @haerdib
  • Add traits and remove excessive type definition in extrinsic helpers (#434) @haerdib
  • Make UncheckedExtrinsicV4 generic (#418) @haerdib
  • Enforce Bytes and remove obsolete hex-utils (#423) @haerdib
  • Clean up Api Error and indicate future status clearly (#424) @haerdib
  • Enforce UncheckedExtrinsicV4 for submit_extrinsic and add _opaque_extrinsic (#421) @haerdib
  • Clean up extrinsic params builder (#405) @haerdib
  • Remove thiserror (#419) @haerdib

🌈 Features

  • Remove wait_for_event and simplify event access in subscribe_events (#437) @haerdib
  • Add traits and remove excessive type definition in extrinsic helpers (#434) @haerdib
  • add fetch_events_from_block and fetch_events_for_extrinsic (#429) @haerdib
  • Make UncheckedExtrinsicV4 generic (#418) @haerdib
  • Enforce Bytes and remove obsolete hex-utils (#423) @haerdib
  • Clean up Api Error and indicate future status clearly (#424) @haerdib
  • Enforce UncheckedExtrinsicV4 for submit_extrinsic and add _opaque_extrinsic (#421) @haerdib

Miscellaneous

13 changes
  • Remove wait_for_event and simplify event access in subscribe_events (#437) @haerdib
  • Add traits and remove excessive type definition in extrinsic helpers (#434) @haerdib
  • add fetch_events_from_block and fetch_events_for_extrinsic (#429) @haerdib
  • Add staking example to CI (#433) @haerdib
  • Make UncheckedExtrinsicV4 generic (#418) @haerdib
  • add submit_and_watch_until_success to examples (#428) @haerdib
  • Enforce Bytes and remove obsolete hex-utils (#423) @haerdib
  • Clean up Api Error and indicate future status clearly (#424) @haerdib
  • Update toolchain to 2023-01-05 (#425) @haerdib
  • Enforce UncheckedExtrinsicV4 for submit_extrinsic and add _opaque_extrinsic (#421) @haerdib
  • Bump tokio from 1.23.0 to 1.23.1 (#427) @dependabot
  • Clean up extrinsic params builder (#405) @haerdib
  • Remove thiserror (#419) @haerdib

v0.9.0

04 Jan 10:09
7e5962b
Compare
Choose a tag to compare

For polkadot-v0.9.41 use branch polkadot-v0.9.41-tag-v0.9.0
For polkadot-v0.9.40 use branch polkadot-v0.9.40-tag-v0.9.0
For polkadot-v0.9.39 use branch polkadot-v0.9.39-tag-v0.9.0
For polkadot-v0.9.38 use branch polkadot-v0.9.38

🎉 Featuring

  • Newly introduced rpc clients:
    • tungstenite client
    • jsonrpsee client. With this client, the issue with too many node requests has finally been solved. See #366.
  • Enhanced no_std support: Everything is now no_std compatible, except for the rpc clients. See #377.
  • The Api is finally abstracted behind traits, allowing easy mocking and exchanges. See #363.
  • New functionalities, such as submit_and_watch_extrinsic_until_success, get_storage_keys_paged and several system-getter helpers.

What's Changed since v0.8.0

⚡ Breaking API changes

  • SubmitAndWatch: Return ExtrinsicReport instead of block hash (#386) @haerdib
  • Clean up pub exports and rename Api Result and Error (#376) @haerdib
  • Enhance rpc interface and simplify ws client (#354) @haerdib

🌈 Features

  • Add get_storage_keys_paged (#403) @haerdib
  • Add submit_and_watch_extrinsic_until_success method (#398) @haerdib
  • Add some system helper functions (#402) @haerdib
  • Add helper methode api.compose_extrsinic_offline (#394) @haerdib
  • SubmitAndWatch: Return ExtrinsicReport instead of block hash (#386) @haerdib
  • Make api/rpc interfaces no_std compatible (#384) @haerdib
  • Add api traits (#363) @haerdib
  • Add jsonrpsee as default rpc client (#366) @haerdib
  • Enhance rpc interface and simplify ws client (#354) @haerdib
  • Support tungstenite-rs rpc client (#355) @zhizming-zhong

🐛 Bug Fixes

Miscellaneous

23 changes