Diana Carvalho
ed44f4e993
fix: Add input validation size in Uniswapv2SwapExecutor
...
--- don't change below this line ---
ENG-4033 Took 12 minutes
2025-01-24 17:03:00 +00:00
Diana Carvalho
b9f4451769
fix: Remove exactOut logic from Uniswapv2SwapExecutor
...
We don't support it now
--- don't change below this line ---
ENG-4033 Took 9 minutes
2025-01-24 17:03:00 +00:00
Diana Carvalho
5627a1902b
feat: UniswapV2 SwapExecutor
...
--- don't change below this line ---
ENG-4033 Took 52 minutes
Took 3 minutes
Took 5 minutes
Took 36 seconds
Took 2 minutes
Took 30 seconds
2025-01-24 17:03:00 +00:00
semantic-release-bot
ceedaa6348
chore(release): 0.14.0 [skip ci]
...
## [0.14.0](https://github.com/propeller-heads/tycho-execution/compare/0.13.0...0.14.0 ) (2025-01-24)
### Features
* delegatecall to executor in SwapExecutionDispatcher ([e91ee96 ](e91ee96129 ))
* Emit event when removing executor ([1fabff1 ](1fabff19c4 ))
### Bug Fixes
* ISwapExecutor shouldn't be payable ([3df17e8 ](3df17e8924 ))
* Silence slither warnings ([b616e11 ](b616e11354 ))
2025-01-24 16:51:12 +00:00
Tamara
7265301531
Merge pull request #20 from propeller-heads/router/tnl/ENG-4043-delegate-call-executor
...
feat: delegatecall to executor in SwapExecutionDispatcher
2025-01-24 11:47:19 -05:00
TAMARA LIPOWSKI
1fabff19c4
feat: Emit event when removing executor
...
- This is not so relevant for security, but it would sabotage our performance if an executor was wrongly removed, so it's worth it to know every time this happens.
2025-01-24 11:45:24 -05:00
TAMARA LIPOWSKI
5214710530
chore: docstrings and other small improvements
2025-01-24 11:39:49 -05:00
TAMARA LIPOWSKI
3df17e8924
fix: ISwapExecutor shouldn't be payable
...
No reason for that.
2025-01-23 15:43:16 -05:00
TAMARA LIPOWSKI
fb9f340cb7
refactor: Move contract code-checking logic to SwapExecutionDispatcher
...
I was inspired to do this because, when disabling the slither check for the delegatecall when calling the swap executor, I realized it's not clear from the same contract that we have already checked for contract code existence when setting the executor. This made me feel uneasy, as this contract can then not stand alone and must rely on the higher level contract to safely check for code existence, otherwise the delegatecall is unsafe. Keeping this logic in a separate contract seems error-prone to me, as we may remove the check for code existence without immediately realizing the implications of doing so.
For this reason I have organized it as follows:
- Logic/tests relating to proper roles/access control in the main TychoRouter.
- Lower-level logic/tests that checks contract validity before setting the executor in the SwapExecutionDispatcher
2025-01-23 15:40:24 -05:00
TAMARA LIPOWSKI
b616e11354
fix: Silence slither warnings
...
- low level calls are fine, since we are checking for success, and we have already checked for contract existence when setting swap executors
- dead-code is silenced
- fix solidity version
2025-01-23 15:22:31 -05:00
TAMARA LIPOWSKI
825af0f8d7
test: Thorough tests for main SwapExecutionDispatcher method
2025-01-23 15:22:31 -05:00
TAMARA LIPOWSKI
e91ee96129
feat: delegatecall to executor in SwapExecutionDispatcher
2025-01-23 15:22:31 -05:00
semantic-release-bot
70509f547d
chore(release): 0.13.0 [skip ci]
...
## [0.13.0](https://github.com/propeller-heads/tycho-execution/compare/0.12.0...0.13.0 ) (2025-01-23)
### Features
* Implement Permit2 ([ce9ae49 ](ce9ae49e6f ))
### Bug Fixes
* Correct encoding of the approvals ([04e925f ](04e925fe81 ))
* Small improvements ([b9cfc4a ](b9cfc4a35b ))
2025-01-23 17:22:41 +00:00
dianacarvalho1
2858af94ab
Merge pull request #15 from propeller-heads/encoding/dc/ENG-4063-permit2
...
feat: Implement Permit2 encoding
2025-01-23 17:20:03 +00:00
dianacarvalho1
45af3585ec
Merge branch 'main' into encoding/dc/ENG-4063-permit2
2025-01-23 17:18:49 +00:00
semantic-release-bot
7e49741e93
chore(release): 0.12.0 [skip ci]
...
## [0.12.0](https://github.com/propeller-heads/tycho-execution/compare/0.11.0...0.12.0 ) (2025-01-23)
### Features
* add tests for withdraw, fee and make it DRY ([056582c ](056582ca2f ))
### Bug Fixes
* pr comments ([9c99b73 ](9c99b73884 ))
2025-01-23 17:08:52 +00:00
Harsh Vardhan Roy
434ce60bfd
Merge pull request #22 from propeller-heads/router/hr/ENG-4167-Tests-Withdraw-FeeReceiver
2025-01-23 22:36:24 +05:30
royvardhan
9c99b73884
fix: pr comments
2025-01-23 21:54:31 +05:30
Diana Carvalho
b9cfc4a35b
fix: Small improvements
...
- Rename test
- Improve error messages
- Remove unnecessary asserts
--- don't change below this line ---
ENG-4063 Took 52 seconds
2025-01-23 15:53:13 +00:00
Diana Carvalho
7d34236f0c
ci: Don't run tests with --all-features flag
...
This was running the test that should be skipped in CI and it is flagged as
#[cfg_attr(not(feature = "fork-tests"), ignore)]
--- don't change below this line ---
ENG-4063 Took 6 minutes
2025-01-23 15:52:19 +00:00
Diana Carvalho
04e925fe81
fix: Correct encoding of the approvals
...
- Add data validations similar to the ones done in the Permit2 SDK
- Fix Domain main (!!!) It's Permit2 not Permit
- Return the whole function signature data (owner, permit_single, signature) encoded
test improvements:
- Don't compare the timestamps, this was making the test fail sometimes and pass other times
- Add a test to run on an anvil fork and actually call permit2 contract to double check the encoded data works
misc:
Rename get_allowance_data -> get_existing_allowance
--- don't change below this line ---
ENG-4063 Took 5 hours 19 minutes
Took 11 seconds
2025-01-23 15:52:19 +00:00
Diana Carvalho
ce9ae49e6f
feat: Implement Permit2
...
- Retrieve allowance data from an RPC
- Encode approvals:
- Create PermitSingle (and PermitDetails)
- Use alloy eip712 to get signing hash on typed data
- Sign data
- Add chrono and alloy eip712 and signer-local to Cargo.toml
--- don't change below this line ---
ENG-4063 Took 1 hour 58 minutes
Took 18 seconds
Took 32 seconds
Took 9 seconds
Took 1 minute
Took 32 minutes
2025-01-23 15:52:19 +00:00
royvardhan
056582ca2f
feat: add tests for withdraw, fee and make it DRY
2025-01-23 21:04:05 +05:30
semantic-release-bot
7bfd6c981c
chore(release): 0.11.0 [skip ci]
...
## [0.11.0](https://github.com/propeller-heads/tycho-execution/compare/0.10.0...0.11.0 ) (2025-01-23)
### Features
* add LibPrefixLengthEncodedByteArray with tests ([f25da21 ](f25da218d7 ))
* keep assembly ([ae662d0 ](ae662d0026 ))
2025-01-23 14:45:03 +00:00
Harsh Vardhan Roy
8015e1a672
Merge pull request #21 from propeller-heads/router/hr/ENG-4056-Bytes-Array-Conversion
...
feat: add LibPrefixLengthEncodedByteArray
2025-01-23 20:12:38 +05:30
royvardhan
e6f3fc7004
chore: move to lib/bytes
2025-01-23 19:14:56 +05:30
royvardhan
ef2600b7f8
chore: fmt and slither
2025-01-23 19:03:42 +05:30
royvardhan
ae662d0026
feat: keep assembly
2025-01-23 18:50:55 +05:30
royvardhan
f25da218d7
feat: add LibPrefixLengthEncodedByteArray with tests
2025-01-23 18:43:10 +05:30
semantic-release-bot
f409535cfd
chore(release): 0.10.0 [skip ci]
...
## [0.10.0](https://github.com/propeller-heads/tycho-execution/compare/0.9.0...0.10.0 ) (2025-01-23)
### Features
* add fee methods ([0dc7edc ](0dc7edccfa ))
### Bug Fixes
* use FEE_SETTER_ROLE for setFeeReceiver ([15d3bec ](15d3becf60 ))
2025-01-23 09:41:25 +00:00
Harsh Vardhan Roy
ce278f973f
Merge pull request #19 from propeller-heads/router/hr/ENG-4050-fee-methods
...
feat: add fee methods
2025-01-23 15:07:24 +05:30
Harsh Vardhan Roy
193910e650
Merge branch 'main' into router/hr/ENG-4050-fee-methods
2025-01-23 15:04:11 +05:30
royvardhan
15d3becf60
fix: use FEE_SETTER_ROLE for setFeeReceiver
2025-01-23 15:00:47 +05:30
semantic-release-bot
bd9e9241d3
chore(release): 0.9.0 [skip ci]
...
## [0.9.0](https://github.com/propeller-heads/tycho-execution/compare/0.8.0...0.9.0 ) (2025-01-22)
### Features
* Emit events when setting executors/verifiers ([59950a7 ](59950a7575 ))
* Set swap executors and verifiers ([4cb3286 ](4cb3286c94 ))
2025-01-22 19:25:48 +00:00
Tamara
648c9312d5
Merge pull request #18 from propeller-heads/router/tnl/ENG-4044-set-executors
...
feat: Set swap executors and verifiers
2025-01-22 14:23:29 -05:00
TAMARA LIPOWSKI
34243e9016
docs: remove mention of delegatecall from verifier doc
...
- Because we will more likely use a regular call (safer and delegatecall is unnecessary)
2025-01-22 14:21:49 -05:00
royvardhan
0dc7edccfa
feat: add fee methods
2025-01-22 23:52:06 +05:30
TAMARA LIPOWSKI
59950a7575
feat: Emit events when setting executors/verifiers
2025-01-22 12:50:43 -05:00
TAMARA LIPOWSKI
4cb3286c94
feat: Set swap executors and verifiers
...
- Moved the deployment method into a test template for organization
- Created skeletons of dispatcher contracts
- Added all possible test cases for thoroughness
2025-01-22 12:23:22 -05:00
semantic-release-bot
68d29f1970
chore(release): 0.8.0 [skip ci]
...
## [0.8.0](https://github.com/propeller-heads/tycho-execution/compare/0.7.0...0.8.0 ) (2025-01-22)
### Features
* add receiver in event ([2c3af0f ](2c3af0ff31 ))
* add withdraw methods ([78fa890 ](78fa890cd3 ))
### Bug Fixes
* ci ([0c05874 ](0c05874477 ))
* disable slither for native withdraw ([f3363a2 ](f3363a24f4 ))
* undo rm lib ([a1e7b55 ](a1e7b552b6 ))
* use send for native transfer ([c6c0ddd ](c6c0ddd498 ))
2025-01-22 17:12:21 +00:00
Harsh Vardhan Roy
eb6d2ec1dc
Merge pull request #17 from propeller-heads/router/hr/ENG-4049-withdraw-methods
2025-01-22 22:40:06 +05:30
Harsh Vardhan Roy
50f3de9caf
Merge branch 'main' into router/hr/ENG-4049-withdraw-methods
2025-01-22 22:23:41 +05:30
royvardhan
f3363a24f4
fix: disable slither for native withdraw
2025-01-22 22:14:10 +05:30
royvardhan
136adafa6d
fmt
2025-01-22 22:09:05 +05:30
royvardhan
2c3af0ff31
feat: add receiver in event
2025-01-22 22:05:28 +05:30
royvardhan
c6c0ddd498
fix: use send for native transfer
2025-01-22 22:01:30 +05:30
royvardhan
0c05874477
fix: ci
2025-01-22 20:54:36 +05:30
royvardhan
a1e7b552b6
fix: undo rm lib
2025-01-22 20:35:55 +05:30
royvardhan
78fa890cd3
feat: add withdraw methods
2025-01-22 20:33:24 +05:30
semantic-release-bot
60f4274304
chore(release): 0.7.0 [skip ci]
...
## [0.7.0](https://github.com/propeller-heads/tycho-execution/compare/0.6.0...0.7.0 ) (2025-01-22)
### Features
* UniswapV2 Swap Encoder ([7b4bf02 ](7b4bf0205d ))
2025-01-22 14:59:41 +00:00