TAMARA LIPOWSKI
2d267792f3
docs: Fixed outdated comments
...
Some copypastas, some other improvements.
2025-02-20 10:46:27 -05:00
Tamara
8a8d15477c
Merge branch 'main' into router/tnl/ENG-4254-non-permit2-methods
2025-02-19 16:16:45 -05:00
TAMARA LIPOWSKI
c3482a509a
feat: TychoRouter swap method not requiring Permit2
...
- Assume the tokens have been transferred into our router beforehand.
2025-02-19 16:15:57 -05:00
semantic-release-bot
2d655b27fe
chore(release): 0.44.0 [skip ci]
...
## [0.44.0](https://github.com/propeller-heads/tycho-execution/compare/0.43.0...0.44.0 ) (2025-02-19)
### Features
* add integration test for complex swaps ([5e9b388 ](5e9b38876e ))
* add new attributes in encoding context, update usv4 swap encoder and tests ([1bfe656 ](1bfe656e6b ))
* add single swap integration test for usv4 executor ([529456f ](529456f40c ))
* add usv4 swap encoder with single swap test ([789416b ](789416b2cd ))
* add util fns, change callback_selector to string, update first_swap check ([9219dd3 ](9219dd329d ))
* early return in usv4 swap encoder for second swap, add utils ([f7ddace ](f7ddace559 ))
* update test_encode_uniswap_v4_grouped ([baeebb9 ](baeebb9fe4 ))
### Bug Fixes
* update EncodingContext in strategy_encoder ([7f3aca9 ](7f3aca90ba ))
2025-02-19 20:29:23 +00:00
Tamara
1c56431690
Merge pull request #69 from propeller-heads/router/hr/ENG-4239-usv4-swap-encoder
...
feat: usv4 swap encoder
2025-02-19 15:27:24 -05:00
Harsh Vardhan Roy
6c4bb376fd
Merge branch 'main' into router/hr/ENG-4239-usv4-swap-encoder
2025-02-20 00:07:43 +05:30
royvardhan
c472cda697
refactor: make group tokens and amount out min non optional
2025-02-20 00:05:47 +05:30
royvardhan
e2a2aaaad1
refactor: usv4 swap encoder test, encoder
2025-02-19 23:59:27 +05:30
royvardhan
1e9b411ca5
chore: rm redundant pool params encoder fn
2025-02-19 23:07:26 +05:30
semantic-release-bot
21fcb85b03
chore(release): 0.43.0 [skip ci]
...
## [0.43.0](https://github.com/propeller-heads/tycho-execution/compare/0.42.0...0.43.0 ) (2025-02-19)
### Features
* Add methods to builder to set chain and strategy independently ([684de4f ](684de4fa60 ))
* Create a EVMEncoderBuilder ([03506fa ](03506fabe9 ))
* Remove direct_execution from Solution ([8537d27 ](8537d27469 ))
### Bug Fixes
* After rebase fixes ([4f29022 ](4f29022c42 ))
* After rebase fixes ([30b5ab9 ](30b5ab9025 ))
2025-02-19 17:18:03 +00:00
dianacarvalho1
75ed80b582
Merge pull request #70 from propeller-heads/encoding/dc/ENG-4246-tycho-encoder-builder
...
feat: Tycho encoder builder
2025-02-19 17:16:14 +00:00
Diana Carvalho
4f29022c42
fix: After rebase fixes
...
--- don't change below this line ---
ENG-4246 Took 2 minutes
2025-02-19 17:05:46 +00:00
Diana Carvalho
359bb806f7
docs: Add docstrings to EVMEncoderBuilder
...
--- don't change below this line ---
ENG-4246 Took 41 minutes
2025-02-19 17:03:25 +00:00
Diana Carvalho
684de4fa60
feat: Add methods to builder to set chain and strategy independently
...
--- don't change below this line ---
ENG-4246 Took 15 minutes
2025-02-19 17:03:25 +00:00
Diana Carvalho
4741e628b8
chore: Simplify tycho-encode
...
Don't have a cli as a lib. Move that directly inside tycho-encode.rs for simplicity
--- don't change below this line ---
ENG-4246 Took 29 minutes
2025-02-19 17:03:25 +00:00
Diana Carvalho
d9d56e7a8c
chore: Rename signer_pk to swapper_pk
...
--- don't change below this line ---
ENG-4246 Took 15 minutes
2025-02-19 17:03:25 +00:00
Diana Carvalho
8794dc674a
chore: Delete unnecessary empty file
...
--- don't change below this line ---
ENG-4246 Took 3 minutes
2025-02-19 17:03:25 +00:00
Diana Carvalho
30b5ab9025
fix: After rebase fixes
...
Put the strategy_encoders.rs back inside the strategy_encoder directory
--- don't change below this line ---
ENG-4246 Took 3 minutes
Took 12 seconds
2025-02-19 17:03:22 +00:00
Diana Carvalho
8537d27469
feat: Remove direct_execution from Solution
...
This is handled when creating a new TychoEncoder
--- don't change below this line ---
ENG-4246 Took 4 minutes
2025-02-19 17:03:13 +00:00
Diana Carvalho
03506fabe9
feat: Create a EVMEncoderBuilder
...
- It has two three methods to be created:
- new: where the user can pass any custom StrategyEncoder
- tycho_router: where the default SplitSwapStrategyEncoder with Tycho Router will be used
- direct_execution: where the user can encode only the execution data and integrate this into their workflow.
- This replaces StrategyEncoderRegistry
- EVMTychoEncoder holds directly the StrategyEncoder and not the registry (per one init of the EVMTychoEncoder there is only one possible StrategyEncoder)
- Update quickstart
- Update bin (add subcommands to bin to create a different instance of EVMEncoderBuilder)
--- don't change below this line ---
ENG-4246 Took 33 minutes
Took 38 seconds
Took 38 seconds
2025-02-19 17:03:10 +00:00
royvardhan
7f3aca90ba
fix: update EncodingContext in strategy_encoder
2025-02-19 21:50:43 +05:30
Harsh Vardhan Roy
78bc045d14
Merge branch 'main' into router/hr/ENG-4239-usv4-swap-encoder
2025-02-19 21:45:30 +05:30
royvardhan
f7ddace559
feat: early return in usv4 swap encoder for second swap, add utils
2025-02-19 21:42:13 +05:30
semantic-release-bot
f76e320ff7
chore(release): 0.42.0 [skip ci]
...
## [0.42.0](https://github.com/propeller-heads/tycho-execution/compare/0.41.0...0.42.0 ) (2025-02-19)
### Features
* Support swap grouping for executor strategy ([ac83117 ](ac831176d4 ))
2025-02-19 15:31:58 +00:00
Tamara
f6c33da13c
Merge pull request #71 from propeller-heads/encoding/tnl/ENG-4248-direct-execution-usv4
...
feat: Support swap grouping optimizations for direct execution
2025-02-19 10:29:17 -05:00
TAMARA LIPOWSKI
5ab233ed0a
refactor: PR comments
...
- rename utils.rs to group_swaps.rs
- extend instead of push in order to avoid calling abi_encode_packed again
2025-02-19 10:25:16 -05:00
royvardhan
5e9b38876e
feat: add integration test for complex swaps
2025-02-19 20:32:55 +05:30
royvardhan
baeebb9fe4
feat: update test_encode_uniswap_v4_grouped
2025-02-19 19:08:06 +05:30
royvardhan
5b183b6690
chore: update executor_selector to swap_selector in swap encoder trait and attribute
2025-02-19 19:01:32 +05:30
royvardhan
9219dd329d
feat: add util fns, change callback_selector to string, update first_swap check
2025-02-19 18:56:32 +05:30
royvardhan
1bfe656e6b
feat: add new attributes in encoding context, update usv4 swap encoder and tests
2025-02-19 08:39:21 +05:30
TAMARA LIPOWSKI
ac831176d4
feat: Support swap grouping for executor strategy
...
- Also make sure the strategy errors if > 1 group.
2025-02-18 14:03:06 -05:00
TAMARA LIPOWSKI
962e460e34
refactor: Make group_swaps a util method
...
- In preparation for also using this for the executor encoder.
This also make test setup much easier for swap grouping - not having to init the encoder every time.
2025-02-18 12:12:08 -05:00
royvardhan
529456f40c
feat: add single swap integration test for usv4 executor
2025-02-18 21:24:49 +05:30
royvardhan
789416b2cd
feat: add usv4 swap encoder with single swap test
2025-02-18 20:58:00 +05:30
semantic-release-bot
4f37cd392b
chore(release): 0.41.0 [skip ci]
...
## [0.41.0](https://github.com/propeller-heads/tycho-execution/compare/0.40.0...0.41.0 ) (2025-02-18)
### Features
* add back uniswapV3SwapCallback in router ([260f9d8 ](260f9d866f ))
* add uniswapV3SwapCallback in USV3 executor ([9d3b96f ](9d3b96f997 ))
* Change signature of _handleCallback to take only bytes calldata ([2aa63d7 ](2aa63d7ec0 ))
* fix input decoding in usv3 executor and execution dispatcher ([80500e6 ](80500e615e ))
* move callback testing to usv3 executor ([5853de6 ](5853de679a ))
* rename execution dispatcher to dispatcher and use dispatcher for USV4 callback ([ad91e48 ](ad91e485d3 ))
* update _handleCallback, add verifyCallback with docs ([076586d ](076586d776 ))
* update handleCallback in USV3 to do verification ([cccb252 ](cccb252bf2 ))
* update new interface in codebase ([bd19713 ](bd1971334e ))
2025-02-18 15:11:09 +00:00
Harsh Vardhan Roy
83a966ba7c
Merge pull request #66 from propeller-heads/router/hr/ENG-4237-refactor-usv3-callback
...
feat: refactor usv3 callback
2025-02-18 20:39:02 +05:30
dianacarvalho1
adcb1c69ae
Merge branch 'main' into router/hr/ENG-4237-refactor-usv3-callback
2025-02-18 15:01:44 +00:00
dianacarvalho1
a7c30a9edb
Merge pull request #68 from propeller-heads/router/dc/refactor-univ3-callback
...
feat: Change signature of _handleCallback to take only bytes calldata
2025-02-18 15:01:28 +00:00
Diana Carvalho
c940d8b536
docs(univ3): Add comment explaining msg.data
...
Took 55 minutes
2025-02-18 14:59:26 +00:00
semantic-release-bot
fde870f57a
chore(release): 0.40.0 [skip ci]
...
## [0.40.0](https://github.com/propeller-heads/tycho-execution/compare/0.39.0...0.40.0 ) (2025-02-18)
### Features
* (WIP) UniswapV4 encoding ([f32210b ](f32210bb1f ))
* Generalize group_swaps method ([47b6180 ](47b61802ee ))
* Merge USV4 strategy back into split strategy ([44aabf1 ](44aabf1761 ))
### Bug Fixes
* Do not count intermediary tokens in indices ([e94154b ](e94154bc2d ))
* Do not group split swaps ([957bf89 ](957bf898f2 ))
2025-02-18 14:21:36 +00:00
Tamara
f6fa38b6f7
Merge pull request #65 from propeller-heads/encoding/tnl/ENG-4071-usv4
...
feat: UniswapV4 encoding
2025-02-18 09:18:50 -05:00
Diana Carvalho
2aa63d7ec0
feat: Change signature of _handleCallback to take only bytes calldata
...
The selector and executor are decoded inside this function now.
For Uniswap V3 I had to manually slice the msg.data from uniswapV3SwapCallback to get the data that matters for the callback
Took 3 hours 12 minutes
2025-02-18 11:11:43 +00:00
Tamara
f029cd5baf
Merge branch 'main' into encoding/tnl/ENG-4071-usv4
2025-02-17 23:57:21 -05:00
TAMARA LIPOWSKI
8f1e372c90
refactor: PR comments (moving things around/docs)...
...
- Move the validator into its own file, for organization purposes.
- Add missing elements to `SplitSwapStrategyEncoder` docstring
2025-02-17 23:57:01 -05:00
TAMARA LIPOWSKI
44aabf1761
feat: Merge USV4 strategy back into split strategy
...
- Since the group_swaps method is now generalized, there is no need to have an entirely separate method here.
2025-02-17 23:44:58 -05:00
TAMARA LIPOWSKI
47b61802ee
feat: Generalize group_swaps method
...
- This can now be used for any groupable protocols - not just USV4.
2025-02-17 17:23:29 -05:00
TAMARA LIPOWSKI
957bf898f2
fix: Do not group split swaps
...
As far as we know, Uniswap V4 has no support for optimizing split swaps - only sequential swaps. We must make sure we don't accidentally group split swaps too - as this will likely revert due to mismatched input and output values.
2025-02-17 16:50:59 -05:00
royvardhan
2604935609
chore: update unlockCallback and uniswapV3SwapCallback
2025-02-17 22:51:40 +05:30
Harsh Vardhan Roy
0d5c55c546
Merge branch 'main' into router/hr/ENG-4237-refactor-usv3-callback
2025-02-17 21:56:49 +05:30