Skip to content

Releases: lightsail-network/java-stellar-sdk

0.23.0

02 Feb 15:18
d20dc6c
Compare
Choose a tag to compare
  • Updates the SEP-10 utility function parameters to support SEP-10 v3.1 (#319)
    • A new required webAuthDomain parameter was added to the following functions
      • Sep10Challenge#newChallenge(KeyPair, Network, String, String, String, TimeBounds)
      • Sep10Challenge#readChallengeTransaction(String, String, Network, String, String)
      • Sep10Challenge#readChallengeTransaction(String, String, Network, String[], String)
      • Sep10Challenge#verifyChallengeTransactionSigners(String, String, Network, String, String, Set)
      • Sep10Challenge#verifyChallengeTransactionSigners(String, String, Network, String[], String, Set)
      • Sep10Challenge#verifyChallengeTransactionThreshold(String, String, Network, String[], String, int, Set)
      • Sep10Challenge#verifyChallengeTransactionThreshold(String, String, Network, String, String, int, Set)
    • The webAuthDomain parameter is expected to match the value of the Manage Data operation with the 'web_auth_domain' key, if present.

0.22.1

13 Jan 14:30
ddba21b
Compare
Choose a tag to compare
  • Fix several bugs in revoke operations. (#317)

0.22.0

09 Jan 09:00
6d156bd
Compare
Choose a tag to compare
  • The XDR classes have been regenerated using the latest version of xdrgen which provides the following two features:
    • Builder static inner classes to unions and structs
    • Constructors for typedefs

0.21.2

11 Dec 19:45
e12ba3d
Compare
Choose a tag to compare
  • Update challenge transaction helpers for SEP-0010 v3.0.0. (#308)
  • Fix the decoding of balanceId in org.stellar.sdk.ClaimClaimableBalanceOperation. (#310)

0.21.1

28 Oct 14:10
9fb2d90
Compare
Choose a tag to compare
  • Fix NullPointerException in org.stellar.sdk.responses.operations.RevokeSponsorshipOperationResponse accessor methods.

0.21.0

22 Oct 17:45
4e54516
Compare
Choose a tag to compare

Breaking change

  • Change the type of offerId from java.lang.Integer to java.lang.Long to align with the 64-bit size of offer IDs. (#303).

    This change affects the following fields:

    • org.stellar.sdk.responses.operations.CreatePassiveSellOfferOperationResponse.offerId
    • org.stellar.sdk.responses.operations.ManageBuyOfferOperationResponse.offerId
    • org.stellar.sdk.responses.operations.ManageSellOfferOperationResponse.offerId

0.20.0

20 Oct 21:02
27718e1
Compare
Choose a tag to compare
  • Update challenge transaction helpers for SEP-0010 v2.1.0. (#300).
    • Remove verification of domain name.
    • Allow additional manage data operations that have the source account set as the server key.

0.19.0

05 Oct 13:48
beed1c6
Compare
Choose a tag to compare

This version of the Java SDK implements full support for the upcoming Stellar Protocol 14 upgrade.

Add

  • Add support for claimable balances (#295).
    Extend server class to allow loading claimable balances from Horizon. The following functions are available:
server.claimableBalances();
server.claimableBalances().forClaimant(claimant);
server.claimableBalances().forSponsor(sponsorId);
server.claimableBalances().forAsset(asset);
server.claimableBalances().claimableBalance(balanceId);
  • Add the following attributes to AccountResponse (#295):

    • Optional<String> getSponsor()
    • Integer getNumSponsoring()
    • Integer getNumSponsored()
  • Add the optional attribute Optional<String> getSponsor() to AccountResponse.Signer, AccountResponse.Balance, ClaimableBalanceResponse, and OfferResponse (#295).

  • Add sponsor filtering support for offers and accounts (#295).

    • server.offers().forSponsor(accountID)
    • server.accounts().forSponsor(accountID)
  • Extend operation responses to support new operations (#295).

    • create_claimable_balance with the following fields:
      • asset - asset available to be claimed (in canonical form),
      • amount - amount available to be claimed,
      • claimants - list of claimants with predicates (see below):
        • destination - destination account ID,
        • predicate - predicate required to claim a balance (see below).
    • claim_claimable_balance with the following fields:
      • balance_id - unique ID of balance to be claimed,
      • claimant - account ID of a claimant.
    • begin_sponsoring_future_reserves with the following fields:
      • sponsored_id - account ID for which future reserves will be sponsored.
    • end_sponsoring_future_reserves with the following fields:
      • begin_sponsor - account sponsoring reserves.
    • revoke_sponsorship with the following fields:
      • account_id - if account sponsorship was revoked,
      • claimable_balance_id - if claimable balance sponsorship was revoked,
      • data_account_id - if account data sponsorship was revoked,
      • data_name - if account data sponsorship was revoked,
      • offer_id - if offer sponsorship was revoked,
      • trustline_account_id - if trustline sponsorship was revoked,
      • trustline_asset - if trustline sponsorship was revoked,
      • signer_account_id - if signer sponsorship was revoked,
      • signer_key - if signer sponsorship was revoked.
  • Extend effect responses to support new effects (#295).

    • claimable_balance_created with the following fields:
      • balance_id - unique ID of claimable balance,
      • asset - asset available to be claimed (in canonical form),
      • amount - amount available to be claimed.
    • claimable_balance_claimant_created with the following fields:
      • balance_id - unique ID of a claimable balance,
      • asset - asset available to be claimed (in canonical form),
      • amount - amount available to be claimed,
      • predicate - predicate required to claim a balance (see below).
    • claimable_balance_claimed with the following fields:
      • balance_id - unique ID of a claimable balance,
      • asset - asset available to be claimed (in canonical form),
      • amount - amount available to be claimed,
    • account_sponsorship_created with the following fields:
      • sponsor - sponsor of an account.
    • account_sponsorship_updated with the following fields:
      • new_sponsor - new sponsor of an account,
      • former_sponsor - former sponsor of an account.
    • account_sponsorship_removed with the following fields:
      • former_sponsor - former sponsor of an account.
    • trustline_sponsorship_created with the following fields:
      • sponsor - sponsor of a trustline.
    • trustline_sponsorship_updated with the following fields:
      • new_sponsor - new sponsor of a trustline,
      • former_sponsor - former sponsor of a trustline.
    • trustline_sponsorship_removed with the following fields:
      • former_sponsor - former sponsor of a trustline.
    • claimable_balance_sponsorship_created with the following fields:
      • sponsor - sponsor of a claimable balance.
    • claimable_balance_sponsorship_updated with the following fields:
      • new_sponsor - new sponsor of a claimable balance,
      • former_sponsor - former sponsor of a claimable balance.
    • claimable_balance_sponsorship_removed with the following fields:
      • former_sponsor - former sponsor of a claimable balance.
    • signer_sponsorship_created with the following fields:
      • signer - signer being sponsored.
      • sponsor - signer sponsor.
    • signer_sponsorship_updated with the following fields:
      • signer - signer being sponsored.
      • former_sponsor - the former sponsor of the signer.
      • new_sponsor - the new sponsor of the signer.
    • signer_sponsorship_removed with the following fields:
      • former_sponsor - former sponsor of a signer.

Breaking changes

  • Replace Sep10Challenge.newChallenge()'s String anchorName parameter with String domainName
  • Add String domainName parameter to Sep10Challenge.readChallengeTransaction(), Sep10Challenge.verifyChallengeTransactionSigners(), and Sep10Challenge.verifyChallengeTransactionThreshold()

SEP-10 now requires clients to verify the SIGNING_KEY included in the TOML file of the service requiring authentication is used to sign the challenge and that the challenge's Manage Data operation key includes the requested service's home domain. These checks ensure the challenge cannot be used in a relay attack.

The breaking changes described above support the added SEP-10 2.0 requirements for both servers and clients.

0.18.0

18 Jun 17:52
5738f27
Compare
Choose a tag to compare
  • Generate V1 transaction envelopes when constructing new Transaction instances (#285).
  • Allow FeeBumpTransaction instances to wrap V0 transactions (#285).

0.17.0

27 May 19:08
348f76b
Compare
Choose a tag to compare
  • Rollback support for SEP23 (Muxed Account StrKey) (#282).