Releases: jup-ag/jupiter-swap-api
v6.0.15
Changelog
fix: Do not use deactivated or deactivating address lookup tables
feat: lower CU margin to 25%
chore: Monitor chunked stream slot monitoring by warning about delta
fix: update invariant SDK to attempt to eliminate crashes
feat: Single edge shortcut for fast quote on new tokens
chore: Bump sanctum lst list for new lsts
feat: Use Dashmap for amms usage to reduce lock contentions
chore: reduce max auto slippage bps to 400
feat: integrate dexlab
feat: Price tracker use top tokens as intermediate first for more stable pricing
Commit 8ac4ccf9d5ec64bd5486219c55dbc1ca647eb1f1
v6.0.14
Changelog
chore: Move Openbook V2 out of new dexes, Openbook V2 is enabled by default
chore: refactor prepare add market at runtime
fix: Phoenix monitor Market status
feat: Stakedex new swap via stake approach, reenable 100% of Sanctum router
Commit 7de76482860aad749b8ddaf9926e92bb524b25c6
v6.0.13
Changelog:
- chore: Stakedex PrefundSwapViaStake, disable PrefundSwapViaStake entirely due to impossible CPI, only Deposit SOL remains functional
- fix: FluxBeam missing clone failed quote intermittently, causing quote, swap and pricing failures
- fix: Serum dex set referrer
- feat: Compute auto slippage to share in quote response
- feat: Auto exclude dexes quote query param
- fix: Arrange locking and massive clones
- feat: auto slippage experimental feature
- feat: Disable Balansol due to swap program interface breaking change
Commit 87f4b01f02fea1898a3c280365f776562a0bd64a
v6.0.12
Raydium CLMM program breaking changes by supporting Token2022
Changelog
- fix: JupiterError (error 400) on missing AMM and /swap /swap-instructions support
- feat: Price tracker improve locking
- feat: Every jupiter-swap-api arg can be an env var (#643)
- feat: Raydium CLMM V2 add support for token2022 (market cache not including yet)
- fix: Same token mints is an error 400 and other spam user input based errors
- feat: Bellman ford supports exact out
- feat: Tracking account "trackingAccount" transaction config
- fix: ACCESS_CONTROL_MAX_AGE to max, to avoid unnecessary round trip on subsequent requests
Commit a84cc55adfdd6f52acf9ca413ae5b102c07ced4d (release fork from d10812fbc2ffe4749e4d6d83ba790bf1c4a10ce0)
v6.0.11
The /indexed-route-map endpoint no longer returns the indexed-route-map by default, its usage is deprecated and not recommended but can be enabled with --enable-deprecated-indexed-route-maps
Changelog
- feat: on startup dex and tokens filtering:
--dexes
and--exclude-dexes
flag to control dexes loaded, usage identical to the /quote params. All by default.
--filter-markets-with-mints
to filter markets which do not have at least 2 mints from this set.
New integrations are now behind--enable-new-dexes
until stabilized. - chore: Valentine cleanup, remove Jupiter limit order...
- fix: Prevent max accounts usage with ExactOut
- feat: add support for ExactOutRoute
- feat: raydium exact out
- feat: Token not tradable error, return error early and more meaningful than "No routes found"
- feat: enable deprecated indexed route maps cli arg and disable computing indexed-route-maps by default, use --enable-deprecated-indexed-route-maps
- fix: no routes found, typo
- chore: Stakedex-sdk update for lst list, for more flexible new LSTs inclusion
- feat: OpenBook V2 integration
- fix: SplTokenSwapAmm support only cp and stable curve types
- fix: anchor extension to deserialize zero copy accounts using slice of the account struct size, to match on-chain code and avoid client crashes
- feat: get tokens
/tokens
endpoint to fetch all tradable tokens - fix: Mercurial fix stable curve by using precision multiplier for fee amount
- fix: --allow-circular-arbitrage to enable input outputs mints for self hosted
- fix: Fetch unique ALT instead of one per AMM (mass duplicated work)
Commit 52c22bfa1e2ce509190f3dea6e6973f0f8c07816
v6.0.10
v6.0.9
Changelog:
feat: Add enable ping flag, to disable yellowstone grpc ping by default and allow enabling it
feat: Do not use shared accounts if non-openbook single swap, no additional account write contention, less CU consumption.
fix: fetch with sleep for stability, for caches such as address lookup tables
feat: Market endpoint HTTP GET /market?address=<pubkey>
chore: Meteora DLMM add max swapped amount update
chore: Sync stakedex SDK to disable esol and lido deposit
feat: implement Yellowstone grpc ping, see rpcpool/yellowstone-grpc#225
Commit b8347e26f878c14f8a0345211c9fb6d5550c5125
v6.0.8
Changelog:
- fix: Upgrade h2 due to sec advisory https://rustsec.org/advisories/RUSTSEC-2024-0003
- fix: raydium CLMM remove dangerous unwraps in swap math
- fix: update to support dynamic accounts and accounts len for GooseFX
- feat: Meteora DLMM slot activation support
- chore: update GooseFX
- fix: Optimize route map, only a few seconds
- fix: Remove pointless price impact warning when it cannot be computed
- fix: get_program_failure_consumed_units correct logic for multi instructions
- chore: BalanceSol updates their algorithm
- fix: Meteora DLMM find next bin array indices fix loop, a bug was limiting to 2 bin arrays instead of 3
- feat: reduce auto to 0.001 SOL and auto multiplier based on that and remove cap on auto multiplier
- fix: Fluxbeam token2022 fix handling for mint that get closed
- fix: onlyDirectRoutes bellman-ford constraints to be 1 maxhop, 1 totalhops
Commit c93e3d50a91b6ea0ee279896cde2a47d35b7de7b
v6.0.7
- fix: docker image
binary from 6.0.6
v6.0.6
Changelog:
- chore: update rust to 1.75
- feat: Swap build swap through keyedUiAccounts for BYO AMMs, to be used with
--enable-external-amm-loading
- fix: Add input_mint to allowed tokens for calc dist to target to fix
- feat: Raydium use status enforced to reduce accounts, resulting in lower RPC load and significant reduction in egress
- fix: Raydium CLMM continue when no liquidity for first tick array to prevent irrelevant warning and incorrect state
- feat: JupiterError for better api error control, return error code 400 when relevant
- fix: thread block on geyser loop
- fix: bellman-ford direct routes
- hotfix: ExactOut to not use bellman-ford automatically for low input value
- fix: dont fetch what is fetched to reduce initial start load
- fix: Raydium err when event queue is full to set reserves to None, to allow correct quote when the event queue is full
- fix: intermediate tokens auto restrict when top token for bellman-ford
- feat: Use bellman ford when input value is below a threshold, quote below $100 of input value use quoteType bellman-ford rather than rbp (metis algorithm) in order to provide simpler routes for low price impact trades
- feat: restrict intermediate tokens override works with rbp
Commit 4e4ea7a22642cf6903b7757fcbe524f30cb782b2