Skip to content

Releases: scs/substrate-api-client

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

v0.8.0

07 Dec 07:58
a92f2ca
Compare
Choose a tag to compare

🎉 Featuring

  • Generic Api - finally compatible with all possible Substrate runtimes
  • New functionality: update_runtime function, allowing the api client to follow the nodes runtime upgrades.

What's Changed since v0.7.0

⚡ Breaking API changes

  • Make api and primitives generic over Runtime (#340) @haerdib
  • [Api] add update_runtime function and return metadata from cache (#337) @haerdib
  • Decouple RpcClient and Api (#336) @haerdib

🌈 Features

  • Make api and primitives generic over Runtime (#340) @haerdib
  • [Api] add update_runtime function and return metadata from cache (#337) @haerdib
  • Make primitives generic over Index, Hash and Balance (#334) @haerdib

Miscellaneous

10 changes

v0.7.0

21 Nov 10:09
f46480f
Compare
Choose a tag to compare

For polkadot-v0.9.39 use branch polkadot-v0.9.39-tag-v0.7.0
For polkadot-v0.9.38 use branch polkadot-v0.9.38-tag-v0.7.0
For polkadot-v0.9.37 use branch polkadot-v0.9.37-tag-v0.7.0

🎉 Featuring

  • Several Bugs fixed, such as wrong error messages, calculating the InclusionFee and input params.
  • Support of Substrate nodes that use asset tip payment.
  • no_std compatible metadata and node_api
  • Several new functionalities, such as get_constant, get_block_hash, ..

What's Changed since v0.5.0

⚡ Breaking API changes

🌈 Features

🐛 Bug Fixes

Miscellaneous

70 changes

upgrade to substrate 3.0.0

09 Mar 14:30
a08d8ae
Compare
Choose a tag to compare
  • no more pinned revisions of substrate. You'll have to handle dependencies with
cargo update -p sp-std --precise 743accbe3256de2fc615adcaa3ab03ebdbbb4dbd

wss:// fix

18 Oct 17:34
Compare
Choose a tag to compare
wss:// fix Pre-release
Pre-release
v0.4.10-sub2.0.0

fix #101 wss://

upgrade to substrate 2.0.0

13 Oct 13:39
Compare
Choose a tag to compare
v0.4.9-sub2.0.0

upgrade to substrate 2.0.0

upstream upgrade 2.0.0-rc5

12 Sep 17:54
cad765f
Compare
Choose a tag to compare
Pre-release
Upgrade upstream v2.0.0 rc5 (#99)

* upgrade toml and lock

* upgrade some dependencies. builds now. xtrinsic fails with bad signature

* panic upon invalid extrinsic with more verbose message

* include transaction_version in extrinsic signature. See paritytech/substrate@ea501c2d

* fix no_std test Cargo.lock

* fix unit tests by moving panic and adjusting error types

* fmt

upgrade to substrate 2.0.0-alpha.6

28 Apr 12:41
40c90f3
Compare
Choose a tag to compare
Pre-release
v0.4.0-sub2.0.0-alpha.6

more doc update

no_std support for substraTEE M5

03 Oct 09:52
c28e6ae
Compare
Choose a tag to compare
Merge pull request #28 from scs/no_std_rstd

no_std support