v9.0.0-beta.0
Pre-releaseThis beta release adds support for Automated Market Makers. For details, you can refer to CAP-38 for XDR changes and this document for detailed changes to the Horizon API. Install it via yarn upgrade stellar-sdk@beta
.
Add
-
Introduced a
LiquidityPoolCallBuilder
to make calls to a new endpoint: -
Expanded the
TransactionCallBuilder
,OperationCallBuilder
, andEffectsCallBuilder
s to apply to specific liquidity pools (#689). This corresponds to the following new endpoints:/liquidity_pools/:id/transactions
/liquidity_pools/:id/operations
/liquidity_pools/:id/effects
-
Expanded the
TradesCallBuilder
to support fetching liquidity pool trades and accepts a newtrade_type
filter (#685):/trades?trade_type={orderbook,liquidity_pools}
- A liquidity pool trade contains the following fields:
liquidity_pool_fee_bp
: LP fee expressed in basis points, and eitherbase_liquidity_pool_id
orcounter_liquidity_pool_id
-
Added new effects related to liquidity pools (#690):
DepositLiquidityEffect
WithdrawLiquidityEffect
LiquidityPoolTradeEffect
LiquidityPoolCreatedEffect
LiquidityPoolRemovedEffect
LiquidityPoolRevokedEffect
-
Added new responses related to liquidity pool operations (#692):
DepositLiquidityOperationResponse
WithdrawLiquidityOperationResponse
Updates
-
Updated the underlying
stellar-base
library to v6.0.1 to include CAP-38 changes (#681). -
Updated various developer dependencies to secure versions (#671).
-
Updated
AccountResponse
to include liquidity pool shares in itsbalances
field (#688). -
Updated
AccountCallBuilder
to allow filtering based on participation in a certain liquidity pool (#688), corresponding to the following new filter:/accounts?reserves=[...list of assets...]
-
Updated
RevokeSponsorshipOperationResponse
to contain an optional attributetrustline_liquidity_pool_id
, for when a liquidity pool trustline is revoked (#690).
Breaking changes
-
A
TradeRecord
can now correspond to two different types of trades and has changed (#685):Orderbook
(the existing structure)counter_offer_id
andbase_offer_id
only show up in these records- the redundant
offer_id
field was removed; it matchesbase_offer_id
LiquidityPool
(new)base_account
xorcounter_account
will appear in these records
price
fields changed fromnumber
s tostring
s- The links to
base
andcounter
can now point to either an account or a liquidity pool
-
An account's
balances
array can now include a new type (#688):asset_type
can now beliquidity_pool_shares
- The following fields are not included in pool share balances:
buying_liabilities
selling_liabilities
asset_code
asset_issue
-
The
ChangeTrustOperationResponse
has changed (#688, #692):asset_type
can now beliquidity_pool_shares
asset_code
,asset_issuer
, andtrustee
are now optionalliquidity_pool_id
is a new optional field
-
The trustline effects (
TrustlineCreated
,TrustlineUpdated
,TrustlineRevoked
) have changed (#690):- the asset type can now be
liquidity_pool_shares
- they can optionally include a
liquidity_pool_id
- the asset type can now be
-
Trustline sponsorship effects (
TrustlineSponsorshipCreated
,TrustlineSponsorshipUpdated
,TrustlineSponsorshipRemoved
) have been updated (#690):- the
asset
field is now optional, and is replaced by - the
liquidity_pool_id
field for liquidity pools
- the