Skip to content

Fix: Re-add Scripts to CI & Fix Syntax#419

Merged
marvinkruse merged 42 commits intotemp_devfrom
fix_ci
Mar 28, 2024
Merged

Fix: Re-add Scripts to CI & Fix Syntax#419
marvinkruse merged 42 commits intotemp_devfrom
fix_ci

Conversation

@marvinkruse
Copy link
Member

@marvinkruse marvinkruse commented Feb 14, 2024

Fixes the CI (syntax error in the workflow file).

Status: works, but scripts fail, fixing that atm.

@marvinkruse marvinkruse self-assigned this Feb 14, 2024
@marvinkruse marvinkruse changed the base branch from main to temp_dev February 14, 2024 15:55
@marvinkruse marvinkruse requested a review from FHieser February 14, 2024 16:00
@marvinkruse marvinkruse marked this pull request as ready for review February 14, 2024 16:00
- Adding the git.detectSubmodule setting to the config. This tells your local VSCode to ignore the submodules in the "git" tab. Which makes it a bit easier to work with, as we will only touch the submodules via forge commands anyways.
- Update remote compiler version to 0.8.23 as well (just in case)
@FHieser FHieser mentioned this pull request Feb 15, 2024
@marvinkruse
Copy link
Member Author

marvinkruse commented Feb 16, 2024

I kinda don't like that current PRs are not using the CI (at least the test-part) at all. Should I just remove the scripts part in this one from the workflow (as I haven't gotten it fixed yet, will still take a bit of time), so that at least we have our regular CI back and then do a fresh PR for scripts in CI? @FHieser @0xNuggan @Zitzak

@FHieser
Copy link
Contributor

FHieser commented Feb 16, 2024

I was one step ahead of you there already @marvinkruse
look at #421

@marvinkruse
Copy link
Member Author

I was one step ahead of you there already @marvinkruse look at #421

Nice, good thinking - thank you!

@marvinkruse marvinkruse changed the title Fix: Restore CI & Fix Syntax Fix: Re-add Scripts to CI & Fix Syntax Feb 16, 2024
@FHieser FHieser mentioned this pull request Mar 12, 2024
@marvinkruse
Copy link
Member Author

marvinkruse commented Mar 28, 2024

I think this all looks good to me. Just one thing which will become important now as we deploy something:
in the metadata of the modules, we currently just have https://github.com/InverterNetwork as the URL. we should treat this field properly. This means we probably set this to either

  • https://github.com/InverterNetwork/inverter-contracts
    or
  • The URL to the actual contract being deployed, i.e.
    • https://github.com/InverterNetwork/inverter-contracts/blob/main/src/modules/logicModule/BountyManager.sol

I believe the first version would be fine, as the main goal would be to distinguish between two modules called BountyManager in the future, one that we developed and one that potentially is being done by someone else (in their own repo). And in that case it would be enough to link to our repo, not the individual contract.
Thoughts?

@FHieser
Copy link
Contributor

FHieser commented Mar 28, 2024

I just copied the style that @Zitzak introduced.
Im fine with either one
I think for starters the https://github.com/InverterNetwork/inverter-contracts is fine and once we figure out how we properly do the versioning in name and repo we can switch

@FHieser
Copy link
Contributor

FHieser commented Mar 28, 2024

@marvinkruse changed it accordingly

@marvinkruse
Copy link
Member Author

@marvinkruse changed it accordingly

Thank you, I will review it again in a sec, but I think I didn't find anything.

Copy link
Collaborator

@Zitzak Zitzak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

In regard to the metadata, I just copied what was already in the code ^^ so not a preference. I do agree that it should lead to the actual repo/contracts.

One thing which we brought up some time ago is that it makes sense to squash the commits after the approvals, so that is the last thing still open which I can see

Copy link
Contributor

@0xNuggan 0xNuggan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Only one little thing I commented

@marvinkruse
Copy link
Member Author

One thing which we brought up some time ago is that it makes sense to squash the commits after the approvals, so that is the last thing still open which I can see

Yes, I always choose "squash and merge" (i think it's also set as the default), I agree that this is way better for the structure of our dev/main branches.

@marvinkruse marvinkruse force-pushed the fix_ci branch 2 times, most recently from 2ad0379 to 0c64ca0 Compare March 28, 2024 14:24
@marvinkruse marvinkruse merged commit d55b415 into temp_dev Mar 28, 2024
@marvinkruse marvinkruse deleted the fix_ci branch March 28, 2024 14:52
marvinkruse added a commit that referenced this pull request Apr 12, 2024
* Fix: Workflow File Syntax

* Chore: Update VSCode settings

- Adding the git.detectSubmodule setting to the config. This tells your local VSCode to ignore the submodules in the "git" tab. Which makes it a bit easier to work with, as we will only touch the submodules via forge commands anyways.
- Update remote compiler version to 0.8.23 as well (just in case)

* Chore: Add install cmd to Makefile

* Fix: Old Wording in Makefile

* Add basic run functions

* Update ci.yml

* Swap scripts to higher position

* Update ci.yml

* Test removing the override of the clean command

* Split make pre-test into pre-test and pre-script

* Update Makefile

* Update Env Variables in make file

* Fix typo

* Quick test

* Revert "Quick test"

This reverts commit 192f71e.

* Change comments

* Update ci.yml to source the env from dev.env

* Test if set dev command was wrong

* Update ci.yml

* Update ci.yml

* Test setting env in make file directly

* Load directly from the dev.env file

* Create DeployRecurringPaymentManager.s.sol

* Simplify Transaction Forwarder Script

* Update DeployAndSetUpBeacon.s.sol

* Fix comments

* Update DeploymentScript.s.sol

Add missing scripts and todo comments for @Zitzak

* fix: DeploymentScript

* Remove Beacon from Factories

* Small Fixes

* Fix merge

* Remove todos

* Update ci.yml

* Revert removal of make clean

* Change metadata

* Fix: Clarify comment

* Chore: Update yml file to use make commands

* Tests: Add check for bc funding manager in tests

---------

Co-authored-by: FHieser <felix_hieser@web.de>
Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: Zitzak <marvin88gr@gmail.com>
marvinkruse added a commit that referenced this pull request Apr 12, 2024
* Fix: Workflow File Syntax

* Chore: Update VSCode settings

- Adding the git.detectSubmodule setting to the config. This tells your local VSCode to ignore the submodules in the "git" tab. Which makes it a bit easier to work with, as we will only touch the submodules via forge commands anyways.
- Update remote compiler version to 0.8.23 as well (just in case)

* Chore: Add install cmd to Makefile

* Fix: Old Wording in Makefile

* Add basic run functions

* Update ci.yml

* Swap scripts to higher position

* Update ci.yml

* Test removing the override of the clean command

* Split make pre-test into pre-test and pre-script

* Update Makefile

* Update Env Variables in make file

* Fix typo

* Quick test

* Revert "Quick test"

This reverts commit 192f71e.

* Change comments

* Update ci.yml to source the env from dev.env

* Test if set dev command was wrong

* Update ci.yml

* Update ci.yml

* Test setting env in make file directly

* Load directly from the dev.env file

* Create DeployRecurringPaymentManager.s.sol

* Simplify Transaction Forwarder Script

* Update DeployAndSetUpBeacon.s.sol

* Fix comments

* Update DeploymentScript.s.sol

Add missing scripts and todo comments for @Zitzak

* fix: DeploymentScript

* Remove Beacon from Factories

* Small Fixes

* Fix merge

* Remove todos

* Update ci.yml

* Revert removal of make clean

* Change metadata

* Fix: Clarify comment

* Chore: Update yml file to use make commands

* Tests: Add check for bc funding manager in tests

---------

Co-authored-by: FHieser <felix_hieser@web.de>
Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: Zitzak <marvin88gr@gmail.com>
marvinkruse added a commit that referenced this pull request Apr 14, 2024
* [DO NOT MERGE] OpenZeppelin V5 update (#401)

* chore: update OZ lib to V5

* chore: update openzeppelin to v5

- updated paths were needed
- added constructor arguments for Ownable update
- updated OZErrors and the expectRevert that were using them to work with
custom errors
- replaces Address.isContract with the logic it used, as it has been removed

* chore: update Solidity version 0.8.19 -> 0.8.20

* format: format code

* chore: fix CI and update version

The CI failed because of imports, which are now corrected.

Next to this we decided to set the Solidity version to 0.8.23 because
it will be more up-to-date when we launch to mainnet

* Delete .gas-snapshot

* Update .gitignore

* Change TestsupportsInterface to only check immediate Iterfaces

---------

Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: FHieser <felix_hieser@web.de>

* chore: update CI to include testing scripts

* Update ci.yml (#421)

* fix: solved address collition in bc test

* SC-122: Implement MultiCall and MetaTransaction Support (#405)

* chore: update OZ lib to V5

* chore: update openzeppelin to v5

- updated paths were needed
- added constructor arguments for Ownable update
- updated OZErrors and the expectRevert that were using them to work with
custom errors
- replaces Address.isContract with the logic it used, as it has been removed

* chore: update Solidity version 0.8.19 -> 0.8.20

* format: format code

* 394 metatransactions dev (#399)

* Modify ModuleManager to enact ERC2771

* Intermediate Push

I need to check something and pushing makes most sense he

* Fix inheritance to enable build

* Expose isTrustedForwarder in Orchestrator

* Implement modified ERC2771 to Module

* Fix Tests

A lot of modules havent  been properly initialized in the tests. The fix targets that by actually using the proxy Clone implementation and then properly  initializing them

* Add Module Test

* Implement MinimalForwarder

* Fix MakeFile

* Create E2ETest

* Add specific Role section in E2E Test

* Remove todo

* Marvin G Fix

* Foundryup formatting

* Fix after openZepplelin Update

* Create Transaction forwarder

* Update IModule.sol

* Change to Transaction forwarder

* chore: fix CI and update version

The CI failed because of imports, which are now corrected.

Next to this we decided to set the Solidity version to 0.8.23 because
it will be more up-to-date when we launch to mainnet

* WIP

* Fixing tests

* Cleanup

* Add Multicall Section into E2ETest

* Cleanup

* Merge fix

* Fix based on comments

* Delete .gas-snapshot

* Update .gitignore

* Change TestsupportsInterface to only check immediate Iterfaces

* Fix merge

* Create DeployAndSetUpTransactionForwarder.s.sol

* Add Transaction Forwarder Script to deployment scripts

---------

Co-authored-by: Zitzak <marvin88gr@gmail.com>

* SC-140: Implement version and intervention mechanism in beacon (#418)

* Rename Contracts

* Refactor Beacons and add Version function

* Make it buildable

* Fix test

* Cleanup

* Update InverterBeacon.t.sol

* Update InverterBeacon.t.sol

* add BeaconProxy Test

* Clarify Outcommented

* Fix Beacon Upgrade Script

* Update UpgradeBeacon.s.sol

* Add Intervention Mechanism to InverterBeacon

* Make it buildable

* PR comment fix

* Add tests

* Add Interface

* Cleanup

* Move and update Beacon e2e

* Update InverterBeaconE2E.t.sol

* Cleanup

* Adapt naming

* Fix after merge

* Fix ModuleTest bug

* Create digest helper function for meta tx forwarder (#430)

* Create digest creation function

* Cleanup

* Add getDigest Test

* add _ to getStructHash()

* Update deployment metadata

* typo fixes

* format + change active addresses

* Fix: Revamp scripts & re-add to CI (#419)

* Fix: Workflow File Syntax

* Chore: Update VSCode settings

- Adding the git.detectSubmodule setting to the config. This tells your local VSCode to ignore the submodules in the "git" tab. Which makes it a bit easier to work with, as we will only touch the submodules via forge commands anyways.
- Update remote compiler version to 0.8.23 as well (just in case)

* Chore: Add install cmd to Makefile

* Fix: Old Wording in Makefile

* Add basic run functions

* Update ci.yml

* Swap scripts to higher position

* Update ci.yml

* Test removing the override of the clean command

* Split make pre-test into pre-test and pre-script

* Update Makefile

* Update Env Variables in make file

* Fix typo

* Quick test

* Revert "Quick test"

This reverts commit 192f71e.

* Change comments

* Update ci.yml to source the env from dev.env

* Test if set dev command was wrong

* Update ci.yml

* Update ci.yml

* Test setting env in make file directly

* Load directly from the dev.env file

* Create DeployRecurringPaymentManager.s.sol

* Simplify Transaction Forwarder Script

* Update DeployAndSetUpBeacon.s.sol

* Fix comments

* Update DeploymentScript.s.sol

Add missing scripts and todo comments for @Zitzak

* fix: DeploymentScript

* Remove Beacon from Factories

* Small Fixes

* Fix merge

* Remove todos

* Update ci.yml

* Revert removal of make clean

* Change metadata

* Fix: Clarify comment

* Chore: Update yml file to use make commands

* Tests: Add check for bc funding manager in tests

---------

Co-authored-by: FHieser <felix_hieser@web.de>
Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: Zitzak <marvin88gr@gmail.com>

* CI: Enable CI on certain Branches & all PRs

* Fix: Enable <18 Decimal Tokens as Collateral in Bonding Curve (#435)

* change decimals to 6

* working draft

some test are still failing because of excessive rejections

* formatting

* bugfix

* fix vm.assume rejections

* review fixes

modified the getVirtual... functions to return the value in the native decimal amount instead of the normalized one and added some tests

* add normalization to virtualSupply

this should help set stuff up for external BC tokens

* changes after discussion with marvin + corresponding tests

Ended up moving the place where the decimals get converted, and adapted all tests

* remove remaining question

* format

the online editor merge messed the format up

* remove stray comments

* Feat: Add Governance Contract (#436)

* Create IGovernanceContract.sol

* Create GovernanceContract.sol

* Add Natspec

* Refactoring and improvements

* Create Tests

* Add more detail to test

* Add Governance to dev.env

* Update ModuleFactoryMock.sol

* Update ModuleFactory.t.sol

* Remove comment

* Remove comments

* Update Module Factory to check for governanceContract ownership

* Add Governance to E2ETests

* Update InverterBeaconE2E.t.sol

* Delete ModuleTest_Template.txt

* Fix Tests

* Fix to a buildable state in scripts

* Create DeployGovernanceContract.s.sol

* Fix description

* Remove validNewVersion and add setImplementation in Constructor

* Update Makefile

* Fix typo

* Update DeploymentScript.s.sol

* Rename to governor contract

* Correct error naming and set minimum Timelock Period to 48h

* Revert "Delete ModuleTest_Template.txt"

This reverts commit a62d07c.

* Fix based on recommondations

* Test for beacon not owned by Governor

* Make Governance Implementation a proxy in scripts and e2e

* accessible instead of accessable

* Fix typos

* Adapt naming

* Adapt naming

* Change naming

* Adapt naming

* Remove Ownable dependency

* Use AccessControlUpgradeable instead of AccessControl

* Adapt naming

* Forgot the R in Governor

* Fix inheritance

* Remove beacon implementation assumption

* update _contextSuffixLength

* Remove test for empty beacon implementation

* Let Module inherit from ERC2771ContextUpgradeable

* Fix init in Module test

* Fix tests

* Add batched role grant/revoke (#444)

* Add batched functions

* Clean up AuthorizerMock

* Update tests

* Feat: Allow zero minor version for first implementation (#446)

* Feat: Allow minor version to be zero

Note: Only possible during intialization, which is why the
modifier (used for any subsequent version) only allows
versions greater than zero/the last version.

* Test: Adapt tests to cover zero version flow

* Test: Change tests to all start at minor version zero

* Scripts: Change deployment scripts to start with minor version zero

* Feat: Allow minor version to be zero

Note: Only possible during intialization, which is why the
modifier (used for any subsequent version) only allows
versions greater than zero/the last version.

* Test: Adapt tests to cover zero version flow

* Test: Change tests to all start at minor version zero

* Scripts: Change deployment scripts to start with minor version zero

* [DO NOT MERGE] OpenZeppelin V5 update (#401)

* chore: update OZ lib to V5

* chore: update openzeppelin to v5

- updated paths were needed
- added constructor arguments for Ownable update
- updated OZErrors and the expectRevert that were using them to work with
custom errors
- replaces Address.isContract with the logic it used, as it has been removed

* chore: update Solidity version 0.8.19 -> 0.8.20

* format: format code

* chore: fix CI and update version

The CI failed because of imports, which are now corrected.

Next to this we decided to set the Solidity version to 0.8.23 because
it will be more up-to-date when we launch to mainnet

* Delete .gas-snapshot

* Update .gitignore

* Change TestsupportsInterface to only check immediate Iterfaces

---------

Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: FHieser <felix_hieser@web.de>

* chore: update CI to include testing scripts

* Update ci.yml (#421)

* SC-122: Implement MultiCall and MetaTransaction Support (#405)

* chore: update OZ lib to V5

* chore: update openzeppelin to v5

- updated paths were needed
- added constructor arguments for Ownable update
- updated OZErrors and the expectRevert that were using them to work with
custom errors
- replaces Address.isContract with the logic it used, as it has been removed

* chore: update Solidity version 0.8.19 -> 0.8.20

* format: format code

* 394 metatransactions dev (#399)

* Modify ModuleManager to enact ERC2771

* Intermediate Push

I need to check something and pushing makes most sense he

* Fix inheritance to enable build

* Expose isTrustedForwarder in Orchestrator

* Implement modified ERC2771 to Module

* Fix Tests

A lot of modules havent  been properly initialized in the tests. The fix targets that by actually using the proxy Clone implementation and then properly  initializing them

* Add Module Test

* Implement MinimalForwarder

* Fix MakeFile

* Create E2ETest

* Add specific Role section in E2E Test

* Remove todo

* Marvin G Fix

* Foundryup formatting

* Fix after openZepplelin Update

* Create Transaction forwarder

* Update IModule.sol

* Change to Transaction forwarder

* chore: fix CI and update version

The CI failed because of imports, which are now corrected.

Next to this we decided to set the Solidity version to 0.8.23 because
it will be more up-to-date when we launch to mainnet

* WIP

* Fixing tests

* Cleanup

* Add Multicall Section into E2ETest

* Cleanup

* Merge fix

* Fix based on comments

* Delete .gas-snapshot

* Update .gitignore

* Change TestsupportsInterface to only check immediate Iterfaces

* Fix merge

* Create DeployAndSetUpTransactionForwarder.s.sol

* Add Transaction Forwarder Script to deployment scripts

---------

Co-authored-by: Zitzak <marvin88gr@gmail.com>

* SC-140: Implement version and intervention mechanism in beacon (#418)

* Rename Contracts

* Refactor Beacons and add Version function

* Make it buildable

* Fix test

* Cleanup

* Update InverterBeacon.t.sol

* Update InverterBeacon.t.sol

* add BeaconProxy Test

* Clarify Outcommented

* Fix Beacon Upgrade Script

* Update UpgradeBeacon.s.sol

* Add Intervention Mechanism to InverterBeacon

* Make it buildable

* PR comment fix

* Add tests

* Add Interface

* Cleanup

* Move and update Beacon e2e

* Update InverterBeaconE2E.t.sol

* Cleanup

* Adapt naming

* Fix after merge

* Fix ModuleTest bug

* Create digest helper function for meta tx forwarder (#430)

* Create digest creation function

* Cleanup

* Add getDigest Test

* add _ to getStructHash()

* Update deployment metadata

* typo fixes

* format + change active addresses

* Fix: Revamp scripts & re-add to CI (#419)

* Fix: Workflow File Syntax

* Chore: Update VSCode settings

- Adding the git.detectSubmodule setting to the config. This tells your local VSCode to ignore the submodules in the "git" tab. Which makes it a bit easier to work with, as we will only touch the submodules via forge commands anyways.
- Update remote compiler version to 0.8.23 as well (just in case)

* Chore: Add install cmd to Makefile

* Fix: Old Wording in Makefile

* Add basic run functions

* Update ci.yml

* Swap scripts to higher position

* Update ci.yml

* Test removing the override of the clean command

* Split make pre-test into pre-test and pre-script

* Update Makefile

* Update Env Variables in make file

* Fix typo

* Quick test

* Revert "Quick test"

This reverts commit 192f71e.

* Change comments

* Update ci.yml to source the env from dev.env

* Test if set dev command was wrong

* Update ci.yml

* Update ci.yml

* Test setting env in make file directly

* Load directly from the dev.env file

* Create DeployRecurringPaymentManager.s.sol

* Simplify Transaction Forwarder Script

* Update DeployAndSetUpBeacon.s.sol

* Fix comments

* Update DeploymentScript.s.sol

Add missing scripts and todo comments for @Zitzak

* fix: DeploymentScript

* Remove Beacon from Factories

* Small Fixes

* Fix merge

* Remove todos

* Update ci.yml

* Revert removal of make clean

* Change metadata

* Fix: Clarify comment

* Chore: Update yml file to use make commands

* Tests: Add check for bc funding manager in tests

---------

Co-authored-by: FHieser <felix_hieser@web.de>
Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: Zitzak <marvin88gr@gmail.com>

* CI: Enable CI on certain Branches & all PRs

* Fix: Enable <18 Decimal Tokens as Collateral in Bonding Curve (#435)

* change decimals to 6

* working draft

some test are still failing because of excessive rejections

* formatting

* bugfix

* fix vm.assume rejections

* review fixes

modified the getVirtual... functions to return the value in the native decimal amount instead of the normalized one and added some tests

* add normalization to virtualSupply

this should help set stuff up for external BC tokens

* changes after discussion with marvin + corresponding tests

Ended up moving the place where the decimals get converted, and adapted all tests

* remove remaining question

* format

the online editor merge messed the format up

* remove stray comments

* Feat: Add Governance Contract (#436)

* Create IGovernanceContract.sol

* Create GovernanceContract.sol

* Add Natspec

* Refactoring and improvements

* Create Tests

* Add more detail to test

* Add Governance to dev.env

* Update ModuleFactoryMock.sol

* Update ModuleFactory.t.sol

* Remove comment

* Remove comments

* Update Module Factory to check for governanceContract ownership

* Add Governance to E2ETests

* Update InverterBeaconE2E.t.sol

* Delete ModuleTest_Template.txt

* Fix Tests

* Fix to a buildable state in scripts

* Create DeployGovernanceContract.s.sol

* Fix description

* Remove validNewVersion and add setImplementation in Constructor

* Update Makefile

* Fix typo

* Update DeploymentScript.s.sol

* Rename to governor contract

* Correct error naming and set minimum Timelock Period to 48h

* Revert "Delete ModuleTest_Template.txt"

This reverts commit a62d07c.

* Fix based on recommondations

* Test for beacon not owned by Governor

* Make Governance Implementation a proxy in scripts and e2e

* accessible instead of accessable

* Fix typos

* Adapt naming

* Adapt naming

* Change naming

* Adapt naming

* Remove Ownable dependency

* Use AccessControlUpgradeable instead of AccessControl

* Adapt naming

* Forgot the R in Governor

* Add batched role grant/revoke (#444)

* Add batched functions

* Clean up AuthorizerMock

* Update tests

* Feat: Allow zero minor version for first implementation (#446)

* Feat: Allow minor version to be zero

Note: Only possible during intialization, which is why the
modifier (used for any subsequent version) only allows
versions greater than zero/the last version.

* Test: Adapt tests to cover zero version flow

* Test: Change tests to all start at minor version zero

* Scripts: Change deployment scripts to start with minor version zero

* Feat: Allow minor version to be zero

Note: Only possible during intialization, which is why the
modifier (used for any subsequent version) only allows
versions greater than zero/the last version.

* Test: Adapt tests to cover zero version flow

* Test: Change tests to all start at minor version zero

* Scripts: Change deployment scripts to start with minor version zero

* [DO NOT MERGE] OpenZeppelin V5 update (#401)

* chore: update OZ lib to V5

* chore: update openzeppelin to v5

- updated paths were needed
- added constructor arguments for Ownable update
- updated OZErrors and the expectRevert that were using them to work with
custom errors
- replaces Address.isContract with the logic it used, as it has been removed

* chore: update Solidity version 0.8.19 -> 0.8.20

* format: format code

* chore: fix CI and update version

The CI failed because of imports, which are now corrected.

Next to this we decided to set the Solidity version to 0.8.23 because
it will be more up-to-date when we launch to mainnet

* Delete .gas-snapshot

* Update .gitignore

* Change TestsupportsInterface to only check immediate Iterfaces

---------

Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: FHieser <felix_hieser@web.de>

* chore: update CI to include testing scripts

* Update ci.yml (#421)

* SC-122: Implement MultiCall and MetaTransaction Support (#405)

* chore: update OZ lib to V5

* chore: update openzeppelin to v5

- updated paths were needed
- added constructor arguments for Ownable update
- updated OZErrors and the expectRevert that were using them to work with
custom errors
- replaces Address.isContract with the logic it used, as it has been removed

* chore: update Solidity version 0.8.19 -> 0.8.20

* format: format code

* 394 metatransactions dev (#399)

* Modify ModuleManager to enact ERC2771

* Intermediate Push

I need to check something and pushing makes most sense he

* Fix inheritance to enable build

* Expose isTrustedForwarder in Orchestrator

* Implement modified ERC2771 to Module

* Fix Tests

A lot of modules havent  been properly initialized in the tests. The fix targets that by actually using the proxy Clone implementation and then properly  initializing them

* Add Module Test

* Implement MinimalForwarder

* Fix MakeFile

* Create E2ETest

* Add specific Role section in E2E Test

* Remove todo

* Marvin G Fix

* Foundryup formatting

* Fix after openZepplelin Update

* Create Transaction forwarder

* Update IModule.sol

* Change to Transaction forwarder

* chore: fix CI and update version

The CI failed because of imports, which are now corrected.

Next to this we decided to set the Solidity version to 0.8.23 because
it will be more up-to-date when we launch to mainnet

* WIP

* Fixing tests

* Cleanup

* Add Multicall Section into E2ETest

* Cleanup

* Merge fix

* Fix based on comments

* Delete .gas-snapshot

* Update .gitignore

* Change TestsupportsInterface to only check immediate Iterfaces

* Fix merge

* Create DeployAndSetUpTransactionForwarder.s.sol

* Add Transaction Forwarder Script to deployment scripts

---------

Co-authored-by: Zitzak <marvin88gr@gmail.com>

* SC-140: Implement version and intervention mechanism in beacon (#418)

* Rename Contracts

* Refactor Beacons and add Version function

* Make it buildable

* Fix test

* Cleanup

* Update InverterBeacon.t.sol

* Update InverterBeacon.t.sol

* add BeaconProxy Test

* Clarify Outcommented

* Fix Beacon Upgrade Script

* Update UpgradeBeacon.s.sol

* Add Intervention Mechanism to InverterBeacon

* Make it buildable

* PR comment fix

* Add tests

* Add Interface

* Cleanup

* Move and update Beacon e2e

* Update InverterBeaconE2E.t.sol

* Cleanup

* Adapt naming

* Fix after merge

* Create digest helper function for meta tx forwarder (#430)

* Create digest creation function

* Cleanup

* Add getDigest Test

* add _ to getStructHash()

* typo fixes

* format + change active addresses

* Fix: Revamp scripts & re-add to CI (#419)

* Fix: Workflow File Syntax

* Chore: Update VSCode settings

- Adding the git.detectSubmodule setting to the config. This tells your local VSCode to ignore the submodules in the "git" tab. Which makes it a bit easier to work with, as we will only touch the submodules via forge commands anyways.
- Update remote compiler version to 0.8.23 as well (just in case)

* Chore: Add install cmd to Makefile

* Fix: Old Wording in Makefile

* Add basic run functions

* Update ci.yml

* Swap scripts to higher position

* Update ci.yml

* Test removing the override of the clean command

* Split make pre-test into pre-test and pre-script

* Update Makefile

* Update Env Variables in make file

* Fix typo

* Quick test

* Revert "Quick test"

This reverts commit 192f71e.

* Change comments

* Update ci.yml to source the env from dev.env

* Test if set dev command was wrong

* Update ci.yml

* Update ci.yml

* Test setting env in make file directly

* Load directly from the dev.env file

* Create DeployRecurringPaymentManager.s.sol

* Simplify Transaction Forwarder Script

* Update DeployAndSetUpBeacon.s.sol

* Fix comments

* Update DeploymentScript.s.sol

Add missing scripts and todo comments for @Zitzak

* fix: DeploymentScript

* Remove Beacon from Factories

* Small Fixes

* Fix merge

* Remove todos

* Update ci.yml

* Revert removal of make clean

* Change metadata

* Fix: Clarify comment

* Chore: Update yml file to use make commands

* Tests: Add check for bc funding manager in tests

---------

Co-authored-by: FHieser <felix_hieser@web.de>
Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: Zitzak <marvin88gr@gmail.com>

* Feat: Add Governance Contract (#436)

* Create IGovernanceContract.sol

* Create GovernanceContract.sol

* Add Natspec

* Refactoring and improvements

* Create Tests

* Add more detail to test

* Add Governance to dev.env

* Update ModuleFactoryMock.sol

* Update ModuleFactory.t.sol

* Remove comment

* Remove comments

* Update Module Factory to check for governanceContract ownership

* Add Governance to E2ETests

* Update InverterBeaconE2E.t.sol

* Delete ModuleTest_Template.txt

* Fix Tests

* Fix to a buildable state in scripts

* Create DeployGovernanceContract.s.sol

* Fix description

* Remove validNewVersion and add setImplementation in Constructor

* Update Makefile

* Fix typo

* Update DeploymentScript.s.sol

* Rename to governor contract

* Correct error naming and set minimum Timelock Period to 48h

* Revert "Delete ModuleTest_Template.txt"

This reverts commit a62d07c.

* Fix based on recommondations

* Test for beacon not owned by Governor

* Make Governance Implementation a proxy in scripts and e2e

* accessible instead of accessable

* Fix typos

* Adapt naming

* Adapt naming

* Change naming

* Adapt naming

* Remove Ownable dependency

* Use AccessControlUpgradeable instead of AccessControl

* Adapt naming

* Forgot the R in Governor

* FIx: Merge conflicts

* Fix merge issue: Reworked deployment script

* Fix Merge issue: ERC2771ContextUpgradeable Inheritance

* Fix scripts on a basic level

* Add to make scripts and reorder scripts

* cleanup

* Fix: Remove hardcoded decimals from RebasingFM tests

---------

Co-authored-by: Marvin <43185740+Zitzak@users.noreply.github.com>
Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: FHieser <felix_hieser@web.de>
Co-authored-by: Zitzak <marvin88gr@gmail.com>
Co-authored-by: 0xNuggan <82726722+0xNuggan@users.noreply.github.com>
marvinkruse added a commit that referenced this pull request Apr 14, 2024
* Fix: Workflow File Syntax

* Chore: Update VSCode settings

- Adding the git.detectSubmodule setting to the config. This tells your local VSCode to ignore the submodules in the "git" tab. Which makes it a bit easier to work with, as we will only touch the submodules via forge commands anyways.
- Update remote compiler version to 0.8.23 as well (just in case)

* Chore: Add install cmd to Makefile

* Fix: Old Wording in Makefile

* Add basic run functions

* Update ci.yml

* Swap scripts to higher position

* Update ci.yml

* Test removing the override of the clean command

* Split make pre-test into pre-test and pre-script

* Update Makefile

* Update Env Variables in make file

* Fix typo

* Quick test

* Revert "Quick test"

This reverts commit 192f71e.

* Change comments

* Update ci.yml to source the env from dev.env

* Test if set dev command was wrong

* Update ci.yml

* Update ci.yml

* Test setting env in make file directly

* Load directly from the dev.env file

* Create DeployRecurringPaymentManager.s.sol

* Simplify Transaction Forwarder Script

* Update DeployAndSetUpBeacon.s.sol

* Fix comments

* Update DeploymentScript.s.sol

Add missing scripts and todo comments for @Zitzak

* fix: DeploymentScript

* Remove Beacon from Factories

* Small Fixes

* Fix merge

* Remove todos

* Update ci.yml

* Revert removal of make clean

* Change metadata

* Fix: Clarify comment

* Chore: Update yml file to use make commands

* Tests: Add check for bc funding manager in tests

---------

Co-authored-by: FHieser <felix_hieser@web.de>
Co-authored-by: hieser <47272854+FHieser@users.noreply.github.com>
Co-authored-by: Zitzak <marvin88gr@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants