From 89aae390afd1a5cfee982fea4b7614bb8dc8bd22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Pedro=20Sousa?= Date: Mon, 18 Dec 2023 17:55:59 +0000 Subject: [PATCH] wip --- .github/actions/setup/action.yml | 2 +- .github/scripts/latestStable.js | 43 ++++++++++++++++++++++++++++++++ .github/workflows/nightly.yaml | 30 +++++++++++++++++++--- vite-hardhat/yarn.lock | 34 +++++++++++++++++-------- 4 files changed, 93 insertions(+), 16 deletions(-) create mode 100644 .github/scripts/latestStable.js diff --git a/.github/actions/setup/action.yml b/.github/actions/setup/action.yml index 04df6ed..af53672 100644 --- a/.github/actions/setup/action.yml +++ b/.github/actions/setup/action.yml @@ -27,7 +27,7 @@ runs: - name: Install Nargo uses: noir-lang/noirup@v0.1.2 with: - toolchain: ${{ inputs.version == 'latest' && 'stable' || inputs.version }} + toolchain: ${{ inputs.version }} - name: Use Nargo run: nargo --version diff --git a/.github/scripts/latestStable.js b/.github/scripts/latestStable.js new file mode 100644 index 0000000..79b92e6 --- /dev/null +++ b/.github/scripts/latestStable.js @@ -0,0 +1,43 @@ +const { writeFileSync } = require('fs'); + +async function main() { + const fetchOpts = { + headers: {}, + }; + + if (process.env.GITHUB_TOKEN) + fetchOpts.headers = { Authorization: `token ${process.env.GITHUB_TOKEN}` }; + + const res = await fetch('https://api.github.com/repos/noir-lang/noir/releases', fetchOpts); + + const data = await res.json(); + + const latestStable = data + .filter(release => !release.tag_name.includes('aztec')) + .filter(release => !release.prerelease) + .map(release => release.tag_name) + .shift(); + + // const latestNightly = data + // .filter(release => !release.tag_name.includes('aztec')) + // .filter(release => release.prerelease) + // .map(release => release.tag_name) + // .shift(); + + // for (let release of releases) { + // const tagName = release.tag_name; + // const tagRes = await fetch( + // `https://api.github.com/repos/noir-lang/noir/git/ref/tags/${tagName}`, + // fetchOpts, + // ); + // const tagData = await tagRes.json(); + + // // Attach commit SHA to release + // release.commit_sha = tagData.object.sha; + // } + + // const output = JSON.stringify([latestStable]); + console.log(JSON.stringify([latestStable])); // DON'T REMOVE, GITHUB WILL CAPTURE THIS OUTPUT +} + +main(); diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 0b3672d..21dbe80 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -9,14 +9,36 @@ on: # - 'vite-hardhat/**' jobs: + setup: + runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + steps: + - uses: actions/checkout@v4 + + - name: Get versions to test for drift + id: versions_step + run: | + output=$(node ./.github/scripts/latestStable.js) + echo "Output from Node.js script: $output" + echo "::set-output name=versionArray::$output" + + - name: Set Up Matrix + id: set-matrix + run: | + VERSIONS='${{ steps.versions_step.outputs.versionArray }}' + echo "Versions for Matrix: $VERSIONS" + MATRIX=$(echo "$VERSIONS" | jq -c '[.[] | {version: .}]') + echo "::set-output name=matrix::{\"include\":$MATRIX}" + test-drift-vite-hardhat: + needs: setup runs-on: ubuntu-latest defaults: run: working-directory: vite-hardhat strategy: - matrix: - version: ['latest'] + matrix: ${{fromJson(needs.setup.outputs.matrix)}} steps: - uses: actions/checkout@v4 @@ -48,5 +70,5 @@ jobs: echo MUMBAI_ALCHEMY_KEY"=${{ secrets.MUMBAI_ALCHEMY_KEY }}" >> .env echo MUMBAI_DEPLOYER_PRIVATE_KEY="${{ secrets.MUMBAI_DEPLOYER_PRIVATE_KEY }}" >> .env - - name: Run test - run: yarn test + # - name: Run test + # run: yarn test diff --git a/vite-hardhat/yarn.lock b/vite-hardhat/yarn.lock index b07042a..a7c6ee7 100644 --- a/vite-hardhat/yarn.lock +++ b/vite-hardhat/yarn.lock @@ -756,10 +756,10 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@noir-lang/acvm_js@0.35.0": - version "0.35.0" - resolved "https://registry.yarnpkg.com/@noir-lang/acvm_js/-/acvm_js-0.35.0.tgz#81130d0236c259b2fb47b0d8efc577bbb5ee18f9" - integrity sha512-LiQUSF3P4/1VGfMZc0hSivLs4oiPsRt+ADFBMF7sOg4oaImeQ4L6tu0Og2Wh1Pc0k2y1EXdv1EKxN2N1WRDdKg== +"@noir-lang/acvm_js@0.37.1": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@noir-lang/acvm_js/-/acvm_js-0.37.1.tgz#5cf3523a4a07e6c0cad95084afa633ce2e9d5600" + integrity sha512-VBAq2XoyTnxQyjJ6YNwnWMFZRZfPedJRm+tazDhzcilk85gzjet+yvDWB7VekjG3VY3q+WFo8zI9xbltoTTmPg== "@noir-lang/backend_barretenberg@^0.19.4": version "0.19.4" @@ -770,14 +770,14 @@ "@noir-lang/types" "0.19.4" fflate "^0.8.0" -"@noir-lang/noir_js@^0.19.4": - version "0.19.4" - resolved "https://registry.yarnpkg.com/@noir-lang/noir_js/-/noir_js-0.19.4.tgz#e71fc27e28a17cd03b21e498aaaf0f901b2bb75e" - integrity sha512-V/3jLoor3dMuYuv0ad154M0Ko1xZWxx0qoRDLC/Y/xMH5Wbe5yH4yOvBjCXzQ0dLG5JX1IWGOCC7xxzpStk+hA== +"@noir-lang/noir_js@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@noir-lang/noir_js/-/noir_js-0.21.0.tgz#df9ceaee68cb186c5cd816dc6176f6eb6ccf7db3" + integrity sha512-KqB5HAC64WGc1yddxAycbDUaUICp5F0foTLgtjQzJLLxRSxlQEa3uomtoLV0ocCFdF4MQd9S6tywgehHVTwvoQ== dependencies: - "@noir-lang/acvm_js" "0.35.0" - "@noir-lang/noirc_abi" "0.19.4" - "@noir-lang/types" "0.19.4" + "@noir-lang/acvm_js" "0.37.1" + "@noir-lang/noirc_abi" "0.21.0" + "@noir-lang/types" "0.21.0" "@noir-lang/noir_wasm@^0.19.4": version "0.19.4" @@ -789,6 +789,11 @@ resolved "https://registry.yarnpkg.com/@noir-lang/noirc_abi/-/noirc_abi-0.19.4.tgz#a51e76efabf70d49de92ca0a114ef5721ab857a4" integrity sha512-g3fa3rVGyvnqu1BQdXytCPzIFQDvK1kH9uMjNrEz5UG/LKl+EPvIl1Te8FcOsSi5/eVSbMWveyz3HJu+SwMjDQ== +"@noir-lang/noirc_abi@0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@noir-lang/noirc_abi/-/noirc_abi-0.21.0.tgz#00d9771e79855375dd00d0f978dc823fa3b9f35e" + integrity sha512-vVM1QRTFecZdCXminhgoW3sBsZJMsHOO+Sh8rG353r+n4GSgNR/oP3OQEOHlaJgq2wT9hCqcFU4gT954DfzawA== + "@noir-lang/source-resolver@^0.19.4": version "0.19.4" resolved "https://registry.yarnpkg.com/@noir-lang/source-resolver/-/source-resolver-0.19.4.tgz#cd1fb5909e783f45ccd8ee90fbd9bba406da0634" @@ -801,6 +806,13 @@ dependencies: "@noir-lang/noirc_abi" "0.19.4" +"@noir-lang/types@0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@noir-lang/types/-/types-0.21.0.tgz#c64d9b25c48522c4b5edadd657bcaddf6c872b21" + integrity sha512-v6CC04mvydBOGMVRCQd9Ytvz5Bjn0pGCE5ENDD+ROjs6+U5wShW5InFBQu5j9UixKybYUtuXk+5TMpuJ/yagog== + dependencies: + "@noir-lang/noirc_abi" "0.21.0" + "@nomicfoundation/ethereumjs-block@5.0.2": version "5.0.2" resolved "https://registry.yarnpkg.com/@nomicfoundation/ethereumjs-block/-/ethereumjs-block-5.0.2.tgz#13a7968f5964f1697da941281b7f7943b0465d04"