From 3c1fa1d25a7deaebf54f7237686b4c0e5f1e2edf Mon Sep 17 00:00:00 2001 From: Dmitry Date: Wed, 22 Sep 2021 13:26:16 +0200 Subject: [PATCH] Replacing "solidity" references with "solidity-v1" Replaced all references of the "/solidity" dir with the "/solidity-v1" for legacy beacon code. We are creating a v2 of random beacon which will be developed now in the "/solidity/random-beacon" folder. --- .dockerignore | 12 ++-- .github/workflows/client.yml | 4 +- .../{contracts.yml => contracts-v1.yml} | 22 +++---- ...d-format.yaml => dashboard-v1-format.yaml} | 8 +-- ...d-mainnet.yml => dashboard-v1-mainnet.yml} | 8 +-- ...d-testnet.yml => dashboard-v1-testnet.yml} | 10 +-- .github/workflows/docs.yml | 14 ++-- .github/workflows/genesis-testnet.yml | 4 +- .github/workflows/{npm.yml => npm-v1.yml} | 12 ++-- .github/workflows/submitter-testnet.yaml | 4 +- .gitignore | 1 - .pre-commit-config.yaml | 10 +-- CODEOWNERS | 66 +++++++++---------- Dockerfile | 4 +- README.adoc | 15 +++-- crytic-config.json | 2 +- docs/development/local-keep-network.adoc | 4 +- docs/rfc/rfc-18-release-management.adoc | 4 +- scripts/install-celo.sh | 2 +- scripts/install.sh | 2 +- scripts/macos-setup.sh | 2 +- scripts/start_dashboard.sh | 4 +- solidity-v1/dashboard/README.md | 4 +- solidity-v1/package.json | 2 +- token-stakedrop/README.adoc | 2 +- 25 files changed, 116 insertions(+), 106 deletions(-) rename .github/workflows/{contracts.yml => contracts-v1.yml} (95%) rename .github/workflows/{dashboard-format.yaml => dashboard-v1-format.yaml} (84%) rename .github/workflows/{dashboard-mainnet.yml => dashboard-v1-mainnet.yml} (92%) rename .github/workflows/{dashboard-testnet.yml => dashboard-v1-testnet.yml} (95%) rename .github/workflows/{npm.yml => npm-v1.yml} (87%) diff --git a/.dockerignore b/.dockerignore index 64bd36d6aa..f13388a95b 100644 --- a/.dockerignore +++ b/.dockerignore @@ -18,10 +18,14 @@ Dockerfile # Solidity stuff. # We want to include only bare contracts and NPM package configuration for Go code # generator. -solidity/ -!solidity/contracts -!solidity/package.json -!solidity/package-lock.json +solidity-v1/ +!solidity-v1/contracts +!solidity-v1/package.json +!solidity-v1/package-lock.json +solidity +!solidity/random-beacon/contracts +!solidity/random-beacon/package.json +!solidity/random-beacon/yarn.lock # Go stuff. **/gen/*/**/*.go diff --git a/.github/workflows/client.yml b/.github/workflows/client.yml index 816e48fbc3..62e3446295 100644 --- a/.github/workflows/client.yml +++ b/.github/workflows/client.yml @@ -11,7 +11,7 @@ on: - "infrastructure/**" - "scripts/**" - "token-stakedrop/**" - - "solidity/dashboard/**" + - "solidity-v1/dashboard/**" pull_request: workflow_dispatch: inputs: @@ -42,7 +42,7 @@ jobs: with: filters: | path-filter: - - './!((docs|infrastructure|scripts|token-stakedrop|(solidity/dashboard))/**)' + - './!((docs|infrastructure|scripts|token-stakedrop|(solidity-v1/dashboard))/**)' client-build-test-publish: needs: client-detect-changes diff --git a/.github/workflows/contracts.yml b/.github/workflows/contracts-v1.yml similarity index 95% rename from .github/workflows/contracts.yml rename to .github/workflows/contracts-v1.yml index f2835b9662..3f763eea39 100644 --- a/.github/workflows/contracts.yml +++ b/.github/workflows/contracts-v1.yml @@ -1,4 +1,4 @@ -name: Solidity +name: Solidity v1 on: schedule: @@ -7,8 +7,8 @@ on: branches: - main paths: - - "solidity/**" - - "!solidity/dashboard/**" + - "solidity-v1/**" + - "!solidity-v1/dashboard/**" pull_request: workflow_dispatch: inputs: @@ -39,7 +39,7 @@ jobs: with: filters: | path-filter: - - './solidity/!(dashboard)/**' + - './solidity-v1/!(dashboard)/**' contracts-build-and-test: needs: contracts-detect-changes @@ -49,7 +49,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./solidity + working-directory: ./solidity-v1 steps: - uses: actions/checkout@v2 @@ -86,7 +86,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./solidity + working-directory: ./solidity-v1 steps: - uses: actions/checkout@v2 @@ -118,7 +118,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./solidity + working-directory: ./solidity-v1 outputs: version: ${{ steps.npm-version-bump.outputs.version }} steps: @@ -173,7 +173,7 @@ jobs: id: npm-version-bump uses: keep-network/npm-version-bump@v2 with: - work-dir: ./solidity + work-dir: ./solidity-v1 environment: ${{ github.event.inputs.environment }} branch: ${{ github.ref }} commit: ${{ github.sha }} @@ -183,7 +183,7 @@ jobs: uses: keep-network/tenderly-push-action@v1 continue-on-error: true with: - working-directory: ./solidity + working-directory: ./solidity-v1 tenderly-token: ${{ secrets.TENDERLY_TOKEN }} tenderly-project: thesis/keep-test eth-network-id: ${{ env.NETWORK_ID }} @@ -199,7 +199,7 @@ jobs: uses: actions/upload-artifact@v2 with: name: Contracts - path: ./solidity/build/contracts/* + path: ./solidity-v1/build/contracts/* contracts-build-and-publish-initcontainer: needs: [contracts-migrate-and-publish] @@ -258,7 +258,7 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.CI_GITHUB_TOKEN }} with: - module: "github.com/keep-network/keep-core/solidity" + module: "github.com/keep-network/keep-core/solidity-v1" url: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} environment: ${{ github.event.inputs.environment }} upstream_builds: ${{ github.event.inputs.upstream_builds }} diff --git a/.github/workflows/dashboard-format.yaml b/.github/workflows/dashboard-v1-format.yaml similarity index 84% rename from .github/workflows/dashboard-format.yaml rename to .github/workflows/dashboard-v1-format.yaml index f6239ad3ea..9f77ba790f 100644 --- a/.github/workflows/dashboard-format.yaml +++ b/.github/workflows/dashboard-v1-format.yaml @@ -1,17 +1,17 @@ -name: KEEP Token Dashboard Code Format Checks +name: KEEP Token Dashboard / Code Format Checks on: push: branches: - main paths: - - "solidity/dashboard/**" + - "solidity-v1/dashboard/**" pull_request: workflow_dispatch: defaults: run: - working-directory: ./solidity/dashboard + working-directory: ./solidity-v1/dashboard jobs: dashboard-detect-changes: @@ -28,7 +28,7 @@ jobs: with: filters: | path-filter: - - './solidity/dashboard/**' + - './solidity-v1/dashboard/**' dashboard-code-format: needs: dashboard-detect-changes diff --git a/.github/workflows/dashboard-mainnet.yml b/.github/workflows/dashboard-v1-mainnet.yml similarity index 92% rename from .github/workflows/dashboard-mainnet.yml rename to .github/workflows/dashboard-v1-mainnet.yml index e8f2c51623..9b4c55e317 100644 --- a/.github/workflows/dashboard-mainnet.yml +++ b/.github/workflows/dashboard-v1-mainnet.yml @@ -4,7 +4,7 @@ on: pull_request: branches: [ main ] paths: - - solidity/dashboard/** + - solidity-v1/dashboard/** # For pull_request_target: # - Checkout with repository set to PR repo, ref same (see @@ -22,7 +22,7 @@ jobs: if: startsWith(github.head_ref, 'releases/mainnet/token-dashboard/') defaults: run: - working-directory: solidity/dashboard + working-directory: solidity-v1/dashboard steps: - uses: actions/checkout@v2 - name: Use Node.js ${{ matrix.node-version }} @@ -46,7 +46,7 @@ jobs: # service-key: ${{ secrets.KEEP_DASHBOARD_UPLOADER_SERVICE_KEY_JSON }} # project: keep-prd-210b # bucket-name: dashboard.keep.network - # build-folder: solidity/dashboard/build + # build-folder: solidity-v1/dashboard/build # A pull_request event is a PR; deploy to preview bucket. - if: github.event_name == 'pull_request' name: Deploy PR preview to GCP @@ -56,7 +56,7 @@ jobs: project: keep-prd-210b bucket-name: preview.dashboard.keep.network bucket-path: ${{ github.head_ref }} - build-folder: solidity/dashboard/build + build-folder: solidity-v1/dashboard/build # A pull_request event is a PR; leave a comment with the preview URL. - if: github.event_name == 'pull_request' name: Post preview URL to PR diff --git a/.github/workflows/dashboard-testnet.yml b/.github/workflows/dashboard-v1-testnet.yml similarity index 95% rename from .github/workflows/dashboard-testnet.yml rename to .github/workflows/dashboard-v1-testnet.yml index 775cc6c010..e73096ae2b 100644 --- a/.github/workflows/dashboard-testnet.yml +++ b/.github/workflows/dashboard-v1-testnet.yml @@ -7,7 +7,7 @@ on: branches: - main paths: - - "solidity/dashboard/**" + - "solidity-v1/dashboard/**" pull_request: workflow_dispatch: inputs: @@ -38,7 +38,7 @@ jobs: with: filters: | path-filter: - - './solidity/dashboard/**' + - './solidity-v1/dashboard/**' dashboard-build-and-publish: needs: dashboard-detect-changes @@ -48,7 +48,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./solidity/dashboard + working-directory: ./solidity-v1/dashboard steps: - uses: actions/checkout@v2 @@ -93,7 +93,7 @@ jobs: with: upstream-builds: ${{ github.event.inputs.upstream_builds }} query: | - keep-core-contracts-version = github.com/keep-network/keep-core/solidity#version + keep-core-contracts-version = github.com/keep-network/keep-core/solidity-v1#version keep-ecdsa-contracts-version = github.com/keep-network/keep-ecdsa/solidity#version tbtc-contracts-version = github.com/keep-network/tbtc/solidity#version tbtc-v2-contracts-version = github.com/keep-network/tbtc-v2/solidity#version @@ -122,7 +122,7 @@ jobs: set-website: true home-page-path: index.html error-page-path: index.html - build-folder: solidity/dashboard/build + build-folder: solidity-v1/dashboard/build - name: Notify CI about completion of the workflow if: github.event_name == 'workflow_dispatch' diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index ccbd807805..7d5943d0fd 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -6,8 +6,8 @@ on: - main paths: - "docs/**" - - "solidity/**" - - "!solidity/dashboard/**" + - "solidity-v1/**" + - "!solidity-v1/dashboard/**" pull_request: workflow_dispatch: @@ -25,7 +25,7 @@ jobs: with: filters: | path-filter: - - './((docs|(solidity/!dashboard))/**)' + - './((docs|(solidity-v1/!dashboard))/**)' docs-tex: runs-on: ubuntu-latest @@ -81,12 +81,12 @@ jobs: github.event_name != 'pull_request' || needs.docs-detect-changes.outputs.path-filter == 'true' env: - SOLIDITY_DOCS_DIR: ${{ github.workspace }}/docs/solidity + SOLIDITY_DOCS_DIR: ${{ github.workspace }}/docs/solidity-v1 steps: - uses: actions/checkout@v2 - name: Generate solidity docs - working-directory: ./solidity + working-directory: ./solidity-v1 run: | npm ci npx truffle compile @@ -114,7 +114,7 @@ jobs: continue-on-error: true with: name: Solidity Docs - path: ${{ github.workspace }}/docs/solidity + path: ${{ github.workspace }}/docs/solidity-v1 - name: Build HTML docs id: html @@ -160,7 +160,7 @@ jobs: continue-on-error: true with: name: Solidity Docs - path: ${{ github.workspace }}/docs/solidity + path: ${{ github.workspace }}/docs/solidity-v1 - name: Build PDF docs id: pdf diff --git a/.github/workflows/genesis-testnet.yml b/.github/workflows/genesis-testnet.yml index a4b9734a9c..e90785300b 100644 --- a/.github/workflows/genesis-testnet.yml +++ b/.github/workflows/genesis-testnet.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./solidity + working-directory: ./solidity-v1 steps: - uses: actions/checkout@v2 @@ -24,7 +24,7 @@ jobs: with: node-version: "14.x" cache: "npm" - cache-dependency-path: solidity/package-lock.json + cache-dependency-path: solidity-v1/package-lock.json - run: npm ci diff --git a/.github/workflows/npm.yml b/.github/workflows/npm-v1.yml similarity index 87% rename from .github/workflows/npm.yml rename to .github/workflows/npm-v1.yml index 3e7b0232b2..28a8e07c6a 100644 --- a/.github/workflows/npm.yml +++ b/.github/workflows/npm-v1.yml @@ -1,20 +1,20 @@ -name: NPM +name: NPM v1 on: push: branches: - main paths: - - 'solidity/contracts/**' - - 'solidity/package.json' - - 'solidity/package-lock.json' + - 'solidity-v1/contracts/**' + - 'solidity-v1/package.json' + - 'solidity-v1/package-lock.json' jobs: npm-compile-publish-contracts: runs-on: ubuntu-latest defaults: run: - working-directory: ./solidity + working-directory: ./solidity-v1 steps: - uses: actions/checkout@v2 @@ -50,7 +50,7 @@ jobs: id: npm-version-bump uses: keep-network/npm-version-bump@v2 with: - work-dir: ./solidity + work-dir: ./solidity-v1 environment: dev branch: ${{ github.ref }} commit: ${{ github.sha }} diff --git a/.github/workflows/submitter-testnet.yaml b/.github/workflows/submitter-testnet.yaml index d0726f6ff4..0764fb1882 100644 --- a/.github/workflows/submitter-testnet.yaml +++ b/.github/workflows/submitter-testnet.yaml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./solidity + working-directory: ./solidity-v1 steps: - uses: actions/checkout@v2 @@ -23,7 +23,7 @@ jobs: with: node-version: "14.x" cache: 'npm' - cache-dependency-path: solidity/package-lock.json + cache-dependency-path: solidity-v1/package-lock.json - run: npm ci diff --git a/.gitignore b/.gitignore index cd4e9da2cd..0fc6495e05 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ node_modules/ -./solidity/truffle.js artifacts/ build/ vendor/ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 314b314ea6..ce4b486c33 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -13,20 +13,20 @@ repos: hooks: - id: lint-sol name: 'lint solidity sol' - entry: /usr/bin/env bash -c "cd solidity && npm run lint:sol" + entry: /usr/bin/env bash -c "cd solidity-v1 && npm run lint:sol" files: '\.sol$' language: script description: "Checks solidity code according to the package's linter configuration" - id: lint-js name: 'lint solidity js' - entry: /usr/bin/env bash -c "cd solidity && npm run lint:js" - files: 'solidity\/.*\.js$' + entry: /usr/bin/env bash -c "cd solidity-v1 && npm run lint:js" + files: 'solidity-v1\/.*\.js$' language: script description: "Checks JS code according to the package's linter configuration" - id: format-dashboard name: 'format dashboard' - entry: /usr/bin/env bash -c "cd solidity/dashboard && npm run format" - files: 'solidity/dashboard/' + entry: /usr/bin/env bash -c "cd solidity-v1/dashboard && npm run format" + files: 'solidity-v1/dashboard/' language: script description: "Checks dashboard code according to the package's formatting configuration" - id: lint-faucet-js diff --git a/CODEOWNERS b/CODEOWNERS index 3f57966ad6..3bf99915ac 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -1,33 +1,33 @@ -/solidity/contracts/KeepToken.sol @Shadowfiend @pdyraga -/solidity/contracts/TokenGrant.sol @Shadowfiend @pdyraga -/solidity/contracts/TokenGrantStake.sol @Shadowfiend @pdyraga -/solidity/contracts/TokenStaking.sol @Shadowfiend @pdyraga @nkuba -/solidity/contracts/StakeDelegatable.sol @Shadowfiend @pdyraga @nkuba -/solidity/contracts/ManagedGrant.sol @Shadowfiend @pdyraga -/solidity/contracts/ManagedGrantFactory.sol @Shadowfiend @pdyraga -/solidity/contracts/AdaptiveStakingPolicy.sol @Shadowfiend @pdyraga -/solidity/contracts/MinimumStakingPolicy.sol @Shadowfiend @pdyraga -/solidity/contracts/GuaranteedMinimumStakingPolicy.sol @Shadowfiend @pdyraga -/solidity/contracts/PermissiveStakingPolicy.sol @Shadowfiend @pdyraga -/solidity/contracts/KeepRegistry.sol @Shadowfiend @pdyraga -/solidity/contracts/Escrow.sol @Shadowfiend @pdyraga -/solidity/contracts/KeepRandomBeaconOperator.sol @Shadowfiend @pdyraga -/solidity/contracts/KeepRandomBeaconService.sol @Shadowfiend @pdyraga -/solidity/contracts/KeepRandomBeaconServiceImplV1.sol @Shadowfiend @pdyraga -/solidity/contracts/statistics/KeepRandomBeaconOperatorStatistics.sol @Shadowfiend @pdyraga -/solidity/contracts/libraries/grant/UnlockingSchedule.sol @Shadowfiend @pdyraga -/solidity/contracts/libraries/operator/DelayFactor.sol @Shadowfiend @pdyraga -/solidity/contracts/libraries/operator/DKGResultVerification.sol @Shadowfiend @pdyraga -/solidity/contracts/libraries/operator/Groups.sol @Shadowfiend @pdyraga -/solidity/contracts/libraries/operator/GroupSelection.sol @Shadowfiend @pdyraga -/solidity/contracts/libraries/operator/Reimbursements.sol @Shadowfiend @pdyraga -/solidity/contracts/libraries/staking/GrantStaking.sol @Shadowfiend @pdyraga @nkuba -/solidity/contracts/libraries/staking/LockUtils.sol @Shadowfiend @pdyraga @nkuba -/solidity/contracts/libraries/staking/Locks.sol @Shadowfiend @pdyraga @nkuba -/solidity/contracts/libraries/staking/MinimumStakeSchedule.sol @Shadowfiend @pdyraga @nkuba -/solidity/contracts/utils/AddressArrayUtils.sol @Shadowfiend @pdyraga -/solidity/contracts/utils/BytesLib.sol @Shadowfiend @pdyraga -/solidity/contracts/utils/OperatorParams.sol @Shadowfiend @pdyraga @nkuba -/solidity/contracts/utils/PercentUtils.sol @Shadowfiend @pdyraga -/solidity/contracts/utils/UIntArrayUtils.sol @Shadowfiend @pdyraga -/solidity/package.json @Shadowfiend @pdyraga +/solidity-v1/contracts/KeepToken.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/TokenGrant.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/TokenGrantStake.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/TokenStaking.sol @Shadowfiend @pdyraga @nkuba +/solidity-v1/contracts/StakeDelegatable.sol @Shadowfiend @pdyraga @nkuba +/solidity-v1/contracts/ManagedGrant.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/ManagedGrantFactory.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/AdaptiveStakingPolicy.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/MinimumStakingPolicy.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/GuaranteedMinimumStakingPolicy.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/PermissiveStakingPolicy.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/KeepRegistry.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/Escrow.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/KeepRandomBeaconOperator.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/KeepRandomBeaconService.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/KeepRandomBeaconServiceImplV1.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/statistics/KeepRandomBeaconOperatorStatistics.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/libraries/grant/UnlockingSchedule.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/libraries/operator/DelayFactor.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/libraries/operator/DKGResultVerification.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/libraries/operator/Groups.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/libraries/operator/GroupSelection.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/libraries/operator/Reimbursements.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/libraries/staking/GrantStaking.sol @Shadowfiend @pdyraga @nkuba +/solidity-v1/contracts/libraries/staking/LockUtils.sol @Shadowfiend @pdyraga @nkuba +/solidity-v1/contracts/libraries/staking/Locks.sol @Shadowfiend @pdyraga @nkuba +/solidity-v1/contracts/libraries/staking/MinimumStakeSchedule.sol @Shadowfiend @pdyraga @nkuba +/solidity-v1/contracts/utils/AddressArrayUtils.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/utils/BytesLib.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/utils/OperatorParams.sol @Shadowfiend @pdyraga @nkuba +/solidity-v1/contracts/utils/PercentUtils.sol @Shadowfiend @pdyraga +/solidity-v1/contracts/utils/UIntArrayUtils.sol @Shadowfiend @pdyraga +/solidity-v1/package.json @Shadowfiend @pdyraga diff --git a/Dockerfile b/Dockerfile index 46ba585a7b..061c59eba8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -43,8 +43,8 @@ RUN go mod download # Install code generators. RUN cd /go/pkg/mod/github.com/gogo/protobuf@v1.3.2/protoc-gen-gogoslick && go install . -COPY ./solidity $APP_DIR/solidity -RUN cd $APP_DIR/solidity && npm install +COPY ./solidity-v1 $APP_DIR/solidity-v1 +RUN cd $APP_DIR/solidity-v1 && npm install COPY ./pkg/net/gen $APP_DIR/pkg/net/gen COPY ./pkg/chain/gen $APP_DIR/pkg/chain/gen diff --git a/README.adoc b/README.adoc index 551a03c2c4..2379a55c33 100644 --- a/README.adoc +++ b/README.adoc @@ -1,6 +1,6 @@ = keep-core -https://github.com/keep-network/keep-core/actions/workflows/contracts.yml[image:https://img.shields.io/github/workflow/status/keep-network/keep-core/Solidity/master?event=push&label=Solidity build[Solidity contracts build status]] +https://github.com/keep-network/keep-core/actions/workflows/contracts-v1.yml[image:https://img.shields.io/github/workflow/status/keep-network/keep-core/Solidity/master?event=push&label=Solidity build[Solidity contracts build status]] https://github.com/keep-network/keep-core/actions/workflows/client.yml[image:https://img.shields.io/github/workflow/status/keep-network/keep-core/Solidity/master?event=push&label=Go build[Go client build status]] https://discord.gg/wYezN7v[image:https://img.shields.io/badge/chat-Discord-blueViolet.svg[Chat with us on Discord]] @@ -41,14 +41,21 @@ link:docs/run-random-beacon.adoc[run Random Beacon doc]. Feedback on this process and the documentation https://github.com/keep-network/keep-core/issues[is appreciated!] +=== Moving to a new random beacon + +The legacy core contracts of the random beacon are moved to the link:solidity-v1/[`solidity-v1/`] +directory which can be referred as "v1". The newest "v2" random beacon contracts can +be found in link:solidity/random-beacon/[`solidity/random-beacon`] directory. +The full specification of the "v2" random beacon is written in link:/docs/rfc/rfc-19-random-beacon-v2.adoc[`rfc-19-random-beacon-v2.adoc`]. + === dApp Developers dApp developers will be most interested in the smart contracts exposing Keep's on-chain facilities. -The core contracts can be found in the link:solidity/[`solidity/`] directory. +The core contracts can be found in the link:solidity-v1/[`solidity-v1/`] directory. They can be used to request -link:solidity/contracts/IRandomBeacon.sol[miner-resistant random numbers], as +link:solidity-v1/contracts/IRandomBeacon.sol[miner-resistant random numbers], as well as creating and managing keeps. To generate new ECDSA key material and request signatures, the contracts can be found in link:https://github.com/keep-network/keep-ecdsa/blob/main/solidity/contracts/api/IBondedECDSAKeep.sol[`keep-ecdsa`]. @@ -69,7 +76,7 @@ keep-core/ Dockerfile main.go, *.go docs/ - solidity/ <1> + solidity-v1/ <1> cmd/ <2> pkg/ <3> net/ diff --git a/crytic-config.json b/crytic-config.json index 325e65fcb6..34cb256d2e 100644 --- a/crytic-config.json +++ b/crytic-config.json @@ -1,3 +1,3 @@ { - "cwd": "solidity" + "cwd": "solidity-v1" } diff --git a/docs/development/local-keep-network.adoc b/docs/development/local-keep-network.adoc index e00c24b612..a37ace3ade 100644 --- a/docs/development/local-keep-network.adoc +++ b/docs/development/local-keep-network.adoc @@ -278,7 +278,7 @@ If you get `Account unlock with HTTP access is forbidden` you should run Ethereum client (described in the previous section) with param: `--allow-insecure-unlock` -We also need to create a new network entry in `keep-core/solidity/truffle.js` +We also need to create a new network entry in `keep-core/solidity-v1/truffle-config.js` pointing to our local node and its account. This account will pay gas for Keep contract deployment. @@ -296,7 +296,7 @@ contracts. Please save the output of as we will need to use some of the outputted contract addresses in the Keep peer configuration later. ``` -$ cd keep-core/solidity +$ cd keep-core/solidity-v1 $ truffle migrate --reset --network local Using network 'local'. diff --git a/docs/rfc/rfc-18-release-management.adoc b/docs/rfc/rfc-18-release-management.adoc index f1cd442ad1..681a400278 100644 --- a/docs/rfc/rfc-18-release-management.adoc +++ b/docs/rfc/rfc-18-release-management.adoc @@ -368,7 +368,7 @@ Entries in `upstream_builds` will have these properties: The ref used for this build. `module`:: The name of the module that was built, including the repository (e.g. - `github.com/keep-network/keep-core/solidity`). + `github.com/keep-network/keep-core/solidity-v1`). `version`:: The module version used for this build. @@ -411,7 +411,7 @@ look something like this: ``` { - "github.com/keep-network/keep-core/solidity": [ + "github.com/keep-network/keep-core/solidity-v1": [ "github.com/keep-network/keep-core", "github.com/keep-network/keep-core/token-dashboard" ], diff --git a/scripts/install-celo.sh b/scripts/install-celo.sh index a40bf4b504..53fde9cbe1 100755 --- a/scripts/install-celo.sh +++ b/scripts/install-celo.sh @@ -7,7 +7,7 @@ DONE_START='\n\e[1;32m' # new line + bold + green DONE_END='\n\n\e[0m' # new line + reset KEEP_CORE_PATH=$PWD -KEEP_CORE_SOL_PATH="$KEEP_CORE_PATH/solidity" +KEEP_CORE_SOL_PATH="$KEEP_CORE_PATH/solidity-v1" # Defaults, can be overwritten by env variables/input parameters CONFIG_DIR_PATH_DEFAULT="$KEEP_CORE_PATH/configs" diff --git a/scripts/install.sh b/scripts/install.sh index aeab5ea012..08d08c13e2 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -7,7 +7,7 @@ DONE_START='\n\e[1;32m' # new line + bold + green DONE_END='\n\n\e[0m' # new line + reset KEEP_CORE_PATH=$PWD -KEEP_CORE_SOL_PATH="$KEEP_CORE_PATH/solidity" +KEEP_CORE_SOL_PATH="$KEEP_CORE_PATH/solidity-v1" # Defaults, can be overwritten by env variables/input parameters CONFIG_DIR_PATH_DEFAULT="$KEEP_CORE_PATH/configs" diff --git a/scripts/macos-setup.sh b/scripts/macos-setup.sh index 7642ca7959..743378166a 100755 --- a/scripts/macos-setup.sh +++ b/scripts/macos-setup.sh @@ -30,7 +30,7 @@ pre-commit install --install-hooks echo "Installing solidity npm and requirements..." brew list npm &>/dev/null || brew install npm -cd ../solidity && npm install && cd ../scripts +cd ../solidity-v1 && npm install && cd ../scripts if ! [ -x "$(command -v protoc-gen-gogoslick)" ]; then echo 'WARNING: protoc-gen-gogoslick command is not available' diff --git a/scripts/start_dashboard.sh b/scripts/start_dashboard.sh index ca1b6d42c1..5687f138d5 100755 --- a/scripts/start_dashboard.sh +++ b/scripts/start_dashboard.sh @@ -5,8 +5,8 @@ LOG_START='\n\e[1;36m' # new line + bold + color LOG_END='\n\e[0m' # new line + reset color KEEP_CORE_PATH=$PWD -DASHBOARD_DIR_PATH="$KEEP_CORE_PATH/solidity/dashboard" -KEEP_CORE_ARTIFACTS_PATH="$KEEP_CORE_PATH/solidity/artifacts" +DASHBOARD_DIR_PATH="$KEEP_CORE_PATH/solidity-v1/dashboard" +KEEP_CORE_ARTIFACTS_PATH="$KEEP_CORE_PATH/solidity-v1/artifacts" KEEP_ECDSA_PATH="$PWD/../keep-ecdsa" KEEP_ECDSA_SOL_PATH="$PWD/../keep-ecdsa/solidity" diff --git a/solidity-v1/dashboard/README.md b/solidity-v1/dashboard/README.md index e008959e51..c28378b75f 100644 --- a/solidity-v1/dashboard/README.md +++ b/solidity-v1/dashboard/README.md @@ -18,7 +18,7 @@ User has the ability to visualize their token and stake balances, token grant un - Deploy contracts demo setup to it: ``` -cd keep-core/solidity +cd keep-core/solidity-v1 npm install npm run demo ``` @@ -42,7 +42,7 @@ npm run demo - Deploy contracts demo setup: ``` -cd keep-core/solidity +cd keep-core/solidity-v1 npm install ``` diff --git a/solidity-v1/package.json b/solidity-v1/package.json index 8413c853d0..59c3a712f4 100644 --- a/solidity-v1/package.json +++ b/solidity-v1/package.json @@ -29,7 +29,7 @@ "bugs": { "url": "https://github.com/keep-network/keep-core/issues" }, - "homepage": "https://github.com/keep-network/keep-core/contracts/solidity", + "homepage": "https://github.com/keep-network/keep-core/contracts/solidity-v1", "dependencies": { "@openzeppelin/upgrades": "^2.7.2", "openzeppelin-solidity": "2.4.0" diff --git a/token-stakedrop/README.adoc b/token-stakedrop/README.adoc index d17d81b83c..ebb8e2b5a8 100644 --- a/token-stakedrop/README.adoc +++ b/token-stakedrop/README.adoc @@ -4,7 +4,7 @@ This is a tool for finding KEEP token owners on Ethereum (or on any other EVM-compatible chain). It iterates over predefined sources of truth (information) to find KEEP token owners at a target block number. The tool generates a Merkle tree used as an input to -https://github.com/keep-network/keep-core/blob/master/solidity/contracts/token-distribution/TokenDistributor.sol[`TokenDistributor`] +https://github.com/keep-network/keep-core/blob/master/solidity-v1/contracts/token-distribution/TokenDistributor.sol[`TokenDistributor`] contract airdropping another ERC20 token with amounts based on KEEP token balances.