Commit Graph

1412 Commits

Author SHA1 Message Date
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
Tamara
4918036d23 Merge pull request #16 from propeller-heads/encoding/tnl/ENG-4066-usv2-swap
feat: UniswapV2 Swap Encoder
2025-01-22 09:57:09 -05:00
TAMARA LIPOWSKI
ef07f49698 chore: merge main 2025-01-22 09:51:50 -05:00
dianacarvalho1
113a996c16 Merge pull request #14 from propeller-heads/encoding/dc/remove-expects
chore: Do not use expect
2025-01-22 14:38:50 +00:00
TAMARA LIPOWSKI
748a3f06c3 chore: Renamings for clarity 2025-01-22 09:33:08 -05:00
TAMARA LIPOWSKI
cc979880e2 chore: Rename address_for_approvals -> router_address
When will this not be the router address that we use for approvals? It will always be the router address. address_for_approvals sounds to me very vague (which approvals?).
2025-01-21 16:35:19 -05:00
TAMARA LIPOWSKI
7b4bf0205d feat: UniswapV2 Swap Encoder 2025-01-21 16:35:19 -05:00
Diana Carvalho
979cdf7437 chore: Do not use expect
--- don't change below this line ---
ENG-4063 Took 57 minutes


Took 17 seconds

Took 45 seconds
2025-01-21 18:48:49 +00:00
semantic-release-bot
7890f26812 chore(release): 0.6.0 [skip ci]
## [0.6.0](https://github.com/propeller-heads/tycho-execution/compare/0.5.0...0.6.0) (2025-01-21)

### Features

* Add openzeppelin lib for access control ([a8f62ee](a8f62ee837))
* Add permit2 lib for approval management ([cb9053b](cb9053bd88))
* initial TychoRouter skeleton ([ab28a47](ab28a4730d)), closes [lib/openzeppelin-contracts/contracts/access/AccessControl.sol#4](https://github.com/lib/openzeppelin-contracts/contracts/access/AccessControl.sol/issues/4) [lib/openzeppelin-contracts/contracts/access/IAccessControl.sol#4](https://github.com/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol/issues/4) [lib/openzeppelin-contracts/contracts/utils/Context.sol#4](https://github.com/lib/openzeppelin-contracts/contracts/utils/Context.sol/issues/4) [lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol#4](https://github.com/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol/issues/4) [lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol#4](https://github.com/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol/issues/4) [lib/permit2/src/interfaces/IAllowanceTransfer.sol#2](https://github.com/lib/permit2/src/interfaces/IAllowanceTransfer.sol/issues/2) [lib/permit2/src/interfaces/IEIP712.sol#2](https://github.com/lib/permit2/src/interfaces/IEIP712.sol/issues/2)

### Bug Fixes

* Filter paths when running slither in CI ([96809d4](96809d4801))
2025-01-21 14:35:47 +00:00
Tamara
14fbab95fb Merge pull request #13 from propeller-heads/router/tnl/ENG-4032-router-skeleton
feat: TychoRouter Skeleton
2025-01-21 09:31:52 -05:00
TAMARA LIPOWSKI
96809d4801 fix: Filter paths when running slither in CI
- We don't want to check submodules, solidity versions are different
2025-01-20 17:35:00 -05:00
TAMARA LIPOWSKI
ab28a4730d feat: initial TychoRouter skeleton
- remappings.txt is used for more elegant imports
- decided not to include all helper methods in skeleton - just main swap method. They are properly documented in the jira tasks.
- add filter-paths to slither to exclude submodules, otherwise we will get slither warnings about permit2 and open-zeppelin using different solidity versions:

```
	- Version constraint ^0.8.20 is used by:
		-^0.8.20 (lib/openzeppelin-contracts/contracts/access/AccessControl.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/access/IAccessControl.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/utils/Context.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol#4)
	- Version constraint ^0.8.0 is used by:
		-^0.8.0 (lib/permit2/src/interfaces/IAllowanceTransfer.sol#2)
		-^0.8.0 (lib/permit2/src/interfaces/IEIP712.sol#2)
	- Version constraint ^0.8.28 is used by:
```
2025-01-20 17:21:46 -05:00
TAMARA LIPOWSKI
cb9053bd88 feat: Add permit2 lib for approval management
- Added as git submodule
2025-01-20 16:32:20 -05:00