Skip to content

Latest commit

 

History

History
278 lines (182 loc) · 9.05 KB

CHANGELOG.md

File metadata and controls

278 lines (182 loc) · 9.05 KB

Coinbase Node.js SDK Changelog

[0.13.0] - 2024-12-19

Added

  • Add support for registering, updating, and listing smart contracts that are deployed external to CDP.
  • Add support for fetching address reputation
    • Add reputation method to Address to fetch the reputation of the address
  • Add networkId to WalletData so that it is saved with the seed data and surfaced via the export function
  • Add ability to import external wallets into CDP via a BIP-39 mnemonic phrase, as a 1-of-1 wallet
  • Add ability to import WalletData files exported by the Python CDP SDK
  • Add getters for Validator object to expose more data to users.
  • Add test file for Validator object.

Deprecated

  • Deprecate Wallet.loadSeed() method in favor of Wallet.loadSeedFromFile()
  • Deprecate Wallet.saveSeed() method in favor of Wallet.saveSeedToFile()

[0.12.0] - Skipped

[0.11.3] - 2024-12-10

Added

  • Wallet address contract invocation input validation for payable contracts.

[0.11.2] - 2024-12-04

Added

  • Add listFundOperations method to Wallet and WalletAddress to list the fund operations associated with the wallet or address.
  • Updated fund and quoteFund methods to take CreateFundOptions object instead of individual parameters.

[0.11.1] - 2024-11-29

Fixed

  • Support setting source and sourceVersion correlation data via Coinbase.configure()

[0.11.0] - 2024-11-27

Added

  • Add support for funding wallets (Alpha feature release)
    • Must reach out to CDP SDK Discord channel to be considered for this feature.
  • Add rlp_encoded_tx field to EthereumTransaction interface
  • Added create and update feature for SmartContractEventActivity webhook and its related event type filter.

Fixed

  • Fixed a bug where the asset ID was not being set correctly for Gwei and Wei

[0.10.0] - 2024-10-31

Added

  • Add support for async faucet transactions i.e. using faucetTx.wait() to wait for the transaction to be confirmed.

[0.9.1] - 2024-10-18

Fixed

  • Fixed a bug where readContract was not working for nested types

[0.9.0] - 2024-10-17

Added

  • Support for readContract to read from smart contracts

[0.8.1] - 2024-10-09

Fixed

  • Fixed a bug that overwrites existing webhook notification URI when only updating a webhook's addresses

[0.8.0] - 2024-10-04

Added

  • Explicit paginated list methods for listing Wallet, Transfer, Transaction, Webhook, PayloadSignature, and HistoricalBalance.

Breaking

  • Webhook#update now takes an Object of {notificationUri, eventTypeFilter} instead of notificationUri string
  • list methods for listing Wallet, Transfer, Transaction, Webhook, PayloadSignature, and HistoricalBalance now take PaginationOptions and return PaginationResponse<T>

[0.7.0] - 2024-09-26

Added

  • Add deployNFT method to WalletAddress and Wallet to deploy an ERC721, updated SmartContract class to support deployment and fetching contract details
  • Add deployMultiToken method to WalletAddress and Wallet to deploy an ERC1155, updated SmartContract class to support deployment and fetching contract details
  • Add createWebhook method to Wallet to deploy a wallet activity webhook, updated Webhook class to disallow users from specifying webhook signature. Webhook signature is now generated by the API.

[0.6.1] - 2024-09-23

Added

  • Export all missing types in src/index

[0.6.0] - 2024-09-18

Added

  • Add deployToken method to WalletAddress and Wallet to deploy an ERC20, updated SmartContract class to support deployment and fetching contract details
  • Add SOL asset support
  • Fix a bug where large numbers were being returned in scientific notation

Breaking

  • Asset#toAtomicAmount now returns a BigInt instead of a Decimal

[0.5.1] - 2024-09-12

Fixed

  • Fixed a bug that blocked arbitrum mainnet wallets from being created

[0.5.0] - 2024-09-11

  • Add Arbitrum-Mainnet support for Native transfers.
  • Add Coinbase.configure method to allow for configuration of the SDK and marked constructor as deprecated.
  • Return correlation ID from APIError response
  • Add optional fields to CreateContractInvocationOptions to set amount for payable contract method invocations
  • Add a StakingRewardFormat enum to allow for specifying the format in which staking rewards should be returned.

[0.4.0] - 2024-09-06

Changed

  • getDefaultAddress wallet method updated to return a promise, and getAddress wallet methods now return a promise and WalletAddress instead of Address. Both functions will now fetch addresses for the wallet if they haven't been loaded.

[0.3.0] - 2024-09-05

Added

  • Add support for list address transactions.
  • Add support for exporting the private key of a WalletAddress
  • Add support for creating arbitrary payload signatures.
  • Add support for invoking Smart Contracts using MPC and Developer-managed Wallets.

[0.2.0]

Added

  • USDC Faucet support on Base Sepolia
  • Improved error messages for InternalError

[0.1.1] - 2024-08-27

  • Fixed a bug where listHistoricalBalances method was parsing conventional ETH balances instead of atomic units

[0.1.0] - 2024-08-22

Added

  • Add listHistoricalBalances wallet method, that lists the historical balances for the wallet's default address.
  • Add toAddressId() method to Transaction class

Removed

  • Remove user concept from the SDK
  • Remove "pending" status from StakingOperationStatusEnum
  • Add staking operation class helper methods like isTerminalState, isFailedState and isCompleteState.
  • Add validator status enum

Changed

  • The createTransfer and createTrade functions no longer wait for the transactions to confirm or fail on-chain.
    • Now they return a Transfer and Trade object respectively, which support the wait function, e.g. await transfer.wait().
    • This ensures that the developer has a reference to the object in case there is a timeout while waiting to land on-chain.
  • Update reload() method to work with both External and Wallet address.
  • Update createStakingOperation logic to make sure we only pull in newer unsigned txs from the server. This is especially important for External Address use-case where tx signing and broadcast status is maintained on client side, and we risk overwriting the existing txs.
  • Increase default timeout for createStakingOperation to 10 min.

[0.0.16] - 2024-08-14

Added

  • Add Function listHistoricalBalances for Address for fetching historical balances for an asset
  • Support for retrieving historical staking balances information
  • USD value conversion details to the StakingReward object
  • Gasless USDC Sends
  • Support for Ethereum-Mainnet and Polygon-Mainnet

[0.0.15] - 2024-08-12

Changed

  • Fixed Wallet address hydration for Wallet.import

[0.0.14] - 2024-08-05

Added

  • Support for Shared ETH Staking for Wallet Addresses

Changed

  • unsigned_payload, signed_payload, status, and transaction_hash in-line fields on Transfer are deprecated in favor of those on Transaction

[0.0.13] - 2024-07-30

Added

  • Support for trade with MPC Server-Signer
  • CreateTradeOptions type

[0.0.12] - 2024-07-24

Changed

  • Expose Validator class

[0.0.11] - 2024-07-24

Changed

  • Fixed signer wallets signing flow

[0.0.10] - 2024-07-23

Added

  • Add support for Dedicated ETH Staking for external addresses
  • Add support for listing validator details and fetch details of a specific validator

Changed

  • Improved accessibility for StakingReward and StakingOperation classes
  • Fixed a bug with StakingOperation.sign method, where we were not properly waiting on a Promise
  • Changed buildStakeOperation, buildUnstakeOperation, and buildClaimRewardsOperation to take mode as an explicit parameter optional parameter

[0.0.9] - 2024-06-26

Added

  • CreateTransferOptions type
  • Support external addresses for balance fetching and requesting faucet funds.
  • Support for building staking operations
  • Support for retrieving staking rewards information
  • Add support for listing address trades via address.listTrades

[0.0.8] - 2024-06-18

Added

  • Support assets dynamically from the backend without SDK changes.

[0.0.7] - 2024-06-11

Added

  • Added Base Mainnet network support
  • ServerSigner object
  • Ability to get default Server-Signer

Changed

Updated the usage of Coinbase.networkList to Coinbase.networks

[0.0.6] - 2024-06-03

Added

  • Ability to create wallets backed by server signers and transfer with them
  • Changed save_wallet to save_seed
  • Changed load_wallets to load_seed and moved at wallet level

Changed

  • Changed save_wallet to save_seed
  • Changed load_wallets to load_seed and moved at wallet level

[0.0.4] - 2024-05-28

Added

Initial release of the Coinbase NodeJS.

  • Supported networks: Base Sepolia
  • Wallet create and import
  • Address management
  • Send and receive ETH, ETC-20s
  • Ability to hydrate wallets
  • API Key-based authentication
  • API HTTP debugging
  • User object and getDefaultUser
  • Individual private key export
  • Error specifications