6b3a26f3920edfccba6c665702d73bb163a9f005
## [0.82.0](https://github.com/propeller-heads/tycho-execution/compare/0.81.0...0.82.0) (2025-04-23) ### Features * (WIP) Support selection of transfer into router ([a301a1c](a301a1cef3)) * Add sequential swap methods ([3ae9d3a](3ae9d3ad67)) * Add SequentialSwap integration test with regular approvals ([6e7bf3c](6e7bf3c019)) * Add SingleSwap integration test and fix bug in method signatures ([df1c05e](df1c05ea00)) * Add TokenTransfer class to BalancerV2 ([3a73fef](3a73fef933)) * Add TokenTransfer class to Curve ([462be54](462be5463b)) * Add transfer out for Curve ([328a281](328a281a44)) * Add transfer out for Uniswap V4 ([ec87969](ec87969aa6)) * Allow for token_in_already_in_router ([df92be8](df92be8875)) * allow to pass msg.sender to USV3 callback ([a37805d](a37805d046)) * allow to pass msg.sender to USV3 callback ([8969186](8969186654)) * Decode single and sequential swaps in LibSwap ([1dad4af](1dad4afb6b)) * Delete EVMStrategyEncoder (this is now unnecessary) ([6430c99](6430c99d76)) * Do not use V4Router for uniswap v4 ([cd608cb](cd608cb8e9)) * ExecutorTransferMethods helper contract ([147ba68](147ba68392)) * ExecutorTransferMethods in UniswapV3Executor ([3189139](31891397c7)) * ExecutorTransferMethods in UniswapV3Executor ([3890099](389009901e)) * Fix rollFork usage for Ekubo test ([d7b5e6d](d7b5e6dba5)) * Make USV3 callback work with direct executor call ([5562dd2](5562dd210e)) * No more fee taking ([6f2e5ac](6f2e5ac10e)) * Optimize transfer to first pool ([59a80dc](59a80dc392)) * Proper USV2Executor transfer decoding + tests ([e8f56ff](e8f56ff088)) * Proper USV2Executor transfer decoding + tests ([ca1d474](ca1d474f08)) * Proper USV3Executor transfer decoding + tests ([e3ac394](e3ac394d27)) * Refactor callback for pancakeV3 and Ekubo to use transient storage ([deb10b8](deb10b82de)) * Refactor callback to use transient storage ([af44956](af449562b0)) * Refactor TychoEncoder ([8b4b79b](8b4b79b353)) * Rename split swap interfaces ([7fc008a](7fc008a718)) * sequential swap solution validation ([0d8150e](0d8150e22f)) * Single swap methods. ([6434566](64345663d0)) * SingleSwapStrategyEncoder ([11a05e4](11a05e4f18)) * SingleSwapStrategyEncoder ([5d586c2](5d586c25e3)) * SingleSwapStrategyEncoder ([a5f07a2](a5f07a25ef)) * Support in between swaps optimizations ([efe12cf](efe12cfcd6)) * Support out transfer straight to the receiver ([9bcb58e](9bcb58e5aa)) * Support returning values from the callback ([fb35a53](fb35a5305a)) * Support using the TransferType in uniswap v4 ([4a61de5](4a61de56b7)) * **tycho-router-encoder:** Select strategy depending on the solution ([f5e712e](f5e712e0ff)) * Update tycho-encode bin with new arguments ([aba280a](aba280acd0)) * Use TokenTransfer optimization helper in Ekubo ([d9066d0](d9066d0a09)) ### Bug Fixes * Add slither ignore for loop call ([860bba4](860bba4b7a)) * After merge format fixes ([2b48293](2b48293b3d)) * After merge test fixes ([02cbb67](02cbb67b38)) * After rebase fixes ([8145f41](8145f416b7)) * bad merge ([7e98145](7e98145ad7)) * Bring back receiver address zero check ([d447551](d447551e20)) * Calldata size for Ekubo pay callback ([be65c89](be65c890bb)) * Changes after rebase ([d5d6e37](d5d6e37041)) * Configurable fee on USV2 executor. ([4f9785f](4f9785fdac)) * Conscious slither silencing ([4a20fa6](4a20fa6215)) * consider wrapping scenario when getting transfer type ([dbc9042](dbc9042a2f)) * Fix after merge with main ([fff8ef0](fff8ef0d87)) * Fix executor address in test and remove duplicated test ([2f81b16](2f81b167d4)) * Fix integration tests with transfer in method support ([d3ff9fd](d3ff9fd0e2)) * fix slither CI action ([8f23463](8f2346330a)) * Fixes after merge with feature branch ([26ec308](26ec30852d)) * Integration tests after merge ([3f6bc56](3f6bc5643e)) * No more EVMStrategyEncoder ([56d3eee](56d3eee618)) * Post rebase fixes ([d024fe2](d024fe240b)) * Prevent multiple callbacks ([f91b101](f91b101a94)) * properly add ekubo_v2 to constants ([11886b3](11886b3ac1)) * Remove router_address from Solution object ([fcedd39](fcedd39f30)) * Rename constants and update docstrings for clarity ([244b7d3](244b7d3482)) * test fix after rebase ([61c0163](61c0163bee)) * Test+formatting fixes after rebase. ([e96ea1b](e96ea1b10b)) * Tighten max feeBps in USV2 executor ([af68016](af68016223)) * TransferType renaming after rebase ([cf0300d](cf0300dd72)) * unsupported protocols for chained swaps are always unsupported ([8aa5b08](8aa5b08b41)) * USV3 encoding/decoding after rebase ([f3c4128](f3c4128eda)) ### Reverts * Revert "chore(release): 1.0.0 [skip ci]" ([07be6b9](07be6b932c)) * Revert "chore(release): 1.0.1 [skip ci]" ([a5e0d16](a5e0d16c8c)) * Revert "chore(release): 1.0.2 [skip ci]" ([2bfd780](2bfd7806f8)) * Revert "chore(release): 1.1.0 [skip ci]" ([e15ed9b](e15ed9b16e))
Tycho Execution
Tycho Execution makes it easy to trade on different DEXs by handling the complex encoding for you. Instead of creating custom code for each DEX, you get a simple, ready-to-use tool that generates the necessary data to execute trades. It's designed to be safe, straightforward, and quick to set up, so anyone can start trading without extra effort.
For complete documentation, see Tycho docs here.
Examples
To get started on encoding, have a look at our Encoding example. For a complete example please refer to the Tycho Quickstart guide.
Description
Languages
Rust
90.1%
JavaScript
5.9%
Python
3.6%
Solidity
0.4%
