Skip to content

Releases: StellarCN/py-stellar-base

2.3.2

01 May 15:32
af3ee5d
Compare
Choose a tag to compare
  • fix: typo in fetching previous page.(#312)

2.4.0-alpha1

26 Apr 12:15
c947839
Compare
Choose a tag to compare
2.4.0-alpha1 Pre-release
Pre-release

This update include breaking changes.

This version brings protocol 13 support with backwards compatibility support for protocol 12.

If you want to help us test this alpha version, you can install it by running pip install stellar-sdk==2.4.0a1, please do not use this alpha version in production.

Added

  • Add TransactionBuilder.build_fee_bump_transaction which makes it easy to create FeeBumpTransaction, we have written an example, please click here to view it (#298).
  • Adds a feature flag which allow consumers of this library to create V1 (Protocol 13) transactions using the TransactionBuilder (#298).
  • Add support for CAP-0027: First-class multiplexed accounts (#300).
  • Add Keypair.xdr_muxed_account which creates a new MuxedAccount(#300).
  • Add FeeBumpTransaction and FeeBumpTransactionEnvelope which makes it easy to work with fee bump transactions (#298).
  • Add stellar_sdk.helpers.parse_transaction_envelope_from_xdr which makes it easy to parse TransactionEnvelope and FeeBumpTransactionEnvelope(#298).

Update

  • Update XDR definitions with protocol 13.
  • Extend TransactionEnvelope to work with TransactionEnvelopeand FeeBumpTransactionEnvelope (#298).
  • Add backward compatibility support for CAP-0018 (#307).

Breaking changes

  • The type of Transaction.source changes from Keypair to str.

  • In this version, some changes have occurred in the XDR files. If you depend on them, please click here to view the changes.

  • The following XDR fields, which were previously an AccountID are now a MuxedAccount (#300):

    • PaymentOp.destination
    • PathPaymentStrictReceiveOp.destination
    • PathPaymentStrictSendOp.destination
    • OperationOp.source
    • Operation.destination (for ACCOUNT_MERGE)
    • Transaction.source
    • FeeBumpTransaction.feeSource

    You can get the string representation by calling StrKey.encode_muxed_account which will return a G.. or M.. account.

2.3.1

12 Apr 07:41
519ccbb
Compare
Choose a tag to compare
  • Update dependencies.

2.3.0

31 Mar 14:05
f409fa8
Compare
Choose a tag to compare

Added

  • Add SEP-0029 (memo required) support. (#291)
    Extends Server.submit_transaction to always run a memo required check before
    sending the transaction. If any of the destinations require a memo and the
    transaction doesn't include one, then an AccountRequiresMemoError will be thrown.

    This may degrade performance, but you can skip this check by passing skip_memo_required_check=True to Server.submit_transaction:

    server.submit_transaction(tx, skip_memo_required_check=True)
    

    The check runs for each operation of type:

    • Payment
    • PathPaymentStrictReceive
    • PathPaymentStrictSend
    • AccountMerge

    If the transaction includes a memo, then memo required checking is skipped.

    See SEP-0029 for more information about memo required check.

Changed

  • Optimize the processing of horizon parameters. (#289)

View at: https://pypi.org/project/stellar-sdk/2.3.0/

2.2.3

12 Mar 12:35
6d19667
Compare
Choose a tag to compare
  • feat: add stellar_sdk.operation.set_options.Flag, we can express flag more conveniently. (fdb1f7d)

View at: https://pypi.org/project/stellar-sdk/2.2.3/

2.2.2

08 Mar 02:47
5598fb6
Compare
Choose a tag to compare
  • fix: parameters checking rule in TimeBounds. (561f3e7)
  • fix: HashMemo and ReturnHashMemo should be fixed in length (32 bytes). (22cd179)

View at: https://pypi.org/project/stellar-sdk/2.2.2/

2.2.1

12 Feb 11:49
ca62506
Compare
Choose a tag to compare
  • fix: orderbook async streams (#265)

2.1.4

12 Feb 11:38
2794e6a
Compare
Choose a tag to compare
  • fix: orderbook async streams (#265)

2.2.0

07 Feb 14:24
bd36a5b
Compare
Choose a tag to compare

Horizon v1.0.0 Compatibility.

Added

  • Add support for top-level offers endpoint with seller, selling, and buying filter.
    Horizon 1.0 includes a new /offers end-point, which allows you to list all offers, supporting filtering by seller, selling, or buying asset.

    You can fetch data from this endpoint by doing server.offers() and use any of the following filters:

    • seller: server.offers().for_seller(account_id)
    • buying: server.offers().for_buying(asset)
    • selling: server.offers().for_selling(asset)
    • offer detail : server.offers().offer(offer_id)

    This introduced a breaking change since it modified the signature for the function server.offers().

    Before, if you wanted to list all the offers for a given account, you'd do:

    server.offers(account_id)
    

    Starting on this version you'll need to do:

    server.offers().for_seller(account_id)
    

    You can do now things that were not possible before, like finding
    all offers for an account filtering by the selling or buying asset

    server.offers().for_seller(account_id).for_buying(buying_asset).for_selling(selling_asset)
    
  • Add support for filtering accounts by signer or asset, this has been released in a previous patch version.
    Horizon 1.0 includes a new /accounts end-point, which allows you to list all accounts who have another account as a signer or hold a given asset.

    You can fetch data from this endpoint by doing server.accounts() and use any of the following filters:

    • acount detail: server.accounts().account_id(account_id), returns a single account.
    • for signer: server.accounts().for_signer(account_id), returns accounts where account_id is a signer.
    • for asset: server.accounts().for_asset(asset), returns accounts which hold the asset.

Changed

  • Regenerate the XDR definitions to include MetaV2 support (also see #1902).

Fixed

  • Fixed some documentation errors.

Breaking

  • Change function signature for server.offers.
    The signature for the function server.offers() was changed to bring support for other filters.

    Before, if you wanted to list all the offers for a given account, you'd do:

    server.offers(account_id)
    

    Starting on this version you'll need to do:

    server.offers().for_seller(account_id)
    
  • server.accounts().signer and server.accounts().asset are marked as deprecated, use server.accounts().for_signer and server.accounts().for_asset instead.

There are also some changes related to the horizon's response, currently, SDK has not added parse support to it,
so please refer to this issue or release notes of Stellar horizon 1.0.0. In addition, support for parsing the horizon's responses will be added in the next major update.

View at: https://pypi.org/project/stellar-sdk/2.2.0/

2.1.3

04 Feb 06:06
5919d91
Compare
Choose a tag to compare
  • fix: fix the bug in SEP-0010 implementation.

View at: https://pypi.org/project/stellar-sdk/2.1.3/