From 5c97fa0bb87ce1160719353934bdf1f6a301af99 Mon Sep 17 00:00:00 2001 From: Jun Luo <4catcode@gmail.com> Date: Sat, 7 May 2022 15:39:22 +0800 Subject: [PATCH] release: 8.0.0 --- CHANGELOG.md | 47 ++++++++++++++++++++++++++++++++++++++ poetry.lock | 18 +++++++-------- pyproject.toml | 2 +- stellar_sdk/__version__.py | 2 +- 4 files changed, 58 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fe6af4d6..a94ad3e5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,53 @@ Release History ============== +### Version 8.0.0 + +Released on May 07, 2022 + +**This release includes breaking changes.** + +**This release adds support for Protocol 19.** + +It includes [CAP-21](https://stellar.org/protocol/cap-21) (new transaction preconditions) and [CAP-40](https://stellar.org/protocol/cap-40) (signed payload signers). + +#### Breaking changes + +- `Transaction.time_bounds` has been removed, please use `Transaction.preconditions.time_bounds` instead. +- No longer sets "now" as the default cursor for AiohttpClient.stream ([#591](https://github.com/StellarCN/py-stellar-base/pull/591)) +- Some breaking updates are included in XDR, you can check the changes [here](https://github.com/stellar/stellar-protocol/blob/70cb1449c4/core/cap-0021.md#xdr-diff). + +#### Add + +- Support for converting signed payloads ([CAP-40](https://stellar.org/protocol/cap-40)) to and from their StrKey (`P...`) representation, you can find the example [here](https://github.com/StellarCN/py-stellar-base/blob/v8/examples/ed25519_signed_payload.py). + +- Support for creating transactions with the new preconditions ([CAP-21](https://stellar.org/protocol/cap-21)) via `TransactionBuilder`, you can find the example [here](https://github.com/StellarCN/py-stellar-base/blob/v8/examples/preconditions.py). + + - `TransactionBuilder.set_ledger_bounds(min_ledger: int, max_ledger: int)` + + - `TransactionBuilder.set_min_sequence_number(min_sequence_number: int)` + + - `TransactionBuilder.set_min_sequence_age(min_sequence_age: int)` + + - `TransactionBuilder.set_min_sequence_ledger_gap(min_sequence_ledger_gap: int)` + + - `TransactionBuilder.add_extra_signer(signer_key: Union[SignerKey, SignedPayloadSigner, str])` + +- Support for Signing transactions containing the ed25519 payload extra signer, you can find the example [here](https://github.com/StellarCN/py-stellar-base/blob/v8/examples/preconditions.py). + + - `Keypair.sign_payload_decorated(data: bytes)` + - `TransactionEnvelope.sign_extra_signers_payload(signer: Union[Keypair, str])` +- Support for CAP-21 has been added to `stellar_sdk.sep.txrep`. + + +#### Update + +- feat: you can turn off runtime type checking by configuring `STELLAR_SDK_RUNTIME_TYPE_CHECKING=0` in environment variables. ([#589](https://github.com/StellarCN/py-stellar-base/pull/589)) + + In order to make the program more rigorous and novice friendly, we previously introduced runtime type checking, but this would cause a significant performance penalty, so now we allow users to turn it off. + +- refactor: remove runtime type checking in `stellar_sdk.xdr` package ([#584](https://github.com/StellarCN/py-stellar-base/pull/584)) + ### Version 8.0.0-beta4 Released on April 24, 2022 diff --git a/poetry.lock b/poetry.lock index 3e25c2e5..14f6f1b0 100644 --- a/poetry.lock +++ b/poetry.lock @@ -552,7 +552,7 @@ test = ["pytest", "typing-extensions", "mypy"] [[package]] name = "types-requests" -version = "2.27.19" +version = "2.27.25" description = "Typing stubs for requests" category = "dev" optional = false @@ -563,7 +563,7 @@ types-urllib3 = "<1.27" [[package]] name = "types-toml" -version = "0.10.5" +version = "0.10.6" description = "Typing stubs for toml" category = "dev" optional = false @@ -571,7 +571,7 @@ python-versions = "*" [[package]] name = "types-urllib3" -version = "1.26.13" +version = "1.26.14" description = "Typing stubs for urllib3" category = "dev" optional = false @@ -1213,16 +1213,16 @@ typeguard = [ {file = "typeguard-2.13.3.tar.gz", hash = "sha256:00edaa8da3a133674796cf5ea87d9f4b4c367d77476e185e80251cc13dfbb8c4"}, ] types-requests = [ - {file = "types-requests-2.27.19.tar.gz", hash = "sha256:795e378117088d1e4bf41a2c01a153b73d6ea40aa9d7c0ac753abde84c0d3a8f"}, - {file = "types_requests-2.27.19-py3-none-any.whl", hash = "sha256:c6c5384677d98f212516de50c4b2c38ef659b93008fbc5bb4b81726138bc8485"}, + {file = "types-requests-2.27.25.tar.gz", hash = "sha256:805ae7e38fd9d157153066dc4381cf585fd34dfa212f2fc1fece248c05aac571"}, + {file = "types_requests-2.27.25-py3-none-any.whl", hash = "sha256:2444905c89731dbcb6bbcd6d873a04252445df7623917c640e463b2b28d2a708"}, ] types-toml = [ - {file = "types-toml-0.10.5.tar.gz", hash = "sha256:f949463a388200be392ef9399dbad3e1e3bbe6d4543d84ad93d96c3fda028080"}, - {file = "types_toml-0.10.5-py3-none-any.whl", hash = "sha256:c1bed5926538aa9c4725cd369c250c47310f16f47d20611b7baef5988fed8634"}, + {file = "types-toml-0.10.6.tar.gz", hash = "sha256:6aeb3ed7bfa869381551c774ed6a9142e3eed98a83efa5108a9632eafd56dcd3"}, + {file = "types_toml-0.10.6-py3-none-any.whl", hash = "sha256:c1289e9fb748a6a1ed068694ded1eb16f83df22d58cc1abae8ef6262403545d8"}, ] types-urllib3 = [ - {file = "types-urllib3-1.26.13.tar.gz", hash = "sha256:40f8fb5e8cd7d57e8aefdee3fdd5e930aa1a1bb4179cdadd55226cea588af790"}, - {file = "types_urllib3-1.26.13-py3-none-any.whl", hash = "sha256:ff7500641824f881b2c7bde4cc57e6c3abf03d1e005bae83aca752e77213a5da"}, + {file = "types-urllib3-1.26.14.tar.gz", hash = "sha256:2a2578e4b36341ccd240b00fccda9826988ff0589a44ba4a664bbd69ef348d27"}, + {file = "types_urllib3-1.26.14-py3-none-any.whl", hash = "sha256:5d2388aa76395b1e3999ff789ea5b3283677dad8e9bcf3d9117ba19271fd35d9"}, ] typing-extensions = [ {file = "typing_extensions-4.1.1-py3-none-any.whl", hash = "sha256:21c85e0fe4b9a155d0799430b0ad741cdce7e359660ccbd8b530613e8df88ce2"}, diff --git a/pyproject.toml b/pyproject.toml index 930cb905..53c6a330 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "stellar-sdk" -version = "8.0.0b4" +version = "8.0.0" description = "The Python Stellar SDK library provides APIs to build transactions and connect to Horizon." authors = [ "overcat <4catcode@gmail.com>", diff --git a/stellar_sdk/__version__.py b/stellar_sdk/__version__.py index 0f54f959..a411cf22 100644 --- a/stellar_sdk/__version__.py +++ b/stellar_sdk/__version__.py @@ -11,7 +11,7 @@ __description__ = "The Python Stellar SDK library provides APIs to build transactions and connect to Horizon." __url__ = "https://github.com/StellarCN/py-stellar-base" __issues__ = f"{__url__}/issues" -__version__ = "8.0.0b4" +__version__ = "8.0.0" __author__ = "Eno, overcat" __author_email__ = "appweb.cn@gmail.com, 4catcode@gmail.com" __license__ = "Apache License 2.0"