## [0.38.0](https://github.com/propeller-heads/tycho-execution/compare/0.37.0...0.38.0) (2025-02-13) ### Features * Add a production foundry profile ([dae38ce](dae38ceaf9)) * Support uniswap v4 callback in TychoRouter ([591d73b](591d73ba71)) ### Bug Fixes * Verify that the executor exists in the uni v4 callback ([4c5e3bf](4c5e3bf6a9))
33 KiB
33 KiB
0.38.0 (2025-02-13)
Features
Bug Fixes
- Verify that the executor exists in the uni v4 callback (4c5e3bf)
0.37.0 (2025-02-12)
Features
- add callback (ed90cb4)
- add new pair test (7ca647f)
- add router params (e62c332)
- add test for UniswapV4Executor (4599f07)
- add univ4 executor (cb4c8f4)
- handle amounts in unlockCallback (b2097ca)
- move encoding to test (c264084)
- support multi swap decoding (d998c88)
- update solc and add V4Router into UniswapV4Executor (bdd3daf)
Bug Fixes
- _pay and msgSender (d790682)
- add equality check, amountInOrOut check, update _decodeData (b47cff3)
- git submodules and strict equality check in v4 executor (a8cc84d)
- handle native token balance changes (0c40e9e)
- reciever issue (ae0b07b)
- remove executeActions wrapper, strict equality checks and rename swap return (2371ab2)
- remove extra _receiver and redundant asserts (ff3209b)
- rm callback fn (1a36c33)
- rm redundant transfer (24d4e76)
0.36.2 (2025-02-12)
Bug Fixes
- Miscellaneous audit remarks (582533f)
0.36.1 (2025-02-11)
0.36.0 (2025-02-11)
Features
- Add selector to Transaction (dd7ecac)
0.35.1 (2025-02-11)
Bug Fixes
- (TychoRouter) Revert if empty swaps (37efe52)
0.35.0 (2025-02-07)
Features
- Add clone to EVMTychoEncoder (b333d60)
- Add uniswap v3 to swap encoders list (c791c93)
- Get current runtime if there is any (12f85cc)
- Increase tycho-core version (6bbb6da)
- Make executors_file_path optional and use a default value if None (4680a4b)
- Read default executors at compile time into a json (f5232f4)
- Remove router_address from TychoEncoder (a234ff7)
- The execution structs should receiver tycho_core Chain (cad9f39)
- Use block_in_place instead of block_on (d4af59d)
Bug Fixes
- After rebase fixes (bef4740)
- Change version of serde to match tycho-simulation (3116fef)
- Don't have a DEFAULT_CONFIG_PATH in bin (d7f20aa)
- Uniswap v3 pool fee is big endian, not little endian (0c9050c)
- univ3: The fee keyword is just "fee" and not "pool_fee" (164d062)
0.34.0 (2025-02-06)
Features
- add default private key (d3ad0ba)
- add encoder bin (4f7fe3b)
- add md (d3be9d1)
- add serde primitive, update command (b938560)
- default native action (80f1ca9)
- remove direct execution hardcode (ae6b1ed)
- remove manual parsing (fd4045e)
- simplify (8d97f73)
- update cli params and docs (32c3bd2)
- use clap for cli and resolve pr comments (a5166f2)
Bug Fixes
- chain.into() (520bee5)
- ci (a3cf443)
- ci (6cec83f)
- fmt (3bb5b0c)
- fmt (7df1995)
- remove redundant parse checks (c4f9fd0)
- rm v4-core (1dad36d)
0.33.0 (2025-02-06)
Features
- Get native/wrapped addresses from chain (8cd7d9f)
- Take Chain object containing native/wrapped addresses (e83b8d9)
Bug Fixes
- Do not let user specify the native/wrapped token (1a07c7d)
0.32.0 (2025-02-06)
Features
- Accept any struct that implements Into in Swap (cb14022)
0.31.0 (2025-02-05)
Features
- add tests for split swap validations (b69aef9)
- add tests for wrap unwrap case (4d97c3f)
- add validation for split swap (f80ffa9)
Bug Fixes
- checks in validations (95edd5b)
- get_mock_split_swap_strategy_encoder (7b72263)
- use native action to validate path (c787f5e)
0.30.1 (2025-02-04)
Bug Fixes
- deprecated signature (576f89d)
0.30.0 (2025-02-04)
Features
- Refactor Registries (23875b8)
0.29.1 (2025-02-04)
Bug Fixes
0.29.0 (2025-02-04)
Features
- add swap encoder test in balancer v2 executor (6333072)
Bug Fixes
- executor test naming (e6310d6)
0.28.0 (2025-02-04)
Features
- Tycho encoder validation (4bc6159)
Bug Fixes
- test_validate_fails_for_unwrap_wrong_last_swap (0660321)
0.27.0 (2025-02-04)
Features
Bug Fixes
- bring back one #[allow(dead_code)] (ae315b4)
- Calculate min_amount_out correctly and extend test to prove this (de1c782)
0.26.0 (2025-02-03)
Features
- Verify that no amount in is left in the router (0860d67)
0.25.3 (2025-01-31)
Bug Fixes
- transfer ETH if tokenOut is ETH (3245ea7)
0.25.2 (2025-01-31)
Bug Fixes
- Accidentally changed wrong test's calldata (faacd3f)
- Expect decimal during encoding, add assert to test (5a81ed6)
0.25.1 (2025-01-31)
Bug Fixes
- Fix selector - shouldn't contain spaces (5d6f0c1)
- Fix token index order in strategy encoding. (c85c353)
0.25.0 (2025-01-31)
Features
- Add ChainId model (089e7d2)
- Implement SplitSwapStrategyEncoder (feb91cc)
- Remove generalisation on user approvals manager (3a69bbf)
- Simplify router encoder (6e8d2ed)
Bug Fixes
- Don't leak evm specific code to interfaces(PrivateKeySigner, Chain) (7a8872c)
- Post merge's fixes (a28b548)
- replace all unwraps with proper error handling (5f3d440)
- Use abi_encode_packed in ple_encode() (82e671d)
- Use max instead of min to get the min_amount_out (575c5be)
0.24.0 (2025-01-30)
Features
- rename batchSetExecutor to setExecutors (c653062)
- replace setExecutor with batchSetExecutor (ea504fa)
Bug Fixes
- rm redundant test (24e95b1)
0.23.0 (2025-01-30)
Features
- add executor encoder test (ad70a0d)
- add swap test with hex for univ2 executor (0196767)
- add univ2 executor test with hex (c482e21)
- remove exact_out from USV2 (8cb95f0)
- resolve pr comments (1b8bf56)
- update ExecutorEncoder interface and relevant types (5c39651)
0.22.0 (2025-01-30)
Features
- fixed USV3 Verification (96af542)
- Implement generic callback (fafeba9)
- UniswapV3Executor and integration tests (ca32446)
- USV3 verification (7822c4f)
Bug Fixes
- Remove amountReceived and dataOffset from the callback verification (63b94b5)
- Remove amountReceived, dataOffset from ICallbackVerifier interface (33ada0c)
- Remove exactOut from USV3 encoding (d8b44f6)
0.21.0 (2025-01-28)
Features
- add balancer v2 executor (a700189)
- add node.js workflow (25756ff)
- add tests for Balancer V2 executor (a4e405f)
- approve max (cb6d165)
- update remappings and remove node modules (b65b682)
Bug Fixes
- balancer v2 encoder bug (a6a624b)
- build (5dc5e23)
- ci (b1ca478)
- clippy (877f625)
- exclude node modules from slither (4b3c5c5)
- filter paths slither (6c30cf8)
- rm exactOut (44db2e5)
- slither (b854282)
- slither (7a83edd)
0.20.0 (2025-01-28)
Features
- Add executor and selector to Swap (c2347ac)
- Add swap method (first attempt) (a8f6fc1)
- Add swap method with tests (50429ad)
- Assume that funds will never go straight from a pool to the receiver (655cf91)
- Smother slither and add a reentrancy guard in swap() (dfa7033)
- Wrap and unwrap ETH (3b2d9fc)
Bug Fixes
0.19.0 (2025-01-28)
Features
- UniswapV3SwapEncoder (9c63e09), closes /github.com/propeller-heads/tycho-protocol-sdk/blob/3c08359cf112e15c137dd5256b8dc8e9cd6c1626/substreams/ethereum-uniswap-v3/src/modules/1_map_pool_created.rs#L64
0.18.0 (2025-01-27)
Features
- Perform staticcall to CallbackVerifier (ad0748e)
0.17.0 (2025-01-27)
Features
- add pause/unpause methods (c982ed9)
Bug Fixes
0.16.0 (2025-01-27)
Features
- add balance v2 encoder test (9cecea8)
Bug Fixes
- async (7c198ff)
0.15.0 (2025-01-24)
Features
- UniswapV2 SwapExecutor (5627a19)
Bug Fixes
- Add input validation size in Uniswapv2SwapExecutor (ed44f4e)
- Remove exactOut logic from Uniswapv2SwapExecutor (b9f4451)
0.14.0 (2025-01-24)
Features
- delegatecall to executor in SwapExecutionDispatcher (e91ee96)
- Emit event when removing executor (1fabff1)
Bug Fixes
0.13.0 (2025-01-23)
Features
- Implement Permit2 (ce9ae49)
Bug Fixes
0.12.0 (2025-01-23)
Features
- add tests for withdraw, fee and make it DRY (056582c)
Bug Fixes
- pr comments (9c99b73)
0.11.0 (2025-01-23)
Features
0.10.0 (2025-01-23)
Features
- add fee methods (0dc7edc)
Bug Fixes
- use FEE_SETTER_ROLE for setFeeReceiver (15d3bec)
0.9.0 (2025-01-22)
Features
0.8.0 (2025-01-22)
Features
Bug Fixes
- ci (0c05874)
- disable slither for native withdraw (f3363a2)
- undo rm lib (a1e7b55)
- use send for native transfer (c6c0ddd)
0.7.0 (2025-01-22)
Features
- UniswapV2 Swap Encoder (7b4bf02)
0.6.0 (2025-01-21)
Features
- Add openzeppelin lib for access control (a8f62ee)
- Add permit2 lib for approval management (cb9053b)
- initial TychoRouter skeleton (ab28a47), closes lib/openzeppelin-contracts/contracts/access/AccessControl.sol#4 lib/openzeppelin-contracts/contracts/access/IAccessControl.sol#4 lib/openzeppelin-contracts/contracts/utils/Context.sol#4 lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol#4 lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol#4 lib/permit2/src/interfaces/IAllowanceTransfer.sol#2 lib/permit2/src/interfaces/IEIP712.sol#2
Bug Fixes
- Filter paths when running slither in CI (96809d4)
0.5.0 (2025-01-20)
Features
- Implement ProtocolApprovalsManager (cbf2b4d)
0.4.0 (2025-01-20)
Features
Bug Fixes
- Bump to latest Solidity version (0.8.28) (f987125), closes src/Counter.sol#2
- Specify foundry subdir when running slither in CI (40f0a2a)
0.3.0 (2025-01-17)
Features
- Add EncodingError (bab5caa)
Bug Fixes
- Add RecoverableError (af6d73a)
0.2.0 (2025-01-17)
Features
- Simplify StrategyEncoders and RouterEncoder (38b8bb0)
0.1.0 (2025-01-17)
Features
Bug Fixes
- Make executor_address a String instead of Address (1d3ac22)
0.0.1 (2025-01-17)
Bug Fixes
- change release version (d584e0a)