Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prep to release v0.38.0 #1841

Merged
merged 2 commits into from
Oct 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,59 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.38.0] - 2024-10-24

This release doesn't introduce any substantial breaking changes and focuses primarily on incremental improvements, testing and bug fixes. A few of the highlights include:
niklasad1 marked this conversation as resolved.
Show resolved Hide resolved

- [#1785](https://github.com/paritytech/subxt/pull/1785): Support decoding V5 extrinsics in blocks (currently Subxt will still submit V4 extrinsics). This also unifies our extrinsic decoding logic into one place.
- [#1802](https://github.com/paritytech/subxt/pull/1802): Stabilizing the `subxt::backend::unstable::UnstableBackend` (it's now called `subxt::backend::chain_head::ChainHeadBackend`). This backend can be used to interact with the modern `chainHead` RPC methods exposed by Smoldot and compliant RPC nodes. See [this example](https://github.com/paritytech/subxt/blob/master/subxt/examples/setup_rpc_chainhead_backend.rs).
- [#1803](https://github.com/paritytech/subxt/pull/1803): Stabilizing the `reconnecting-rpc-client`. See [this example](https://github.com/paritytech/subxt/blob/master/subxt/examples/setup_reconnecting_rpc_client.rs).
- [#1720](https://github.com/paritytech/subxt/pull/1720): A nice little QoL improvement if you have the raw runtime WASM and would like to generate an interface directly from that (ie with `#[subx(runtime_path = "path/to/runtime.wasm")]`).
- [#1661](https://github.com/paritytech/subxt/pull/1661): Support loading keys directly from the PolkadotJS JSON to be used in Subxt.
- [#1638](https://github.com/paritytech/subxt/pull/1638): Improve support for Eth style chains by defining a 20-byte account ID type directly in `subxt-core`. See [this example](https://github.com/paritytech/subxt/blob/master/subxt/examples/tx_basic_frontier.rs).

The notable changes in this release are as follows:

### Added
- add reconnecting tests for unstable_backend ([#1765](https://github.com/paritytech/subxt/pull/1765))
- add support for generating metadata from runtime wasm files ([#1720](https://github.com/paritytech/subxt/pull/1720))
- support loading keys from Polkadot-JS accounts ([#1661](https://github.com/paritytech/subxt/pull/1661))
- allow tx payloads to be boxed ([#1690](https://github.com/paritytech/subxt/pull/1690))
- add hash method to ExtrinsicDetails ([#1676](https://github.com/paritytech/subxt/pull/1676))
- expose `secret_key` method for `ecdsa::Keypair` and `eth::Keypair` ([#1628](https://github.com/paritytech/subxt/pull/1628))
- add 20-byte account id to subxt_core ([#1638](https://github.com/paritytech/subxt/pull/1638))

### Changed
- make it clearer which extrinsic failed to decode ([#1835](https://github.com/paritytech/subxt/pull/1835))
- chore(deps): bump frame-metadata from 16 to 17 ([#1836](https://github.com/paritytech/subxt/pull/1836))
- chore(deps): bump `scale family crates`, `primitive-types` and `impl-serde` ([#1832](https://github.com/paritytech/subxt/pull/1832))
- chore(deps): replace `instant` with `web-time` ([#1830](https://github.com/paritytech/subxt/pull/1830))
- deps: use polkadot-sdk umbrella crate ([#1786](https://github.com/paritytech/subxt/pull/1786))
- stabilize reconnecting-rpc-client ([#1803](https://github.com/paritytech/subxt/pull/1803))
- stabilize chainhead backend ([#1802](https://github.com/paritytech/subxt/pull/1802))
- derive serialize on more types ([#1797](https://github.com/paritytech/subxt/pull/1797))
- use frame-decode for core extrinsic decode logic (including v5 support) ([#1785](https://github.com/paritytech/subxt/pull/1785))
- reconn-rpc-client: parse URL before connecting ([#1789](https://github.com/paritytech/subxt/pull/1789))
- update proc_macro_error to proc_macro_error2 ([#1767](https://github.com/paritytech/subxt/pull/1767))
- chore(deps): update Smoldot to the latest version ([#1400](https://github.com/paritytech/subxt/pull/1400))
- remove unneeded `?Sized` bound and replace never type with `()` ([#1758](https://github.com/paritytech/subxt/pull/1758))
- improve test coverage for legacy `Backend` impl ([#1751](https://github.com/paritytech/subxt/pull/1751))
- add integration tests for `unstable-reconnecting-rpc-client` ([#1711](https://github.com/paritytech/subxt/pull/1711))
- replace `reconnecting-jsonrpsee-ws-client` with `subxt-reconnecting-rpc-client` ([#1705](https://github.com/paritytech/subxt/pull/1705))
- allow PartialExtrinsic to be held across await points ([#1658](https://github.com/paritytech/subxt/pull/1658))
- chore(deps): bump jsonrpsee from 0.22.5 to 0.23.1 ([#1656](https://github.com/paritytech/subxt/pull/1656))

### Fixed
- fix stripping metadata in the case where enums like RuntimeCall are handed back ([#1774](https://github.com/paritytech/subxt/pull/1774))
- fix: `defalt-feature` -> `default-features` Cargo.toml ([#1828](https://github.com/paritytech/subxt/pull/1828))
- avoid hang by notifying subscribers when the backend is closed ([#1817](https://github.com/paritytech/subxt/pull/1817))
- fix: error message on rpc errors ([#1804](https://github.com/paritytech/subxt/pull/1804))
- docs: fix typos ([#1776](https://github.com/paritytech/subxt/pull/1776))
- examples: fix reconnecting logging target ([#1733](https://github.com/paritytech/subxt/pull/1733))
- docs: fix spelling issues ([#1699](https://github.com/paritytech/subxt/pull/1699))
- chore: fix some comments ([#1697](https://github.com/paritytech/subxt/pull/1697))
- codegen: Fix decode error by adding `#[codec(dumb_trait_bound)]` ([#1630](https://github.com/paritytech/subxt/pull/1630))

## [0.37.0] - 2024-05-28

This release mainly adds support for the sign extension `CheckMetadataHash` and fixes a regression introduced in v0.36.0
Expand Down
32 changes: 16 additions & 16 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 9 additions & 9 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ resolver = "2"
[workspace.package]
authors = ["Parity Technologies <[email protected]>"]
edition = "2021"
version = "0.37.0"
version = "0.38.0"
rust-version = "1.74.0"
license = "Apache-2.0 OR GPL-3.0"
repository = "https://github.com/paritytech/subxt"
Expand Down Expand Up @@ -139,14 +139,14 @@ tokio-util = "0.7.12"
polkadot-sdk = { version = "0.7", default-features = false }

# Subxt workspace crates:
subxt = { version = "0.37.0", path = "subxt", default-features = false }
subxt-core = { version = "0.37.0", path = "core", default-features = false }
subxt-utils-fetchmetadata = { version = "0.37.0", path = "utils/fetch-metadata", default-features = false }
subxt-macro = { version = "0.37.0", path = "macro" }
subxt-metadata = { version = "0.37.0", path = "metadata", default-features = false }
subxt-codegen = { version = "0.37.0", path = "codegen" }
subxt-signer = { version = "0.37.0", path = "signer", default-features = false }
subxt-lightclient = { version = "0.37.0", path = "lightclient", default-features = false }
subxt = { version = "0.38.0", path = "subxt", default-features = false }
subxt-core = { version = "0.38.0", path = "core", default-features = false }
subxt-macro = { version = "0.38.0", path = "macro" }
subxt-metadata = { version = "0.38.0", path = "metadata", default-features = false }
subxt-codegen = { version = "0.38.0", path = "codegen" }
subxt-signer = { version = "0.38.0", path = "signer", default-features = false }
subxt-lightclient = { version = "0.38.0", path = "lightclient", default-features = false }
subxt-utils-fetchmetadata = { version = "0.38.0", path = "utils/fetch-metadata", default-features = false }
test-runtime = { path = "testing/test-runtime" }
substrate-runner = { path = "testing/substrate-runner" }

Expand Down
Loading
Loading