Skip to content

0.41.0

Compare
Choose a tag to compare
@sreuland sreuland released this 19 Sep 22:35
574b1f2

Changes

  • Add support for Soroban Preview 11. (#530)
  • New effects have been added to support Protocol 20 (Soroban) (#535):
    • ContractCredited occurs when a Stellar asset moves into its corresponding Stellar Asset Contract instance
    • ContractDebited occurs when a Stellar asset moves out of its corresponding Stellar Asset Contract instance
  • Add helper functions to sign authorization entries. (#537)

Breaking changes

  • Bump dependencies & Remove unnecessary dependencies like guava. (#523)

  • No longer provide a shadow jar that contains embedded, relocated third-party dependencies. (#528)
    Instead the default stellar-sdk.jar and the com.github.stellar:java-stellar-sdk:{version} dependency are now packaged
    as 'thin library' jar, having no embedded dependencies.

    • if your project used stellar-sdk.jar directly on classpath loader, will need to obtain the .jar for each dependency version listed in build.gradle.kts
      and include all in your project classpath, or consider downloading the 'uber' jar from the published artifacts on repo
      https://jitpack.io/com/github/stellar/java-stellar-sdk/{version}/java-stellar-sdk-{version}-uber.jar

    • if your project utilizes dependency management for build such as gradle/maven, then you can choose from the following artifacts
      using the dependency classifier:

      implementation("com.github.stellar:java-stellar-sdk:{version}") // thin jar
      implementation("com.github.stellar:java-stellar-sdk:{version}:uber") // uber jar
      implementation("com.github.stellar:java-stellar-sdk:{version}:javadoc") // javadoc jar
      implementation("com.github.stellar:java-stellar-sdk:{version}:sources") // sources jar
    • When using the 'thin' jar in dependency management, it will automatically fetch dependencies transitively.
      If your project declares dependencies that are also declared here, then your project will override
      the preferences of this project and may cause runtime conflict.

    • When using the 'uber' jar in dependency management or as .jar in classpath , be aware that it does not relocate the dependent packages.

  • Utils.claimableBalanceIdToXDR and Utils.xdrToClaimableBalanceId have been removed. (#503)

  • The types of the following fields have changed. (#498)

    field before now
    LedgerBounds.minLedger int long
    LedgerBounds.maxLedger int long
    MemoId.id long BigInteger
    TimeBounds.minTime long BigInteger
    TimeBounds.maxTime long BigInteger
    TransactionBuilder.baseFee int long
    TransactionPreconditions.TIMEOUT_INFINITE long BigInteger
    TransactionPreconditions.minSeqAge Long BigInteger
    TransactionPreconditions.minSeqLedgerGap int long