Skip to content

v0.10.0

Compare
Choose a tag to compare
@Shaptic Shaptic released this 04 Aug 22:08
· 34 commits to main since this release
c144d69

Breaking Changes

  • We have dropped all support for the deprecated hex-encoded contract ID format (#117, #658).

You should use the well-supported C... strkey format, instead. To migrate, you can do something like

let contractId = StrKey.encodeContract(Buffer.from(hexContractId, 'hex'));

Added

  • Updated stellar-base dependency to v10.0.0-soroban.5 which introduces many helpful Soroban abstractions (see full release notes for more details and TypeScript interfaces):
    • Use an existing, immutable Transaction as a template for a new one via TransactionBuilder.cloneFrom(tx, opts = {}) and use opts to override fields (#656).
    • Use the new SorobanDataBuilder class to easily prepare Soroban transaction footprints #660.
    • Use humanizeEvents to create human-readable versions of xdr.ContractEvents and xdr.DiagnosticEvents that come out of transaction meta (#659).
    • Use several helpers to reliably build Soroban authorization entries for complex, multi-party signing scenarios (#663). These are each at various levels of granularity/complexity:
      • authorizeInvocation
      • authorizeInvocationCallback
      • buildAuthEnvelope
      • buildAuthEntry

Fixed

  • assembleTransaction() (and Server.prepareTransaction() by proxy) will now override the authorization portion of simulation if you provide a transaction with existing authorization entries. This is because, in complex auth scenarios, you may have signed entries that would be overwritten by simulation, so this just uses your existing entries (#114).
  • Added a missing type field to the EventResponse interface (#118).

New Contributors

Full Changelog: v0.9.2...v0.10.0