Skip to content

Releases: Blockstream/gdk

Release 0.0.57

23 Nov 16:13
release_0.0.57
b0781c0
Compare
Choose a tag to compare

Added

  • GA_get_subaccount: add user_path, core_descriptor, slip132_extended_pubkey.
  • GA_get_assets: add ability to fetch informations about Liquid assets by
    specifying one or more of the following fields: names, tickers, category.

Changed

  • Singlesig: GA_convert_amount: If a fallback fiat rate is provided the
    function will return that rate immediately instead of waiting for the latest
    rate to be fetched.
  • GA_refresh_assets: remove "refresh" parameter. Now every call to
    GA_refresh_assets will perform a network call to update the Liquid assets. To
    avoid the network call use GA_get_assets. In addition GA_refresh_assets now
    does not return any value, to get assets data use GA_get_assets.
  • GA_get_assets: it is now possible to fetch informations via the assets_id
    even before logging into a session.
  • Removed support for LiquiDEX v0 for GA_create_swap_transaction,
    GA_complete_swap_transaction and GA_validate, which now support LiquiDEX v1
    only. LiquiDEX v0 transactions can still be created and completed with
    GA_create_transaction.

Release 0.0.56

04 Oct 14:56
release_0.0.56
8f06e81
Compare
Choose a tag to compare

Added

  • Added new function GA_decrypt_with_pin.
  • Added new function GA_validate to validate gdk JSON formats.
  • Added new functions GA_create_swap_transaction and GA_complete_swap_transaction with support for LiquiDEX v0 swaps.

Changed

  • GA_get_transactions: The input/output "addressee" element is now only populated for now-disabled historical social payments.
  • GA_get_transactions: The top-level "satoshi" elements are now signed; negative values represent outgoing amounts.
  • GA_convert_amount: This can now be used to convert negative values.
  • GA_get_wallet_identifier (and register/login): Now returns a network-agnostic version of "wallet_hash_id" as "xpub_hash_id".
  • GA_create_transaction (and sign/send): The top-level "subaccount" type is no longer required or populated, and "subaccount_type" is also no longer populated. The subaccount(s) the tx refers to are now inferred automatically from its input UTXOs and output addressees.
  • Singlesig: Transaction hex returned from GA_get_transaction_details will now return witness data. This change triggers a one-time cache rebuild on upgrading, which may be noticeable from apps as a brief time with no transactions visible while the cache is rebuilt.
  • Singlesig: Exchange rates for the BTC-USD currency pair are now fetched from a Blockstream service.

Fixed

  • Network: Connection errors in the middle of a request now time out instead of waiting for the connection come back.
  • Liquid: Prevent a corrupted Liquid asset registry from re-downloading every time GA_refresh_assets is called.
  • Liquid: Fix an issue where GA_get_assets would not return any assets if a wallet's cache file got corrupted.
  • Liquid: GA_get_transactions: Correctly handle "mixed" transactions such as swaps.
  • Singlesig: Fixed a notification race condition where transaction block heights could be off-by-one shortly after a block notification.
  • Java: Fix the SWIG wrapping of GA_validate_mnemonic.

Removed

  • JSON: remove "server_signed" from create/sign/send transaction JSON.
  • JSON: remove "user_signed" from create/sign/send transaction JSON.
  • GA_get_transactions: Remove the top-level "addressees" element. Callers should use the "address" elements of inputs and outputs instead.

Release 0.0.55

11 Jul 07:42
release_0.0.55
78e3482
Compare
Choose a tag to compare

Added

  • Singlesig: Implement GA_get_previous_addresses
  • Singlesig: Allow fetching internal addresses in GA_get_receive_address using "is_internal"=true
  • Added new function GA_get_credentials, to replace GA_get_mnemonic_passphrase.
  • Added new function GA_encrypt_with_pin, to replace GA_set_pin.
  • Added new function GA_get_assets to query data related to a set of Liquid
    assets.
  • Added bip39 passphrase support.

Changed

  • GA_get_previous_addresses: To get the newest generated addresses, caller should not include "last_pointer" key (instead of passing "last_pointer" 0). If the returned json does not have the "last_pointer" key, it indicates that all addresses have been fetched (previously it had "last_pointer" 1)
  • GA_get_previous_addresses: Removed "subaccount" from returned keys.
  • Singlesig: Add some missing fields to GA_get_receive_address returned json.
  • Singlesig: Remove is_segwit from GA_get_unspent_outputs returned json
  • GA_register_user: Change interface to match GA_login_user.
  • Update endpoints for new bitcoin multisig backend.

Fixed

  • GA_get_unspent_outputs: fix bug returning utxos from replaced transactions.

Removed

  • Removed GA_get_mnemonic_passphrase, callers should use GA_get_credentials.
  • Removed GA_set_pin, callers should use GA_encrypt_with_pin.
  • Removed LTO and bitcode building flags.

Release 0.0.54.post1

17 Jun 10:20
release_0.0.54.post1
3c00aa4
Compare
Choose a tag to compare
Release 0.0.54.post1 Pre-release
Pre-release

Fixed

  • Singlesig: GA_get_unspent_outputs: fix bug returning utxos from replaced transactions.

Release 0.0.54

17 May 10:45
release_0.0.54
83f2d53
Compare
Choose a tag to compare

Release 0.0.54

Added

  • Watch only: Support Liquid multisig watch-only logins
  • Watch only: Allow deleting watch only accounts
  • Watch only: Enable local caching for significantly faster performance
  • Watch only: Support trust-on-first-use validation for xpubs and address generation
  • Watch only: Initial support for transaction proposals (watch only tx creation)

Changed

  • Watch only: Re-enable viewing user metadata (account names, tx notes, hidden accounts) via client blob
  • Watch only: Require usernames and passwords to each be at least 8 characters long
  • Multisig: Remap non auth_handler call errors to support i18n

Fixed

  • Liquid: Fix unblinding when initially populating the local cache

Release 0.0.53

10 May 14:54
release_0.0.53
4091868
Compare
Choose a tag to compare

Added

  • Add build support for Apple M1

Changed

  • Changed transcation type from "unblindable" to "not unblindable" to reflect its actual meaning.
  • Move to Android ndk r23b LTS release
  • Update openssl to 1.1.1n
  • Update libwally to latest
  • Rust is now mandatory for building
  • Registry: Switched to unified implemenetation with full assets data. Only Liquid-BTC icon is hardcoded, only assets metadata having icons are hardcoded (38 assets).

Fixed

  • Singlesig: In GA_get_transactions "inputs" and "outputs" elements, set "address" and "address_type" correctly; do not set Liquid fields if not Liquid or not unblindable.
  • Singlesig: align transaction and block notifications with multisig.
  • Singlesig: temporary lock spent utxos in the interval between send/broadcast and the next sync.
  • Singlesig: fix an error causing "restore" to fail.

Release 0.0.52

22 Apr 19:22
release_0.0.52
Compare
Choose a tag to compare

Added

  • Support for sending to Liquid taproot addresses
  • Documentation for GA_get_unspent_outputs result, including differences between singlesig and multisig.

Changed

  • Multisig: In GA_create_transaction "transaction_outputs" rename "public_key" to "blinding_key" when appropriate.
  • Singlesig: In GA_create_transaction "transaction_outputs" make "is_change" equal to "is_internal", not "is_relevant"

Fixed

  • Singlesig: set GA_get_unspent_outputs result correctly and consistently with multisig.

Release 0.0.51

30 Mar 21:35
release_0.0.51
Compare
Choose a tag to compare
  • SPV: Enable SPV for multisig BTC wallets
  • Singlesig: support for hw signers (Bitcoin only)
  • Singlesig: support for GA_http_request
  • Singlesig: implement GA_remove_account, see docs for details.

Release 0.0.50

08 Mar 20:00
release_0.0.50
Compare
Choose a tag to compare
  • Documentation: Improve documentation for connection and network related functions, add documentation of each gdk notification type.
  • Networking: Remove GA_disconnect.
  • Networking: Multiple small ABI changes, please see the API documentation for details.
  • Multisig/networking: Fix a number of bugs that could cause crashes and connection problems including failure to connect/reconnect.
  • Singlesig/networking: Update to match the multisig interface, including notifications
  • Misc: Various build and bug fixes

Release 0.0.49

20 Jan 08:09
release_0.0.49
Compare
Choose a tag to compare
  • Singlesig: Improved account discovery
  • Multisig: Don't send connection notifications for user-initiated session disconnect/destroy
  • Multisig: Remove old support for passing addressee asset_id as asset_tag
  • Multisig: Standardise address subtype as always 0 instead of null
  • Multisig: Remove range and surjection proofs from returned UTXO data
  • Multisig: Fix spending from very old version 0 addresses
  • Liquid: Return blinded addresses in tx list results
  • Liquid/AMP: Allow alternate blinding keys for AMP assets where required
  • HWW interface: Change get_blinding_nonces to also return blinding keys
  • Networking: fix some networking related crashes on android and iOS