From 354dc65cccb4d549c120adf8f5275baa5de294e5 Mon Sep 17 00:00:00 2001 From: Arseniy Klempner Date: Fri, 21 Nov 2025 14:04:07 -0800 Subject: [PATCH] fix: install deps for rln package before building --- .github/workflows/ci.yml | 25 +++++++++++++++---------- .github/workflows/pre-release.yml | 23 ++++++++++++++--------- package-lock.json | 23 +---------------------- 3 files changed, 30 insertions(+), 41 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9bf8c5939c..d2976ac0d0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -116,30 +116,35 @@ jobs: - run: npm install if: ${{ steps.release.outputs.releases_created }} + - run: npm run build + if: ${{ steps.release.outputs.releases_created }} + - name: Setup Foundry if: ${{ steps.release.outputs.releases_created }} uses: foundry-rs/foundry-toolchain@v1 with: version: nightly - - name: Generate RLN contract ABIs and verify build + - name: Generate RLN contract ABIs + id: rln-abi if: ${{ steps.release.outputs.releases_created }} run: | cd packages/rln npm run setup:contract-abi || { echo "::warning::Failed to generate contract ABIs, marking @waku/rln as private to skip publishing" node -e "const fs = require('fs'); const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8')); pkg.private = true; fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2));" - exit 0 + echo "failed=true" >> $GITHUB_OUTPUT } - npm run build || { - echo "::warning::Failed to build @waku/rln, marking as private to skip publishing" - node -e "const fs = require('fs'); const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8')); pkg.private = true; fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2));" - exit 0 - } - cd ../.. - - run: npm run build - if: ${{ steps.release.outputs.releases_created }} + - name: Rebuild with new ABIs + if: ${{ steps.release.outputs.releases_created && steps.rln-abi.outputs.failed != 'true' }} + run: | + npm install -w packages/rln + npm run build -w @waku/rln || { + echo "::warning::Failed to build @waku/rln, marking as private to skip publishing" + cd packages/rln + node -e "const fs = require('fs'); const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8')); pkg.private = true; fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2));" + } - run: npm run publish if: ${{ steps.release.outputs.releases_created }} diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml index d2dc54ab64..150713be72 100644 --- a/.github/workflows/pre-release.yml +++ b/.github/workflows/pre-release.yml @@ -25,27 +25,32 @@ jobs: - run: npm install + - run: npm run build + - name: Setup Foundry uses: foundry-rs/foundry-toolchain@v1 with: version: nightly - - name: Generate RLN contract ABIs and verify build + - name: Generate RLN contract ABIs + id: rln-abi run: | cd packages/rln npm run setup:contract-abi || { echo "::warning::Failed to generate contract ABIs, marking @waku/rln as private to skip publishing" node -e "const fs = require('fs'); const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8')); pkg.private = true; fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2));" - exit 0 + echo "failed=true" >> $GITHUB_OUTPUT } - npm run build || { - echo "::warning::Failed to build @waku/rln, marking as private to skip publishing" - node -e "const fs = require('fs'); const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8')); pkg.private = true; fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2));" - exit 0 - } - cd ../.. - - run: npm run build + - name: Rebuild with new ABIs + if: steps.rln-abi.outputs.failed != 'true' + run: | + npm install -w packages/rln + npm run build -w @waku/rln || { + echo "::warning::Failed to build @waku/rln, marking as private to skip publishing" + cd packages/rln + node -e "const fs = require('fs'); const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8')); pkg.private = true; fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2));" + } - run: npm run publish -- --tag next env: diff --git a/package-lock.json b/package-lock.json index 912a4f0258..5af6364b73 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31414,26 +31414,6 @@ "devOptional": true, "license": "0BSD" }, - "node_modules/tsx": { - "version": "4.20.6", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.20.6.tgz", - "integrity": "sha512-ytQKuwgmrrkDTFP4LjR0ToE2nqgy886GpvRSpU0JAnrdBYppuY5rLkRUYPU1yCryb24SsKBTL/hlDQAEFVwtZg==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "~0.25.0", - "get-tsconfig": "^4.7.5" - }, - "bin": { - "tsx": "dist/cli.mjs" - }, - "engines": { - "node": ">=18.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - } - }, "node_modules/tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", @@ -34781,8 +34761,7 @@ "@waku/message-encryption": "^0.0.37", "deep-equal-in-any-order": "^2.0.6", "fast-check": "^3.23.2", - "rollup-plugin-copy": "^3.5.0", - "tsx": "^4.19.2" + "rollup-plugin-copy": "^3.5.0" }, "engines": { "node": ">=22"