Closed juliopavila closed 1 month ago
The latest updates on your projects. Learn more about Vercel for Git ↗︎
Name | Status | Preview | Comments | Updated (UTC) |
---|---|---|---|---|
zodiac-roles-app | ✅ Ready (Inspect) | Visit Preview | 💬 Add feedback | Aug 30, 2024 5:50pm |
zodiac-roles-docs | ✅ Ready (Inspect) | Visit Preview | 💬 Add feedback | Aug 30, 2024 5:50pm |
CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅
I have read the CLA Document and I hereby sign the CLA
Totals | |
---|---|
Change from base Build 10495136937: | 0.0% |
Covered Lines: | 665 |
Relevant Lines: | 666 |
@samepant you need to run yarn prepare
We still need to include the master copies for v1.0.0. Since the current PR is already large, we could merge it and include the master copies in a follow up PR
We still need to include the master copies for v1.0.0. Since the current PR is already large, we could merge it and include the master copies in a follow up PR
would probably make sense to add the v1 master copies over at https://github.com/gnosisguild/zodiac-modifier-roles-v1. (so that repo should be added to the migration backlog as well)
Description:
This Pull Request (PR) centers around the integration of the new Zodiac Core package within the entire
zodiac-modifier-roles
project. The primary goal is to replace the previous Gnosis Zodiac dependencies with the recently established Zodiac Core, thereby improving modularity, code maintainability, and reducing the dependencies across the system.Key Changes:
Migration to Zodiac Core:
@gnosis.pm/zodiac
have been replaced with@gnosis-guild/zodiac-core
.Core.sol
,PermissionLoader.sol
, and other related files to reflect these changes.@ethersproject
libraries withethers
in the relevant modules.Upgrade to Ethers v6:
ethers v6
due to an issue with the outdatedreservedKeywords
set.reservedKeywords
set was outdated, containing ethers v5 contract property names that no longer exist in v6 (e.g.,provider
) and missing some v6 property names (e.g.,target
).reservedKeywords
list, the solution now involves directly reading the list of built-in properties from theBaseContract
class in ethers v6.then
property, which is not a property ofBaseContract
but is kept in a specialpassProperties
list by ethers v6 to ensure it won't be passed through unintentionally.Task Enhancements:
deploy:mastercopies
: Deploys all mastercopies across networks.deploy:mastercopy --contract-version <version>
: Deploys a specific version of a mastercopy.verify:mastercopies
: Verifies all mastercopies across networks.verify:mastercopy --contract-version <version>
: Verifies a specific version of a mastercopy.Configuration Updates:
ethers-v6
.Dependency and Package Upgrades:
@gnosis-guild/zodiac-core
, eliminating the older Zodiac dependencies.Test Suite Refactoring:
Modifier.spec.ts
andIntegrity.spec.ts
to align with the refactored logic and changes introduced in the contracts.Solution:
The solution involved refactoring the project to utilize the Zodiac Core, which significantly enhances the modularity and reduces dependency issues, making the system more maintainable. Additionally, the upgrade to ethers v6 resolves previous issues with outdated reserved keywords by dynamically reading built-in properties from the
BaseContract
class. This approach also brings clarity to the codebase, facilitating easier future updates and debugging for developers.