From 056d34dcf93e49e635d3d93d976117c1b33e85b8 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:17:02 +0000 Subject: [PATCH 01/47] modules --- .gitmodules | 13 ------------- Makefile | 7 ++++++- lib/chainlink-brownie-contracts | 1 - lib/forge-std | 1 - lib/foundry-chainlink-toolkit | 1 - lib/solmate | 1 - 6 files changed, 6 insertions(+), 18 deletions(-) delete mode 160000 lib/chainlink-brownie-contracts delete mode 160000 lib/forge-std delete mode 160000 lib/foundry-chainlink-toolkit delete mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index cb79e36..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,13 +0,0 @@ -[submodule "lib/chainlink-brownie-contracts"] - path = lib/chainlink-brownie-contracts - url = https://github.com/smartcontractkit/chainlink-brownie-contracts -[submodule "lib/solmate"] - path = lib/solmate - url = https://github.com/rari-capital/solmate -[submodule "lib/forge-std"] - path = lib/forge-std - url = https://github.com/foundry-rs/forge-std -[submodule "lib/foundry-chainlink-toolkit"] - path = lib/foundry-chainlink-toolkit - url = https://github.com/smartcontractkit/foundry-chainlink-toolkit - branch = feature/integration-automation diff --git a/Makefile b/Makefile index a464f3a..440923b 100644 --- a/Makefile +++ b/Makefile @@ -8,7 +8,12 @@ all: clean remove install update build clean :; forge clean # Remove modules -remove :; rm -rf .gitmodules && rm -rf .git/modules/* && rm -rf lib && touch .gitmodules && git add . && git commit -m "modules" +remove :; if exist .gitmodules (del /F /Q .gitmodules) + if exist .git\modules\ (for /D %%i in (.git\modules\*) do rmdir /S /Q "%%i") + if exist lib (rmdir /S /Q lib) + type nul > .gitmodules + git add . + git commit -m "modules" install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts deleted file mode 160000 index 1d301b4..0000000 --- a/lib/chainlink-brownie-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 1d301b43d374a23524eca878ffc4f9b1cf8a93d7 diff --git a/lib/forge-std b/lib/forge-std deleted file mode 160000 index 8d93b52..0000000 --- a/lib/forge-std +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 8d93b5273ca94b1c50b055ffc0e1b8b0a3c03d78 diff --git a/lib/foundry-chainlink-toolkit b/lib/foundry-chainlink-toolkit deleted file mode 160000 index caa68b1..0000000 --- a/lib/foundry-chainlink-toolkit +++ /dev/null @@ -1 +0,0 @@ -Subproject commit caa68b15a67340b13f4d1a2147a7c454b3443744 diff --git a/lib/solmate b/lib/solmate deleted file mode 160000 index 9cf1428..0000000 --- a/lib/solmate +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 9cf1428245074e39090dceacb0c28b1f684f584c From a2682c9cd72a8a6f270d0821befb6064d9034a53 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:17:32 +0000 Subject: [PATCH 02/47] forge install: chainlink-brownie-contracts 1.2.0 --- .gitmodules | 3 +++ lib/chainlink-brownie-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/chainlink-brownie-contracts diff --git a/.gitmodules b/.gitmodules index e69de29..ee15de6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/chainlink-brownie-contracts"] + path = lib/chainlink-brownie-contracts + url = https://github.com/smartcontractkit/chainlink-brownie-contracts diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts new file mode 160000 index 0000000..27f3fc5 --- /dev/null +++ b/lib/chainlink-brownie-contracts @@ -0,0 +1 @@ +Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 From bd484b6e7891f4d68e5edcdf62b9d2afcd615042 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:17:37 +0000 Subject: [PATCH 03/47] forge install: solmate --- .gitmodules | 3 +++ lib/solmate | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index ee15de6..0220d9d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "lib/chainlink-brownie-contracts"] path = lib/chainlink-brownie-contracts url = https://github.com/smartcontractkit/chainlink-brownie-contracts +[submodule "lib/solmate"] + path = lib/solmate + url = https://github.com/rari-capital/solmate diff --git a/lib/solmate b/lib/solmate new file mode 160000 index 0000000..4b47a19 --- /dev/null +++ b/lib/solmate @@ -0,0 +1 @@ +Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From 91c7380c5ed533d1ada84a9cc58469da3fa73e3b Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:17:43 +0000 Subject: [PATCH 04/47] forge install: forge-std v1.7.3 --- .gitmodules | 3 +++ lib/forge-std | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/forge-std diff --git a/.gitmodules b/.gitmodules index 0220d9d..799f89b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "lib/solmate"] path = lib/solmate url = https://github.com/rari-capital/solmate +[submodule "lib/forge-std"] + path = lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/lib/forge-std b/lib/forge-std new file mode 160000 index 0000000..2f11269 --- /dev/null +++ b/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 From d89a66b9626351526c5cc93bcbb30dc2f164f26b Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:20:31 +0000 Subject: [PATCH 05/47] Create Makefile.windows --- Makefile.windows | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 Makefile.windows diff --git a/Makefile.windows b/Makefile.windows new file mode 100644 index 0000000..440923b --- /dev/null +++ b/Makefile.windows @@ -0,0 +1,46 @@ +-include .env + +.PHONY: all test clean deploy-anvil + +all: clean remove install update build + +# Clean the repo +clean :; forge clean + +# Remove modules +remove :; if exist .gitmodules (del /F /Q .gitmodules) + if exist .git\modules\ (for /D %%i in (.git\modules\*) do rmdir /S /Q "%%i") + if exist lib (rmdir /S /Q lib) + type nul > .gitmodules + git add . + git commit -m "modules" + +install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std + +# Update Dependencies +update:; forge update + +build:; forge build + +test :; forge test + +snapshot :; forge snapshot + +slither :; slither ./src + +format :; prettier --write src/**/*.sol && prettier --write src/*.sol + +# solhint should be installed globally +lint :; solhint src/**/*.sol && solhint src/*.sol + +anvil :; anvil -m 'test test test test test test test test test test test junk' + +# use the "@" to hide the command from your shell +deploy-sepolia :; @forge script script/${contract}.s.sol:Deploy${contract} --rpc-url ${SEPOLIA_RPC_URL} --private-key ${PRIVATE_KEY} --broadcast --verify --etherscan-api-key ${ETHERSCAN_API_KEY} -vvvv + +# This is the private key of account from the mnemonic from the "make anvil" command +deploy-anvil :; @forge script script/${contract}.s.sol:Deploy${contract} --rpc-url http://localhost:8545 --private-key 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 --broadcast + +deploy-all :; make deploy-${network} contract=APIConsumer && make deploy-${network} contract=KeepersCounter && make deploy-${network} contract=PriceFeedConsumer && make deploy-${network} contract=VRFConsumerV2 + +-include ${FCT_PLUGIN_PATH}/makefile-external From 64527a5972bf1fae397587af329381bb189c2cf5 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:46:17 +0000 Subject: [PATCH 06/47] modules --- .env.example | 25 ------------------- .gitmodules | 9 ------- {src => SampleContract}/APIConsumer.sol | 0 {src => SampleContract}/KeepersCounter.sol | 0 {src => SampleContract}/PriceFeedConsumer.sol | 0 {src => SampleContract}/VRFConsumerV2.sol | 0 .../script}/APIConsumer.s.sol | 0 .../script}/HelperConfig.sol | 0 .../script}/KeepersCounter.s.sol | 0 .../script}/PriceFeedConsumer.s.sol | 0 .../script}/VRFConsumerV2.s.sol | 0 .../test/APIConsumer.t.sol | 0 .../test/KeepersCounter.t.sol | 0 .../test/PriceFeedConsumer.t.sol | 0 .../test/VRFConsumerV2.t.sol | 0 .../test/mocks/LinkToken.sol | 0 .../test/mocks/MockOracle.sol | 0 .../test/mocks/MockV3Aggregator.sol | 0 .../test/mocks/MockVRFCoordinatorV2.sol | 0 {src => SampleContract}/test/utils/Cheats.sol | 0 lib/chainlink-brownie-contracts | 1 - lib/forge-std | 1 - lib/solmate | 1 - 23 files changed, 37 deletions(-) delete mode 100644 .env.example rename {src => SampleContract}/APIConsumer.sol (100%) rename {src => SampleContract}/KeepersCounter.sol (100%) rename {src => SampleContract}/PriceFeedConsumer.sol (100%) rename {src => SampleContract}/VRFConsumerV2.sol (100%) rename {script => SampleContract/script}/APIConsumer.s.sol (100%) rename {script => SampleContract/script}/HelperConfig.sol (100%) rename {script => SampleContract/script}/KeepersCounter.s.sol (100%) rename {script => SampleContract/script}/PriceFeedConsumer.s.sol (100%) rename {script => SampleContract/script}/VRFConsumerV2.s.sol (100%) rename {src => SampleContract}/test/APIConsumer.t.sol (100%) rename {src => SampleContract}/test/KeepersCounter.t.sol (100%) rename {src => SampleContract}/test/PriceFeedConsumer.t.sol (100%) rename {src => SampleContract}/test/VRFConsumerV2.t.sol (100%) rename {src => SampleContract}/test/mocks/LinkToken.sol (100%) rename {src => SampleContract}/test/mocks/MockOracle.sol (100%) rename {src => SampleContract}/test/mocks/MockV3Aggregator.sol (100%) rename {src => SampleContract}/test/mocks/MockVRFCoordinatorV2.sol (100%) rename {src => SampleContract}/test/utils/Cheats.sol (100%) delete mode 160000 lib/chainlink-brownie-contracts delete mode 160000 lib/forge-std delete mode 160000 lib/solmate diff --git a/.env.example b/.env.example deleted file mode 100644 index 6a3c37b..0000000 --- a/.env.example +++ /dev/null @@ -1,25 +0,0 @@ -SEPOLIA_RPC_URL=asdfasdf -ETHERSCAN_API_KEY=asdfasfs - -# Foundry-Chainlink Toolkit -FCT_PLUGIN_PATH=lib/foundry-chainlink-toolkit - -# Postgres Properties -POSTGRES_USER=chainlink -POSTGRES_PASSWORD=password123456789 -PG_MAX_CONNECTIONS=500 - -# Deploy Properties -PRIVATE_KEY=0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 -RPC_URL=http://localhost:8545 -CHAINLINK_CONTAINER_NAME=foundry-chainlink-node -COMPOSE_PROJECT_NAME=foundry-chainlink-plugin -# Chainlink Common Properties -ROOT=/chainlink -ETH_CHAIN_ID=1337 -ETH_URL=ws://host.docker.internal:8545 -ETH_HTTP_URL=http://host.docker.internal:8545 -CHAINLINK_TLS_PORT=0 -LOG_LEVEL=debug -SECURE_COOKIES=false -ALLOW_ORIGINS=* diff --git a/.gitmodules b/.gitmodules index 799f89b..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,9 +0,0 @@ -[submodule "lib/chainlink-brownie-contracts"] - path = lib/chainlink-brownie-contracts - url = https://github.com/smartcontractkit/chainlink-brownie-contracts -[submodule "lib/solmate"] - path = lib/solmate - url = https://github.com/rari-capital/solmate -[submodule "lib/forge-std"] - path = lib/forge-std - url = https://github.com/foundry-rs/forge-std diff --git a/src/APIConsumer.sol b/SampleContract/APIConsumer.sol similarity index 100% rename from src/APIConsumer.sol rename to SampleContract/APIConsumer.sol diff --git a/src/KeepersCounter.sol b/SampleContract/KeepersCounter.sol similarity index 100% rename from src/KeepersCounter.sol rename to SampleContract/KeepersCounter.sol diff --git a/src/PriceFeedConsumer.sol b/SampleContract/PriceFeedConsumer.sol similarity index 100% rename from src/PriceFeedConsumer.sol rename to SampleContract/PriceFeedConsumer.sol diff --git a/src/VRFConsumerV2.sol b/SampleContract/VRFConsumerV2.sol similarity index 100% rename from src/VRFConsumerV2.sol rename to SampleContract/VRFConsumerV2.sol diff --git a/script/APIConsumer.s.sol b/SampleContract/script/APIConsumer.s.sol similarity index 100% rename from script/APIConsumer.s.sol rename to SampleContract/script/APIConsumer.s.sol diff --git a/script/HelperConfig.sol b/SampleContract/script/HelperConfig.sol similarity index 100% rename from script/HelperConfig.sol rename to SampleContract/script/HelperConfig.sol diff --git a/script/KeepersCounter.s.sol b/SampleContract/script/KeepersCounter.s.sol similarity index 100% rename from script/KeepersCounter.s.sol rename to SampleContract/script/KeepersCounter.s.sol diff --git a/script/PriceFeedConsumer.s.sol b/SampleContract/script/PriceFeedConsumer.s.sol similarity index 100% rename from script/PriceFeedConsumer.s.sol rename to SampleContract/script/PriceFeedConsumer.s.sol diff --git a/script/VRFConsumerV2.s.sol b/SampleContract/script/VRFConsumerV2.s.sol similarity index 100% rename from script/VRFConsumerV2.s.sol rename to SampleContract/script/VRFConsumerV2.s.sol diff --git a/src/test/APIConsumer.t.sol b/SampleContract/test/APIConsumer.t.sol similarity index 100% rename from src/test/APIConsumer.t.sol rename to SampleContract/test/APIConsumer.t.sol diff --git a/src/test/KeepersCounter.t.sol b/SampleContract/test/KeepersCounter.t.sol similarity index 100% rename from src/test/KeepersCounter.t.sol rename to SampleContract/test/KeepersCounter.t.sol diff --git a/src/test/PriceFeedConsumer.t.sol b/SampleContract/test/PriceFeedConsumer.t.sol similarity index 100% rename from src/test/PriceFeedConsumer.t.sol rename to SampleContract/test/PriceFeedConsumer.t.sol diff --git a/src/test/VRFConsumerV2.t.sol b/SampleContract/test/VRFConsumerV2.t.sol similarity index 100% rename from src/test/VRFConsumerV2.t.sol rename to SampleContract/test/VRFConsumerV2.t.sol diff --git a/src/test/mocks/LinkToken.sol b/SampleContract/test/mocks/LinkToken.sol similarity index 100% rename from src/test/mocks/LinkToken.sol rename to SampleContract/test/mocks/LinkToken.sol diff --git a/src/test/mocks/MockOracle.sol b/SampleContract/test/mocks/MockOracle.sol similarity index 100% rename from src/test/mocks/MockOracle.sol rename to SampleContract/test/mocks/MockOracle.sol diff --git a/src/test/mocks/MockV3Aggregator.sol b/SampleContract/test/mocks/MockV3Aggregator.sol similarity index 100% rename from src/test/mocks/MockV3Aggregator.sol rename to SampleContract/test/mocks/MockV3Aggregator.sol diff --git a/src/test/mocks/MockVRFCoordinatorV2.sol b/SampleContract/test/mocks/MockVRFCoordinatorV2.sol similarity index 100% rename from src/test/mocks/MockVRFCoordinatorV2.sol rename to SampleContract/test/mocks/MockVRFCoordinatorV2.sol diff --git a/src/test/utils/Cheats.sol b/SampleContract/test/utils/Cheats.sol similarity index 100% rename from src/test/utils/Cheats.sol rename to SampleContract/test/utils/Cheats.sol diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts deleted file mode 160000 index 27f3fc5..0000000 --- a/lib/chainlink-brownie-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 diff --git a/lib/forge-std b/lib/forge-std deleted file mode 160000 index 2f11269..0000000 --- a/lib/forge-std +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 diff --git a/lib/solmate b/lib/solmate deleted file mode 160000 index 4b47a19..0000000 --- a/lib/solmate +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From 0455cb3577b55647813c5ec29f92af31104a80d2 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:46:46 +0000 Subject: [PATCH 07/47] forge install: chainlink-brownie-contracts 1.2.0 --- .gitmodules | 3 +++ lib/chainlink-brownie-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/chainlink-brownie-contracts diff --git a/.gitmodules b/.gitmodules index e69de29..ee15de6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/chainlink-brownie-contracts"] + path = lib/chainlink-brownie-contracts + url = https://github.com/smartcontractkit/chainlink-brownie-contracts diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts new file mode 160000 index 0000000..27f3fc5 --- /dev/null +++ b/lib/chainlink-brownie-contracts @@ -0,0 +1 @@ +Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 From 6a9cd83f74be61c52be149915daa29f145ac8cd3 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:46:51 +0000 Subject: [PATCH 08/47] forge install: solmate --- .gitmodules | 3 +++ lib/solmate | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index ee15de6..0220d9d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "lib/chainlink-brownie-contracts"] path = lib/chainlink-brownie-contracts url = https://github.com/smartcontractkit/chainlink-brownie-contracts +[submodule "lib/solmate"] + path = lib/solmate + url = https://github.com/rari-capital/solmate diff --git a/lib/solmate b/lib/solmate new file mode 160000 index 0000000..4b47a19 --- /dev/null +++ b/lib/solmate @@ -0,0 +1 @@ +Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From 3f70a0b6b3d24ba302f36c72453c80b7dd73b957 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:46:58 +0000 Subject: [PATCH 09/47] forge install: forge-std v1.7.3 --- .gitmodules | 3 +++ lib/forge-std | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/forge-std diff --git a/.gitmodules b/.gitmodules index 0220d9d..799f89b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "lib/solmate"] path = lib/solmate url = https://github.com/rari-capital/solmate +[submodule "lib/forge-std"] + path = lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/lib/forge-std b/lib/forge-std new file mode 160000 index 0000000..2f11269 --- /dev/null +++ b/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 From 6a78e4d9d43195d7ce83a3647ec1dd98de3922c7 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:48:29 +0000 Subject: [PATCH 10/47] modules --- .gitmodules | 9 --------- Makefile | 2 +- lib/chainlink-brownie-contracts | 1 - lib/forge-std | 1 - lib/solmate | 1 - 5 files changed, 1 insertion(+), 13 deletions(-) delete mode 160000 lib/chainlink-brownie-contracts delete mode 160000 lib/forge-std delete mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index 799f89b..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,9 +0,0 @@ -[submodule "lib/chainlink-brownie-contracts"] - path = lib/chainlink-brownie-contracts - url = https://github.com/smartcontractkit/chainlink-brownie-contracts -[submodule "lib/solmate"] - path = lib/solmate - url = https://github.com/rari-capital/solmate -[submodule "lib/forge-std"] - path = lib/forge-std - url = https://github.com/foundry-rs/forge-std diff --git a/Makefile b/Makefile index 440923b..5109c48 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ remove :; if exist .gitmodules (del /F /Q .gitmodules) git add . git commit -m "modules" -install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std +install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install 0xPolygonID/onchain-issuer-integration-demo # Update Dependencies update:; forge update diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts deleted file mode 160000 index 27f3fc5..0000000 --- a/lib/chainlink-brownie-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 diff --git a/lib/forge-std b/lib/forge-std deleted file mode 160000 index 2f11269..0000000 --- a/lib/forge-std +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 diff --git a/lib/solmate b/lib/solmate deleted file mode 160000 index 4b47a19..0000000 --- a/lib/solmate +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From 6f6a4e6b16782e6635119bd961b090614bc69625 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:48:59 +0000 Subject: [PATCH 11/47] forge install: chainlink-brownie-contracts 1.2.0 --- .gitmodules | 3 +++ lib/chainlink-brownie-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/chainlink-brownie-contracts diff --git a/.gitmodules b/.gitmodules index e69de29..ee15de6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/chainlink-brownie-contracts"] + path = lib/chainlink-brownie-contracts + url = https://github.com/smartcontractkit/chainlink-brownie-contracts diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts new file mode 160000 index 0000000..27f3fc5 --- /dev/null +++ b/lib/chainlink-brownie-contracts @@ -0,0 +1 @@ +Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 From e7dbcbe6de467242585f32610e02052d310f48d5 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:49:04 +0000 Subject: [PATCH 12/47] forge install: solmate --- .gitmodules | 3 +++ lib/solmate | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index ee15de6..0220d9d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "lib/chainlink-brownie-contracts"] path = lib/chainlink-brownie-contracts url = https://github.com/smartcontractkit/chainlink-brownie-contracts +[submodule "lib/solmate"] + path = lib/solmate + url = https://github.com/rari-capital/solmate diff --git a/lib/solmate b/lib/solmate new file mode 160000 index 0000000..4b47a19 --- /dev/null +++ b/lib/solmate @@ -0,0 +1 @@ +Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From fba868e2c63bd9fb6eff6a359939bcd82e42d4fa Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:49:11 +0000 Subject: [PATCH 13/47] forge install: forge-std v1.7.3 --- .gitmodules | 3 +++ lib/forge-std | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/forge-std diff --git a/.gitmodules b/.gitmodules index 0220d9d..799f89b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "lib/solmate"] path = lib/solmate url = https://github.com/rari-capital/solmate +[submodule "lib/forge-std"] + path = lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/lib/forge-std b/lib/forge-std new file mode 160000 index 0000000..2f11269 --- /dev/null +++ b/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 From 210f6639cd7eabaed16d858fb72988782696fc80 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 13:49:15 +0000 Subject: [PATCH 14/47] forge install: onchain-issuer-integration-demo --- .gitmodules | 3 +++ lib/onchain-issuer-integration-demo | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/onchain-issuer-integration-demo diff --git a/.gitmodules b/.gitmodules index 799f89b..60c9127 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "lib/forge-std"] path = lib/forge-std url = https://github.com/foundry-rs/forge-std +[submodule "lib/onchain-issuer-integration-demo"] + path = lib/onchain-issuer-integration-demo + url = https://github.com/0xPolygonID/onchain-issuer-integration-demo diff --git a/lib/onchain-issuer-integration-demo b/lib/onchain-issuer-integration-demo new file mode 160000 index 0000000..d5c0626 --- /dev/null +++ b/lib/onchain-issuer-integration-demo @@ -0,0 +1 @@ +Subproject commit d5c0626d482519e53d163a654018e68eb86209de From f7ab49e1de79ead1862f0f0dd04aff7af26fdec8 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:18:56 +0000 Subject: [PATCH 15/47] modules --- .gitmodules | 12 ------------ Makefile | 2 +- lib/chainlink-brownie-contracts | 1 - lib/forge-std | 1 - lib/onchain-issuer-integration-demo | 1 - lib/solmate | 1 - 6 files changed, 1 insertion(+), 17 deletions(-) delete mode 160000 lib/chainlink-brownie-contracts delete mode 160000 lib/forge-std delete mode 160000 lib/onchain-issuer-integration-demo delete mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index 60c9127..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,12 +0,0 @@ -[submodule "lib/chainlink-brownie-contracts"] - path = lib/chainlink-brownie-contracts - url = https://github.com/smartcontractkit/chainlink-brownie-contracts -[submodule "lib/solmate"] - path = lib/solmate - url = https://github.com/rari-capital/solmate -[submodule "lib/forge-std"] - path = lib/forge-std - url = https://github.com/foundry-rs/forge-std -[submodule "lib/onchain-issuer-integration-demo"] - path = lib/onchain-issuer-integration-demo - url = https://github.com/0xPolygonID/onchain-issuer-integration-demo diff --git a/Makefile b/Makefile index 5109c48..5967c38 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ remove :; if exist .gitmodules (del /F /Q .gitmodules) git add . git commit -m "modules" -install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install 0xPolygonID/onchain-issuer-integration-demo +install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install iden3/contracts/tree/master/contracts # Update Dependencies update:; forge update diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts deleted file mode 160000 index 27f3fc5..0000000 --- a/lib/chainlink-brownie-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 diff --git a/lib/forge-std b/lib/forge-std deleted file mode 160000 index 2f11269..0000000 --- a/lib/forge-std +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 diff --git a/lib/onchain-issuer-integration-demo b/lib/onchain-issuer-integration-demo deleted file mode 160000 index d5c0626..0000000 --- a/lib/onchain-issuer-integration-demo +++ /dev/null @@ -1 +0,0 @@ -Subproject commit d5c0626d482519e53d163a654018e68eb86209de diff --git a/lib/solmate b/lib/solmate deleted file mode 160000 index 4b47a19..0000000 --- a/lib/solmate +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From fdf3bccc03420e2d1d3f1150e56bab90902633ee Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:19:28 +0000 Subject: [PATCH 16/47] forge install: chainlink-brownie-contracts 1.2.0 --- .gitmodules | 3 +++ lib/chainlink-brownie-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/chainlink-brownie-contracts diff --git a/.gitmodules b/.gitmodules index e69de29..ee15de6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/chainlink-brownie-contracts"] + path = lib/chainlink-brownie-contracts + url = https://github.com/smartcontractkit/chainlink-brownie-contracts diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts new file mode 160000 index 0000000..27f3fc5 --- /dev/null +++ b/lib/chainlink-brownie-contracts @@ -0,0 +1 @@ +Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 From dade38e5cea74d1b5dec4ab3af10a838833658fd Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:19:34 +0000 Subject: [PATCH 17/47] forge install: solmate --- .gitmodules | 3 +++ lib/solmate | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index ee15de6..0220d9d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "lib/chainlink-brownie-contracts"] path = lib/chainlink-brownie-contracts url = https://github.com/smartcontractkit/chainlink-brownie-contracts +[submodule "lib/solmate"] + path = lib/solmate + url = https://github.com/rari-capital/solmate diff --git a/lib/solmate b/lib/solmate new file mode 160000 index 0000000..4b47a19 --- /dev/null +++ b/lib/solmate @@ -0,0 +1 @@ +Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From 862be37c23a8f39c01d8398f3cd51a68bf7c07f2 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:19:40 +0000 Subject: [PATCH 18/47] forge install: forge-std v1.7.3 --- .gitmodules | 3 +++ lib/forge-std | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/forge-std diff --git a/.gitmodules b/.gitmodules index 0220d9d..799f89b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "lib/solmate"] path = lib/solmate url = https://github.com/rari-capital/solmate +[submodule "lib/forge-std"] + path = lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/lib/forge-std b/lib/forge-std new file mode 160000 index 0000000..2f11269 --- /dev/null +++ b/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 From 1c6d9dcaca983abc971d089d62f2145f0d2e1b03 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:25:12 +0000 Subject: [PATCH 19/47] modules --- .gitmodules | 9 --------- Makefile | 2 +- lib/chainlink-brownie-contracts | 1 - lib/forge-std | 1 - lib/solmate | 1 - 5 files changed, 1 insertion(+), 13 deletions(-) delete mode 160000 lib/chainlink-brownie-contracts delete mode 160000 lib/forge-std delete mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index 799f89b..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,9 +0,0 @@ -[submodule "lib/chainlink-brownie-contracts"] - path = lib/chainlink-brownie-contracts - url = https://github.com/smartcontractkit/chainlink-brownie-contracts -[submodule "lib/solmate"] - path = lib/solmate - url = https://github.com/rari-capital/solmate -[submodule "lib/forge-std"] - path = lib/forge-std - url = https://github.com/foundry-rs/forge-std diff --git a/Makefile b/Makefile index 5967c38..42b7ea9 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ remove :; if exist .gitmodules (del /F /Q .gitmodules) git add . git commit -m "modules" -install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install iden3/contracts/tree/master/contracts +install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install iden3/contracts # Update Dependencies update:; forge update diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts deleted file mode 160000 index 27f3fc5..0000000 --- a/lib/chainlink-brownie-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 diff --git a/lib/forge-std b/lib/forge-std deleted file mode 160000 index 2f11269..0000000 --- a/lib/forge-std +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 diff --git a/lib/solmate b/lib/solmate deleted file mode 160000 index 4b47a19..0000000 --- a/lib/solmate +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From 0852adc58ada5d0c8388c9272b76117287f5a803 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:25:42 +0000 Subject: [PATCH 20/47] forge install: chainlink-brownie-contracts 1.2.0 --- .gitmodules | 3 +++ lib/chainlink-brownie-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/chainlink-brownie-contracts diff --git a/.gitmodules b/.gitmodules index e69de29..ee15de6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/chainlink-brownie-contracts"] + path = lib/chainlink-brownie-contracts + url = https://github.com/smartcontractkit/chainlink-brownie-contracts diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts new file mode 160000 index 0000000..27f3fc5 --- /dev/null +++ b/lib/chainlink-brownie-contracts @@ -0,0 +1 @@ +Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 From 45a8a34301621c09c145792c96dfaed031967ccf Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:25:48 +0000 Subject: [PATCH 21/47] forge install: solmate --- .gitmodules | 3 +++ lib/solmate | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index ee15de6..0220d9d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "lib/chainlink-brownie-contracts"] path = lib/chainlink-brownie-contracts url = https://github.com/smartcontractkit/chainlink-brownie-contracts +[submodule "lib/solmate"] + path = lib/solmate + url = https://github.com/rari-capital/solmate diff --git a/lib/solmate b/lib/solmate new file mode 160000 index 0000000..4b47a19 --- /dev/null +++ b/lib/solmate @@ -0,0 +1 @@ +Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From 4bb6e439c0cec1b0b22f69b08661d3f3dd351f35 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:25:54 +0000 Subject: [PATCH 22/47] forge install: forge-std v1.7.3 --- .gitmodules | 3 +++ lib/forge-std | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/forge-std diff --git a/.gitmodules b/.gitmodules index 0220d9d..799f89b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "lib/solmate"] path = lib/solmate url = https://github.com/rari-capital/solmate +[submodule "lib/forge-std"] + path = lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/lib/forge-std b/lib/forge-std new file mode 160000 index 0000000..2f11269 --- /dev/null +++ b/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 From 3750eab4d217be9d5edf46248f627b13589c3b98 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:26:02 +0000 Subject: [PATCH 23/47] forge install: contracts v0.2.0 --- .gitmodules | 3 +++ lib/contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/contracts diff --git a/.gitmodules b/.gitmodules index 799f89b..2c5182d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "lib/forge-std"] path = lib/forge-std url = https://github.com/foundry-rs/forge-std +[submodule "lib/contracts"] + path = lib/contracts + url = https://github.com/iden3/contracts diff --git a/lib/contracts b/lib/contracts new file mode 160000 index 0000000..986ca27 --- /dev/null +++ b/lib/contracts @@ -0,0 +1 @@ +Subproject commit 986ca276bb4dc4549d2a7b499c5764727697a4c0 From a0d1bb19a8bd6275a4c7c713fafa04e3921c8e3c Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:38:25 +0000 Subject: [PATCH 24/47] modules --- .gitmodules | 12 ---- Makefile | 2 +- lib/chainlink-brownie-contracts | 1 - lib/contracts | 1 - lib/forge-std | 1 - lib/solmate | 1 - remappings.txt | 1 + src/test/Identity.sol | 101 ++++++++++++++++++++++++++++++++ 8 files changed, 103 insertions(+), 17 deletions(-) delete mode 160000 lib/chainlink-brownie-contracts delete mode 160000 lib/contracts delete mode 160000 lib/forge-std delete mode 160000 lib/solmate create mode 100644 src/test/Identity.sol diff --git a/.gitmodules b/.gitmodules index 2c5182d..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,12 +0,0 @@ -[submodule "lib/chainlink-brownie-contracts"] - path = lib/chainlink-brownie-contracts - url = https://github.com/smartcontractkit/chainlink-brownie-contracts -[submodule "lib/solmate"] - path = lib/solmate - url = https://github.com/rari-capital/solmate -[submodule "lib/forge-std"] - path = lib/forge-std - url = https://github.com/foundry-rs/forge-std -[submodule "lib/contracts"] - path = lib/contracts - url = https://github.com/iden3/contracts diff --git a/Makefile b/Makefile index 42b7ea9..117f72e 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ remove :; if exist .gitmodules (del /F /Q .gitmodules) git add . git commit -m "modules" -install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install iden3/contracts +install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install iden3/contracts && forge install OpenZeppelin/openzeppelin-contracts # Update Dependencies update:; forge update diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts deleted file mode 160000 index 27f3fc5..0000000 --- a/lib/chainlink-brownie-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 diff --git a/lib/contracts b/lib/contracts deleted file mode 160000 index 986ca27..0000000 --- a/lib/contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 986ca276bb4dc4549d2a7b499c5764727697a4c0 diff --git a/lib/forge-std b/lib/forge-std deleted file mode 160000 index 2f11269..0000000 --- a/lib/forge-std +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 diff --git a/lib/solmate b/lib/solmate deleted file mode 160000 index 4b47a19..0000000 --- a/lib/solmate +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 diff --git a/remappings.txt b/remappings.txt index c8dffc5..f5fc675 100644 --- a/remappings.txt +++ b/remappings.txt @@ -2,4 +2,5 @@ @std=lib/forge-std/src/ @clones=lib/clones-with-immutable-args/src/ @chainlink/=lib/chainlink-brownie-contracts/ +@contracts/=lib/contracts/ forge-std/=lib/forge-std/src/ \ No newline at end of file diff --git a/src/test/Identity.sol b/src/test/Identity.sol new file mode 100644 index 0000000..051b925 --- /dev/null +++ b/src/test/Identity.sol @@ -0,0 +1,101 @@ +// SPDX-License-Identifier: GPL-3.0 +pragma solidity > 0.8.16; + +import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; +import {IState} from "../interfaces/IState.sol"; +import {ClaimBuilder} from "../lib/ClaimBuilder.sol"; +import {IdentityLib} from "../lib/IdentityLib.sol"; +import {IdentityBase} from "../lib/IdentityBase.sol"; + +// /** +// * @dev Contract managing onchain identity +// */ +contract IdentityExample is IdentityBase, OwnableUpgradeable { + using IdentityLib for IdentityLib.Data; + + // This empty reserved space is put in place to allow future versions + // of the State contract to inherit from other contracts without a risk of + // breaking the storage layout. This is necessary because the parent contracts in the + // future may introduce some storage variables, which are placed before the State + // contract's storage variables. + // (see https://docs.openzeppelin.com/upgrades-plugins/1.x/writing-upgradeable#storage-gaps) + // slither-disable-next-line shadowing-state + // slither-disable-next-line unused-state + uint256[500] private __gap; + + function initialize(address _stateContractAddr) public override initializer { + super.initialize(_stateContractAddr); + __Ownable_init(); + } + + function addClaimAndTransit(uint256[8] calldata claim) public onlyOwner { + addClaim(claim); + transitState(); + } + + function addClaimHashAndTransit(uint256 hashIndex, uint256 hashValue) public onlyOwner { + addClaimHash(hashIndex, hashValue); + transitState(); + } + + function revokeClaimAndTransit(uint64 revocationNonce) public onlyOwner { + revokeClaim(revocationNonce); + transitState(); + } + + /** + * @dev Add claim + * @param claim - claim data + */ + function addClaim(uint256[8] calldata claim) public virtual onlyOwner { + identity.addClaim(claim); + } + + /** + * @dev Add claim hash + * @param hashIndex - hash of claim index part + * @param hashValue - hash of claim value part + */ + function addClaimHash(uint256 hashIndex, uint256 hashValue) public virtual onlyOwner { + identity.addClaimHash(hashIndex, hashValue); + } + + /** + * @dev Revoke claim using it's revocationNonce + * @param revocationNonce - revocation nonce + */ + function revokeClaim(uint64 revocationNonce) public virtual onlyOwner { + identity.revokeClaim(revocationNonce); + } + + /** + * @dev Make state transition + */ + function transitState() public virtual onlyOwner { + identity.transitState(); + } + + /** + * @dev Calculate IdentityState + * @return IdentityState + */ + function calcIdentityState() public view virtual returns (uint256) { + return identity.calcIdentityState(); + } + + function newClaimData() public pure virtual returns (ClaimBuilder.ClaimData memory) { + ClaimBuilder.ClaimData memory claimData; + return claimData; + } + + /** + * @dev Builds claim + * @param claimData - claim data + * @return binary claim + */ + function buildClaim( + ClaimBuilder.ClaimData calldata claimData + ) public pure virtual returns (uint256[8] memory) { + return ClaimBuilder.build(claimData); + } +} \ No newline at end of file From b81183e609cfdf8d794f8b37a8d83af11943fb3b Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:38:55 +0000 Subject: [PATCH 25/47] forge install: chainlink-brownie-contracts 1.2.0 --- .gitmodules | 3 +++ lib/chainlink-brownie-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/chainlink-brownie-contracts diff --git a/.gitmodules b/.gitmodules index e69de29..ee15de6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/chainlink-brownie-contracts"] + path = lib/chainlink-brownie-contracts + url = https://github.com/smartcontractkit/chainlink-brownie-contracts diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts new file mode 160000 index 0000000..27f3fc5 --- /dev/null +++ b/lib/chainlink-brownie-contracts @@ -0,0 +1 @@ +Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 From 6ae5edd1494db03e367f765abf3a8d45ac38579e Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:39:00 +0000 Subject: [PATCH 26/47] forge install: solmate --- .gitmodules | 3 +++ lib/solmate | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index ee15de6..0220d9d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "lib/chainlink-brownie-contracts"] path = lib/chainlink-brownie-contracts url = https://github.com/smartcontractkit/chainlink-brownie-contracts +[submodule "lib/solmate"] + path = lib/solmate + url = https://github.com/rari-capital/solmate diff --git a/lib/solmate b/lib/solmate new file mode 160000 index 0000000..4b47a19 --- /dev/null +++ b/lib/solmate @@ -0,0 +1 @@ +Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From a9a44bdec616cee2b36cb2df38a9abfea29743d8 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:39:06 +0000 Subject: [PATCH 27/47] forge install: forge-std v1.7.3 --- .gitmodules | 3 +++ lib/forge-std | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/forge-std diff --git a/.gitmodules b/.gitmodules index 0220d9d..799f89b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "lib/solmate"] path = lib/solmate url = https://github.com/rari-capital/solmate +[submodule "lib/forge-std"] + path = lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/lib/forge-std b/lib/forge-std new file mode 160000 index 0000000..2f11269 --- /dev/null +++ b/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 From acec3e899ef5a91f37507f630f977b76b30bc437 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:39:13 +0000 Subject: [PATCH 28/47] forge install: contracts v0.2.0 --- .gitmodules | 3 +++ lib/contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/contracts diff --git a/.gitmodules b/.gitmodules index 799f89b..2c5182d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "lib/forge-std"] path = lib/forge-std url = https://github.com/foundry-rs/forge-std +[submodule "lib/contracts"] + path = lib/contracts + url = https://github.com/iden3/contracts diff --git a/lib/contracts b/lib/contracts new file mode 160000 index 0000000..986ca27 --- /dev/null +++ b/lib/contracts @@ -0,0 +1 @@ +Subproject commit 986ca276bb4dc4549d2a7b499c5764727697a4c0 From 8e059ee4ba5c58aea8ededbd2e99c04ea3eb067e Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:39:43 +0000 Subject: [PATCH 29/47] forge install: openzeppelin-contracts v5.0.0 --- .gitmodules | 3 +++ lib/openzeppelin-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/openzeppelin-contracts diff --git a/.gitmodules b/.gitmodules index 2c5182d..08678a5 100644 --- a/.gitmodules +++ b/.gitmodules @@ -10,3 +10,6 @@ [submodule "lib/contracts"] path = lib/contracts url = https://github.com/iden3/contracts +[submodule "lib/openzeppelin-contracts"] + path = lib/openzeppelin-contracts + url = https://github.com/OpenZeppelin/openzeppelin-contracts diff --git a/lib/openzeppelin-contracts b/lib/openzeppelin-contracts new file mode 160000 index 0000000..932fddf --- /dev/null +++ b/lib/openzeppelin-contracts @@ -0,0 +1 @@ +Subproject commit 932fddf69a699a9a80fd2396fd1a2ab91cdda123 From a53183cd39eef6893f463240e8f89b8c0b3aab0f Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:48:12 +0000 Subject: [PATCH 30/47] modules --- .gitmodules | 15 --------------- Makefile | 2 +- lib/chainlink-brownie-contracts | 1 - lib/contracts | 1 - lib/forge-std | 1 - lib/openzeppelin-contracts | 1 - lib/solmate | 1 - remappings.txt | 3 ++- 8 files changed, 3 insertions(+), 22 deletions(-) delete mode 160000 lib/chainlink-brownie-contracts delete mode 160000 lib/contracts delete mode 160000 lib/forge-std delete mode 160000 lib/openzeppelin-contracts delete mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index 08678a5..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,15 +0,0 @@ -[submodule "lib/chainlink-brownie-contracts"] - path = lib/chainlink-brownie-contracts - url = https://github.com/smartcontractkit/chainlink-brownie-contracts -[submodule "lib/solmate"] - path = lib/solmate - url = https://github.com/rari-capital/solmate -[submodule "lib/forge-std"] - path = lib/forge-std - url = https://github.com/foundry-rs/forge-std -[submodule "lib/contracts"] - path = lib/contracts - url = https://github.com/iden3/contracts -[submodule "lib/openzeppelin-contracts"] - path = lib/openzeppelin-contracts - url = https://github.com/OpenZeppelin/openzeppelin-contracts diff --git a/Makefile b/Makefile index 117f72e..77f32f6 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ remove :; if exist .gitmodules (del /F /Q .gitmodules) git add . git commit -m "modules" -install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install iden3/contracts && forge install OpenZeppelin/openzeppelin-contracts +install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install iden3/contracts && forge install OpenZeppelin/openzeppelin-contracts && forge install OpenZeppelin/openzeppelin-contracts-upgradeable # Update Dependencies update:; forge update diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts deleted file mode 160000 index 27f3fc5..0000000 --- a/lib/chainlink-brownie-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 diff --git a/lib/contracts b/lib/contracts deleted file mode 160000 index 986ca27..0000000 --- a/lib/contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 986ca276bb4dc4549d2a7b499c5764727697a4c0 diff --git a/lib/forge-std b/lib/forge-std deleted file mode 160000 index 2f11269..0000000 --- a/lib/forge-std +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 diff --git a/lib/openzeppelin-contracts b/lib/openzeppelin-contracts deleted file mode 160000 index 932fddf..0000000 --- a/lib/openzeppelin-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 932fddf69a699a9a80fd2396fd1a2ab91cdda123 diff --git a/lib/solmate b/lib/solmate deleted file mode 160000 index 4b47a19..0000000 --- a/lib/solmate +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 diff --git a/remappings.txt b/remappings.txt index f5fc675..222b459 100644 --- a/remappings.txt +++ b/remappings.txt @@ -3,4 +3,5 @@ @clones=lib/clones-with-immutable-args/src/ @chainlink/=lib/chainlink-brownie-contracts/ @contracts/=lib/contracts/ -forge-std/=lib/forge-std/src/ \ No newline at end of file +@openzeppelin/=lib/openzeppelin-contracts/ +forge-std/=lib/forge-std/src/contracts/ \ No newline at end of file From 38e2e827953f3d1842363c8ddf0eeb90a5c0fc19 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:48:45 +0000 Subject: [PATCH 31/47] forge install: chainlink-brownie-contracts 1.2.0 --- .gitmodules | 3 +++ lib/chainlink-brownie-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/chainlink-brownie-contracts diff --git a/.gitmodules b/.gitmodules index e69de29..ee15de6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/chainlink-brownie-contracts"] + path = lib/chainlink-brownie-contracts + url = https://github.com/smartcontractkit/chainlink-brownie-contracts diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts new file mode 160000 index 0000000..27f3fc5 --- /dev/null +++ b/lib/chainlink-brownie-contracts @@ -0,0 +1 @@ +Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 From 2346f68c04f8375972d164fc7810ca6e62d122d3 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:48:51 +0000 Subject: [PATCH 32/47] forge install: solmate --- .gitmodules | 3 +++ lib/solmate | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index ee15de6..0220d9d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "lib/chainlink-brownie-contracts"] path = lib/chainlink-brownie-contracts url = https://github.com/smartcontractkit/chainlink-brownie-contracts +[submodule "lib/solmate"] + path = lib/solmate + url = https://github.com/rari-capital/solmate diff --git a/lib/solmate b/lib/solmate new file mode 160000 index 0000000..4b47a19 --- /dev/null +++ b/lib/solmate @@ -0,0 +1 @@ +Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From b9e10e8163388ebe737f07dec632df765f4019e1 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:48:57 +0000 Subject: [PATCH 33/47] forge install: forge-std v1.7.3 --- .gitmodules | 3 +++ lib/forge-std | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/forge-std diff --git a/.gitmodules b/.gitmodules index 0220d9d..799f89b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "lib/solmate"] path = lib/solmate url = https://github.com/rari-capital/solmate +[submodule "lib/forge-std"] + path = lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/lib/forge-std b/lib/forge-std new file mode 160000 index 0000000..2f11269 --- /dev/null +++ b/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 From 67f86b007dfa14c0a48c642f6b27c6573fa3f63c Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:49:05 +0000 Subject: [PATCH 34/47] forge install: contracts v0.2.0 --- .gitmodules | 3 +++ lib/contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/contracts diff --git a/.gitmodules b/.gitmodules index 799f89b..2c5182d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "lib/forge-std"] path = lib/forge-std url = https://github.com/foundry-rs/forge-std +[submodule "lib/contracts"] + path = lib/contracts + url = https://github.com/iden3/contracts diff --git a/lib/contracts b/lib/contracts new file mode 160000 index 0000000..986ca27 --- /dev/null +++ b/lib/contracts @@ -0,0 +1 @@ +Subproject commit 986ca276bb4dc4549d2a7b499c5764727697a4c0 From 153c5a1ba1595925d6cb381b0e1ca3c553fd3cfc Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:49:34 +0000 Subject: [PATCH 35/47] forge install: openzeppelin-contracts v5.0.0 --- .gitmodules | 3 +++ lib/openzeppelin-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/openzeppelin-contracts diff --git a/.gitmodules b/.gitmodules index 2c5182d..08678a5 100644 --- a/.gitmodules +++ b/.gitmodules @@ -10,3 +10,6 @@ [submodule "lib/contracts"] path = lib/contracts url = https://github.com/iden3/contracts +[submodule "lib/openzeppelin-contracts"] + path = lib/openzeppelin-contracts + url = https://github.com/OpenZeppelin/openzeppelin-contracts diff --git a/lib/openzeppelin-contracts b/lib/openzeppelin-contracts new file mode 160000 index 0000000..932fddf --- /dev/null +++ b/lib/openzeppelin-contracts @@ -0,0 +1 @@ +Subproject commit 932fddf69a699a9a80fd2396fd1a2ab91cdda123 From 20f4221bbd201b826a82709281f9c5407964567d Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:50:40 +0000 Subject: [PATCH 36/47] forge install: openzeppelin-contracts-upgradeable v5.0.0 --- .gitmodules | 3 +++ lib/openzeppelin-contracts-upgradeable | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/openzeppelin-contracts-upgradeable diff --git a/.gitmodules b/.gitmodules index 08678a5..09d4137 100644 --- a/.gitmodules +++ b/.gitmodules @@ -13,3 +13,6 @@ [submodule "lib/openzeppelin-contracts"] path = lib/openzeppelin-contracts url = https://github.com/OpenZeppelin/openzeppelin-contracts +[submodule "lib/openzeppelin-contracts-upgradeable"] + path = lib/openzeppelin-contracts-upgradeable + url = https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable diff --git a/lib/openzeppelin-contracts-upgradeable b/lib/openzeppelin-contracts-upgradeable new file mode 160000 index 0000000..625fb3c --- /dev/null +++ b/lib/openzeppelin-contracts-upgradeable @@ -0,0 +1 @@ +Subproject commit 625fb3c2b2696f1747ba2e72d1e1113066e6c177 From 062e9125b1b18c5179275f3540734c2e8a93c033 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:56:30 +0000 Subject: [PATCH 37/47] modules --- .gitmodules | 18 ------------------ lib/chainlink-brownie-contracts | 1 - lib/contracts | 1 - lib/forge-std | 1 - lib/openzeppelin-contracts | 1 - lib/openzeppelin-contracts-upgradeable | 1 - lib/solmate | 1 - remappings.txt | 1 + src/test/Identity.sol | 2 +- 9 files changed, 2 insertions(+), 25 deletions(-) delete mode 160000 lib/chainlink-brownie-contracts delete mode 160000 lib/contracts delete mode 160000 lib/forge-std delete mode 160000 lib/openzeppelin-contracts delete mode 160000 lib/openzeppelin-contracts-upgradeable delete mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index 09d4137..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,18 +0,0 @@ -[submodule "lib/chainlink-brownie-contracts"] - path = lib/chainlink-brownie-contracts - url = https://github.com/smartcontractkit/chainlink-brownie-contracts -[submodule "lib/solmate"] - path = lib/solmate - url = https://github.com/rari-capital/solmate -[submodule "lib/forge-std"] - path = lib/forge-std - url = https://github.com/foundry-rs/forge-std -[submodule "lib/contracts"] - path = lib/contracts - url = https://github.com/iden3/contracts -[submodule "lib/openzeppelin-contracts"] - path = lib/openzeppelin-contracts - url = https://github.com/OpenZeppelin/openzeppelin-contracts -[submodule "lib/openzeppelin-contracts-upgradeable"] - path = lib/openzeppelin-contracts-upgradeable - url = https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts deleted file mode 160000 index 27f3fc5..0000000 --- a/lib/chainlink-brownie-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 diff --git a/lib/contracts b/lib/contracts deleted file mode 160000 index 986ca27..0000000 --- a/lib/contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 986ca276bb4dc4549d2a7b499c5764727697a4c0 diff --git a/lib/forge-std b/lib/forge-std deleted file mode 160000 index 2f11269..0000000 --- a/lib/forge-std +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 diff --git a/lib/openzeppelin-contracts b/lib/openzeppelin-contracts deleted file mode 160000 index 932fddf..0000000 --- a/lib/openzeppelin-contracts +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 932fddf69a699a9a80fd2396fd1a2ab91cdda123 diff --git a/lib/openzeppelin-contracts-upgradeable b/lib/openzeppelin-contracts-upgradeable deleted file mode 160000 index 625fb3c..0000000 --- a/lib/openzeppelin-contracts-upgradeable +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 625fb3c2b2696f1747ba2e72d1e1113066e6c177 diff --git a/lib/solmate b/lib/solmate deleted file mode 160000 index 4b47a19..0000000 --- a/lib/solmate +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 diff --git a/remappings.txt b/remappings.txt index 222b459..9be3753 100644 --- a/remappings.txt +++ b/remappings.txt @@ -4,4 +4,5 @@ @chainlink/=lib/chainlink-brownie-contracts/ @contracts/=lib/contracts/ @openzeppelin/=lib/openzeppelin-contracts/ +@openzeppelin-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/ forge-std/=lib/forge-std/src/contracts/ \ No newline at end of file diff --git a/src/test/Identity.sol b/src/test/Identity.sol index 051b925..a70bd86 100644 --- a/src/test/Identity.sol +++ b/src/test/Identity.sol @@ -1,7 +1,7 @@ // SPDX-License-Identifier: GPL-3.0 pragma solidity > 0.8.16; -import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; +import {OwnableUpgradeable} from "@openzeppelin-upgradeable/access/OwnableUpgradeable.sol"; import {IState} from "../interfaces/IState.sol"; import {ClaimBuilder} from "../lib/ClaimBuilder.sol"; import {IdentityLib} from "../lib/IdentityLib.sol"; From 5ca28b7ac31ef17ea4d7db4f824655d82d07e60c Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:57:00 +0000 Subject: [PATCH 38/47] forge install: chainlink-brownie-contracts 1.2.0 --- .gitmodules | 3 +++ lib/chainlink-brownie-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/chainlink-brownie-contracts diff --git a/.gitmodules b/.gitmodules index e69de29..ee15de6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/chainlink-brownie-contracts"] + path = lib/chainlink-brownie-contracts + url = https://github.com/smartcontractkit/chainlink-brownie-contracts diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts new file mode 160000 index 0000000..27f3fc5 --- /dev/null +++ b/lib/chainlink-brownie-contracts @@ -0,0 +1 @@ +Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 From b2b64ff9d2b1e16275ee86f2db68a86b61d0efc6 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:57:05 +0000 Subject: [PATCH 39/47] forge install: solmate --- .gitmodules | 3 +++ lib/solmate | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/solmate diff --git a/.gitmodules b/.gitmodules index ee15de6..0220d9d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "lib/chainlink-brownie-contracts"] path = lib/chainlink-brownie-contracts url = https://github.com/smartcontractkit/chainlink-brownie-contracts +[submodule "lib/solmate"] + path = lib/solmate + url = https://github.com/rari-capital/solmate diff --git a/lib/solmate b/lib/solmate new file mode 160000 index 0000000..4b47a19 --- /dev/null +++ b/lib/solmate @@ -0,0 +1 @@ +Subproject commit 4b47a19038b798b4a33d9749d25e570443520647 From 798473c16325ed241ca20369629c07e1dc8e560e Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:57:11 +0000 Subject: [PATCH 40/47] forge install: forge-std v1.7.3 --- .gitmodules | 3 +++ lib/forge-std | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/forge-std diff --git a/.gitmodules b/.gitmodules index 0220d9d..799f89b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "lib/solmate"] path = lib/solmate url = https://github.com/rari-capital/solmate +[submodule "lib/forge-std"] + path = lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/lib/forge-std b/lib/forge-std new file mode 160000 index 0000000..2f11269 --- /dev/null +++ b/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 2f112697506eab12d433a65fdc31a639548fe365 From 3400dede50f42d40d9959df5d2b2085eb69080ad Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:57:18 +0000 Subject: [PATCH 41/47] forge install: contracts v0.2.0 --- .gitmodules | 3 +++ lib/contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/contracts diff --git a/.gitmodules b/.gitmodules index 799f89b..2c5182d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "lib/forge-std"] path = lib/forge-std url = https://github.com/foundry-rs/forge-std +[submodule "lib/contracts"] + path = lib/contracts + url = https://github.com/iden3/contracts diff --git a/lib/contracts b/lib/contracts new file mode 160000 index 0000000..986ca27 --- /dev/null +++ b/lib/contracts @@ -0,0 +1 @@ +Subproject commit 986ca276bb4dc4549d2a7b499c5764727697a4c0 From c7aded27dc3f0dcce17f540ecbf25e684e6653ef Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:57:45 +0000 Subject: [PATCH 42/47] forge install: openzeppelin-contracts v5.0.0 --- .gitmodules | 3 +++ lib/openzeppelin-contracts | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/openzeppelin-contracts diff --git a/.gitmodules b/.gitmodules index 2c5182d..08678a5 100644 --- a/.gitmodules +++ b/.gitmodules @@ -10,3 +10,6 @@ [submodule "lib/contracts"] path = lib/contracts url = https://github.com/iden3/contracts +[submodule "lib/openzeppelin-contracts"] + path = lib/openzeppelin-contracts + url = https://github.com/OpenZeppelin/openzeppelin-contracts diff --git a/lib/openzeppelin-contracts b/lib/openzeppelin-contracts new file mode 160000 index 0000000..932fddf --- /dev/null +++ b/lib/openzeppelin-contracts @@ -0,0 +1 @@ +Subproject commit 932fddf69a699a9a80fd2396fd1a2ab91cdda123 From 2532c0aa376b95dd9b20910ab2dbdb6f3f1bdcd8 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 14:58:39 +0000 Subject: [PATCH 43/47] forge install: openzeppelin-contracts-upgradeable v5.0.0 --- .gitmodules | 3 +++ lib/openzeppelin-contracts-upgradeable | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/openzeppelin-contracts-upgradeable diff --git a/.gitmodules b/.gitmodules index 08678a5..09d4137 100644 --- a/.gitmodules +++ b/.gitmodules @@ -13,3 +13,6 @@ [submodule "lib/openzeppelin-contracts"] path = lib/openzeppelin-contracts url = https://github.com/OpenZeppelin/openzeppelin-contracts +[submodule "lib/openzeppelin-contracts-upgradeable"] + path = lib/openzeppelin-contracts-upgradeable + url = https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable diff --git a/lib/openzeppelin-contracts-upgradeable b/lib/openzeppelin-contracts-upgradeable new file mode 160000 index 0000000..625fb3c --- /dev/null +++ b/lib/openzeppelin-contracts-upgradeable @@ -0,0 +1 @@ +Subproject commit 625fb3c2b2696f1747ba2e72d1e1113066e6c177 From abbe786045db723946dfa01bb42dc58cda8f6497 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 15:34:45 +0000 Subject: [PATCH 44/47] Ignore --- .gitignore | 12 ++++++++++++ lib/chainlink-brownie-contracts | 2 +- lib/contracts | 2 +- lib/openzeppelin-contracts | 2 +- lib/openzeppelin-contracts-upgradeable | 2 +- 5 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index a078a42..264d91c 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,15 @@ package-lock.json .DS_Store src/.DS_Store +lib/chainlink-brownie-contracts +lib/contracts +lib/openzeppelin-contracts +lib/openzeppelin-contracts-upgradeable +lib/openzeppelin-contracts-upgradeable +lib/openzeppelin-contracts +lib/contracts +lib/chainlink-brownie-contracts +lib/openzeppelin-contracts-upgradeable +lib/openzeppelin-contracts +lib/contracts +lib/chainlink-brownie-contracts diff --git a/lib/chainlink-brownie-contracts b/lib/chainlink-brownie-contracts index 27f3fc5..f06ed4c 160000 --- a/lib/chainlink-brownie-contracts +++ b/lib/chainlink-brownie-contracts @@ -1 +1 @@ -Subproject commit 27f3fc59f8edc5084a2d15926cce4e4eb15ba011 +Subproject commit f06ed4c7e43de0359e0e337ce56e55cab90b0178 diff --git a/lib/contracts b/lib/contracts index 986ca27..0fd9996 160000 --- a/lib/contracts +++ b/lib/contracts @@ -1 +1 @@ -Subproject commit 986ca276bb4dc4549d2a7b499c5764727697a4c0 +Subproject commit 0fd9996bafc488aadcfc9a9d702c83205447e6c8 diff --git a/lib/openzeppelin-contracts b/lib/openzeppelin-contracts index 932fddf..78d5708 160000 --- a/lib/openzeppelin-contracts +++ b/lib/openzeppelin-contracts @@ -1 +1 @@ -Subproject commit 932fddf69a699a9a80fd2396fd1a2ab91cdda123 +Subproject commit 78d5708340b5ad1aed18c1e97e6d089b7c6f07fd diff --git a/lib/openzeppelin-contracts-upgradeable b/lib/openzeppelin-contracts-upgradeable index 625fb3c..2fae9a5 160000 --- a/lib/openzeppelin-contracts-upgradeable +++ b/lib/openzeppelin-contracts-upgradeable @@ -1 +1 @@ -Subproject commit 625fb3c2b2696f1747ba2e72d1e1113066e6c177 +Subproject commit 2fae9a5ea178e752862c0fd12857457f572da5d9 From 9e23787db63301aae6146efe06eaa71ffc775f6f Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 15:35:50 +0000 Subject: [PATCH 45/47] Update --- remappings.txt | 18 +++++++++++++----- src/test/Identity.sol | 9 ++++----- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/remappings.txt b/remappings.txt index 9be3753..70bd114 100644 --- a/remappings.txt +++ b/remappings.txt @@ -1,8 +1,16 @@ -@solmate=lib/solmate/src/ -@std=lib/forge-std/src/ -@clones=lib/clones-with-immutable-args/src/ +@solmate/=lib/solmate/src/ +@std/=lib/forge-std/src/ +@clones/=lib/clones-with-immutable-args/src/ @chainlink/=lib/chainlink-brownie-contracts/ -@contracts/=lib/contracts/ +@contracts/=lib/contracts/contracts/ @openzeppelin/=lib/openzeppelin-contracts/ @openzeppelin-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/ -forge-std/=lib/forge-std/src/contracts/ \ No newline at end of file +forge-std/=lib/forge-std/src/contracts/ +@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/ +@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/ +chainlink-brownie-contracts/=lib/chainlink-brownie-contracts/contracts/src/v0.6/vendor/@arbitrum/nitro-contracts/src/ +ds-test/=lib/forge-std/lib/ds-test/src/ +erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/ +openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/ +openzeppelin-contracts/=lib/openzeppelin-contracts/ +solmate/=lib/solmate/src/ diff --git a/src/test/Identity.sol b/src/test/Identity.sol index a70bd86..51d78ce 100644 --- a/src/test/Identity.sol +++ b/src/test/Identity.sol @@ -1,11 +1,10 @@ // SPDX-License-Identifier: GPL-3.0 pragma solidity > 0.8.16; - import {OwnableUpgradeable} from "@openzeppelin-upgradeable/access/OwnableUpgradeable.sol"; -import {IState} from "../interfaces/IState.sol"; -import {ClaimBuilder} from "../lib/ClaimBuilder.sol"; -import {IdentityLib} from "../lib/IdentityLib.sol"; -import {IdentityBase} from "../lib/IdentityBase.sol"; +import {IState} from "@contracts/interfaces/IState.sol"; +import {ClaimBuilder} from "@contracts/lib/ClaimBuilder.sol"; +import {IdentityLib} from "@contracts/lib/IdentityLib.sol"; +import {IdentityBase} from "@contracts/lib/IdentityBase.sol"; // /** // * @dev Contract managing onchain identity From f0b5d38030fa6854b35859568cd15152c8485447 Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 15:36:02 +0000 Subject: [PATCH 46/47] forge install: solidity-bytes-utils v0.8.0 --- .gitmodules | 3 +++ lib/solidity-bytes-utils | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/solidity-bytes-utils diff --git a/.gitmodules b/.gitmodules index 09d4137..2d7faa0 100644 --- a/.gitmodules +++ b/.gitmodules @@ -16,3 +16,6 @@ [submodule "lib/openzeppelin-contracts-upgradeable"] path = lib/openzeppelin-contracts-upgradeable url = https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable +[submodule "lib/solidity-bytes-utils"] + path = lib/solidity-bytes-utils + url = https://github.com/GNSPS/solidity-bytes-utils diff --git a/lib/solidity-bytes-utils b/lib/solidity-bytes-utils new file mode 160000 index 0000000..6458fb2 --- /dev/null +++ b/lib/solidity-bytes-utils @@ -0,0 +1 @@ +Subproject commit 6458fb2780a3092bc756e737f246be1de6d3d362 From ebc9e4680bf61b0dfd927e118eef6d16f955c47b Mon Sep 17 00:00:00 2001 From: LyKyD <84225765+Margaret-Hamilton-AR@users.noreply.github.com> Date: Fri, 24 Nov 2023 15:48:37 +0000 Subject: [PATCH 47/47] Update Dependencies --- Makefile | 2 +- remappings.txt | 3 +++ src/test/Identity.sol | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 77f32f6..c6be17b 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ remove :; if exist .gitmodules (del /F /Q .gitmodules) git add . git commit -m "modules" -install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install iden3/contracts && forge install OpenZeppelin/openzeppelin-contracts && forge install OpenZeppelin/openzeppelin-contracts-upgradeable +install :; forge install smartcontractkit/chainlink-brownie-contracts && forge install rari-capital/solmate && forge install foundry-rs/forge-std && forge install iden3/contracts && forge install OpenZeppelin/openzeppelin-contracts && forge install OpenZeppelin/openzeppelin-contracts-upgradeable && forge install GNSPS/solidity-bytes-utils # Update Dependencies update:; forge update diff --git a/remappings.txt b/remappings.txt index 70bd114..11b7b7c 100644 --- a/remappings.txt +++ b/remappings.txt @@ -5,6 +5,7 @@ @contracts/=lib/contracts/contracts/ @openzeppelin/=lib/openzeppelin-contracts/ @openzeppelin-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/ +@solidity-bytes-utils/=lib/solidity-bytes-utils/contracts/ forge-std/=lib/forge-std/src/contracts/ @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/ @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/ @@ -14,3 +15,5 @@ erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/ openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/ openzeppelin-contracts/=lib/openzeppelin-contracts/ solmate/=lib/solmate/src/ + + diff --git a/src/test/Identity.sol b/src/test/Identity.sol index 51d78ce..fb5ad9f 100644 --- a/src/test/Identity.sol +++ b/src/test/Identity.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: GPL-3.0 -pragma solidity > 0.8.16; +pragma solidity >=0.8.0 <0.9.0; import {OwnableUpgradeable} from "@openzeppelin-upgradeable/access/OwnableUpgradeable.sol"; import {IState} from "@contracts/interfaces/IState.sol"; import {ClaimBuilder} from "@contracts/lib/ClaimBuilder.sol"; @@ -24,7 +24,7 @@ contract IdentityExample is IdentityBase, OwnableUpgradeable { function initialize(address _stateContractAddr) public override initializer { super.initialize(_stateContractAddr); - __Ownable_init(); + __Ownable_init(_stateContractAddr); } function addClaimAndTransit(uint256[8] calldata claim) public onlyOwner {