…ync client
cf64f97 feat(client): add new `submit_package` API (acidbunny21)
Pull request description:
### Description
Add new `submit_package` method to both `BlockingClient` and `AsyncClient`, as it's now supported by Esplora API, see: Blockstream/electrs#119, Blockstream/electrs#159. Also, adds new `SubmitPackageResult`, `TxResult`, and `MempoolFeesSubmitPackage` API structures.
It updates the internal `post_request_hex` method to `post_request_bytes`, now handling `query_params` and having `Response` as return type. Additionally, updates the internals of `broadcast` to utilize the new `post_request` and `post_request_bytes` without breaking its API.
### Notes to the reviewers
As mentioned in the PR comments, I updated the original commit by `@acidbunny21` by:
- (i) adding `@ValuedMammal`'s suggested fixes;
- (ii) removing the breaking change on the `broadcast` API, it's now a follow-up in #151.
### Changelog notice
```
### Added
- feat(client): add new `submit_package` API to `BlockingClient` and `AsyncClient`
- feat(api): add new `SubmitPackageResult`, `TxResult`, and `MempoolFeesSubmitPackage` API structures
### Changed
- feat(client): update the `post_request_hex` method to `post_request_bytes`, now handling `query_params` and having `Response` as return type.
- feat(client): update the internals of the `broadcast` method to use new `post_request` and `post_request_bytes`, with no breaking change.
```
### Checklists
#### All Submissions:
* [x] I've signed all my commits
* [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
* [x] I ran `just p` before pushing
#### New Features:
* [ ] I've added tests for the new feature
> The PR does not add new tests for the `submit_package` API, as it's not yet supported by `electrsd`, it's tracked by: #152
* [x] I've added docs for the new feature
ACKs for top commit:
ValuedMammal:
ACK cf64f97; used `git range-diff`
luisschwab:
re-ACK cf64f97
Tree-SHA512: cfc0a4ad3d119f52e503facbfcb3666c9fa521707d76016cb506bc4ad5261e0a9d1e9fdfcfcaa6de329b44535bc428c76d7dba47e437a0877a828786420ac1a3
Description
It's a remaining follow-up from #114, it does the remaining breaking change to broadcast API.
Changelog Notice