mirror of
https://github.com/selfxyz/self.git
synced 2026-02-19 02:24:25 -05:00
Bump Babel, TypeScript, React Native and assorted dependencies; refresh lockfile (#1606)
* Update dependency versions * Fix gesture handler Android dependency (#1611) * Patch screens codegen type (#1609) * Downgrade Sentry React Native (#1612) * fix patches and packages * downgrade versions for gesture handler and screens * agent feedback * fix ios building * allow ios tets to pass * formatting * make cache more resilient * Address CodeRabbitAI review comments This commit addresses all 7 unresolved CodeRabbitAI comments on PR #1606: Patch-package error handling (comments #1, #2, #3): - stderr capture already implemented in both root and workspace patch runs - Add CI warning when patches fail silently instead of exiting with 0 - Log completion status in CI mode for visibility Critical Mixpanel dependency fix (comment #5): - Add explicit Mixpanel-swift pod declaration to fix E2E build failures - Ensures Mixpanel is available even when NFCPassportReader is skipped during E2E testing React-native-web validation (comment #4): - Verified no usage of deprecated findNodeHandle, pointerEvents: 'box-none', or createPortal - Safe to upgrade from 0.19 to 0.21.2 CI workflow improvements (comments #6, #7): - Create cache-sdk-build composite action for consistent SDK build artifact caching - Replace all direct actions/cache@v4 usage with cache-yarn composite action - Replace all direct actions/cache/restore@v4 and save@v4 with cache-sdk-build - Add nested require() validation step before tests to fail fast on problematic patterns All changes follow repository coding guidelines for CI caching and test memory optimization. * Extend cache composite actions to all SDK workflows This commit extends the caching standardization from PR #1606 to include mobile-sdk-ci.yml and core-sdk-ci.yml workflows. New composite actions created: - cache-mobile-sdk-build: For mobile SDK build artifacts - cache-core-sdk-build: For core SDK build artifacts Workflow updates: - mobile-sdk-ci.yml: Replaced 5 instances of direct actions/cache with cache-mobile-sdk-build - core-sdk-ci.yml: Replaced 4 instances of direct actions/cache with cache-core-sdk-build All SDK CI workflows now use consistent caching patterns via composite actions, following the AGENTS.md guideline: "Use shared composite actions from .github/actions for CI caching instead of calling actions/cache directly." Benefits: - Consistent caching across all SDK workflows (qrcode, mobile, core) - Centralized cache configuration - easier to maintain - Follows established patterns from qrcode-sdk-ci.yml * downgrade react-native-svg * update pod lock file * sort
This commit is contained in:
65
.github/workflows/core-sdk-ci.yml
vendored
65
.github/workflows/core-sdk-ci.yml
vendored
@@ -22,15 +22,10 @@ jobs:
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/core build
|
||||
- name: Cache build artifacts
|
||||
uses: actions/cache/save@v4
|
||||
uses: ./.github/actions/cache-core-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
sdk/core/dist
|
||||
node_modules
|
||||
sdk/core/node_modules
|
||||
common/node_modules
|
||||
key: core-sdk-build-${{ github.sha }}
|
||||
mode: save
|
||||
cache-version: v1
|
||||
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
@@ -45,19 +40,19 @@ jobs:
|
||||
corepack prepare yarn@4.12.0 --activate
|
||||
- name: Restore build artifacts
|
||||
id: build-cache
|
||||
uses: actions/cache/restore@v4
|
||||
uses: ./.github/actions/cache-core-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
sdk/core/dist
|
||||
node_modules
|
||||
sdk/core/node_modules
|
||||
common/node_modules
|
||||
key: core-sdk-build-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: v1
|
||||
fail-on-cache-miss: false
|
||||
- name: Install Dependencies
|
||||
if: steps.build-cache.outputs.cache-hit != 'true'
|
||||
uses: ./.github/actions/yarn-install
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.build-cache.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/core build
|
||||
- name: Run linter
|
||||
run: yarn workspace @selfxyz/core lint
|
||||
|
||||
@@ -74,19 +69,19 @@ jobs:
|
||||
corepack prepare yarn@4.12.0 --activate
|
||||
- name: Restore build artifacts
|
||||
id: build-cache
|
||||
uses: actions/cache/restore@v4
|
||||
uses: ./.github/actions/cache-core-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
sdk/core/dist
|
||||
node_modules
|
||||
sdk/core/node_modules
|
||||
common/node_modules
|
||||
key: core-sdk-build-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: v1
|
||||
fail-on-cache-miss: false
|
||||
- name: Install Dependencies
|
||||
if: steps.build-cache.outputs.cache-hit != 'true'
|
||||
uses: ./.github/actions/yarn-install
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.build-cache.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/core build
|
||||
- name: Type checking
|
||||
run: yarn workspace @selfxyz/core types
|
||||
|
||||
@@ -103,18 +98,18 @@ jobs:
|
||||
corepack prepare yarn@4.12.0 --activate
|
||||
- name: Restore build artifacts
|
||||
id: build-cache
|
||||
uses: actions/cache/restore@v4
|
||||
uses: ./.github/actions/cache-core-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
sdk/core/dist
|
||||
node_modules
|
||||
sdk/core/node_modules
|
||||
common/node_modules
|
||||
key: core-sdk-build-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: v1
|
||||
fail-on-cache-miss: false
|
||||
- name: Install Dependencies
|
||||
if: steps.build-cache.outputs.cache-hit != 'true'
|
||||
uses: ./.github/actions/yarn-install
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.build-cache.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/core build
|
||||
- name: Run tests
|
||||
run: yarn workspace @selfxyz/core test
|
||||
|
||||
87
.github/workflows/mobile-sdk-ci.yml
vendored
87
.github/workflows/mobile-sdk-ci.yml
vendored
@@ -21,15 +21,10 @@ jobs:
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/mobile-sdk-alpha build
|
||||
- name: Cache build artifacts
|
||||
uses: actions/cache/save@v4
|
||||
uses: ./.github/actions/cache-mobile-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
packages/mobile-sdk-alpha/dist
|
||||
node_modules
|
||||
packages/mobile-sdk-alpha/node_modules
|
||||
common/node_modules
|
||||
key: mobile-sdk-alpha-build-${{ github.sha }}
|
||||
mode: save
|
||||
cache-version: v1
|
||||
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
@@ -39,16 +34,17 @@ jobs:
|
||||
- name: Install Dependencies
|
||||
uses: ./.github/actions/yarn-install
|
||||
- name: Restore build artifacts
|
||||
uses: actions/cache/restore@v4
|
||||
id: restore-build
|
||||
uses: ./.github/actions/cache-mobile-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
packages/mobile-sdk-alpha/dist
|
||||
node_modules
|
||||
packages/mobile-sdk-alpha/node_modules
|
||||
common/node_modules
|
||||
key: mobile-sdk-alpha-build-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: v1
|
||||
fail-on-cache-miss: false
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.restore-build.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/mobile-sdk-alpha build
|
||||
- name: Run linter
|
||||
run: yarn workspace @selfxyz/mobile-sdk-alpha lint
|
||||
|
||||
@@ -60,16 +56,17 @@ jobs:
|
||||
- name: Install Dependencies
|
||||
uses: ./.github/actions/yarn-install
|
||||
- name: Restore build artifacts
|
||||
uses: actions/cache/restore@v4
|
||||
id: restore-build
|
||||
uses: ./.github/actions/cache-mobile-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
packages/mobile-sdk-alpha/dist
|
||||
node_modules
|
||||
packages/mobile-sdk-alpha/node_modules
|
||||
common/node_modules
|
||||
key: mobile-sdk-alpha-build-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: v1
|
||||
fail-on-cache-miss: false
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.restore-build.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/mobile-sdk-alpha build
|
||||
- name: Check Prettier formatting
|
||||
run: yarn workspace @selfxyz/mobile-sdk-alpha prettier --check .
|
||||
|
||||
@@ -81,16 +78,17 @@ jobs:
|
||||
- name: Install Dependencies
|
||||
uses: ./.github/actions/yarn-install
|
||||
- name: Restore build artifacts
|
||||
uses: actions/cache/restore@v4
|
||||
id: restore-build
|
||||
uses: ./.github/actions/cache-mobile-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
packages/mobile-sdk-alpha/dist
|
||||
node_modules
|
||||
packages/mobile-sdk-alpha/node_modules
|
||||
common/node_modules
|
||||
key: mobile-sdk-alpha-build-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: v1
|
||||
fail-on-cache-miss: false
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.restore-build.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/mobile-sdk-alpha build
|
||||
- name: Type checking
|
||||
run: yarn workspace @selfxyz/mobile-sdk-alpha types
|
||||
|
||||
@@ -102,15 +100,16 @@ jobs:
|
||||
- name: Install Dependencies
|
||||
uses: ./.github/actions/yarn-install
|
||||
- name: Restore build artifacts
|
||||
uses: actions/cache/restore@v4
|
||||
id: restore-build
|
||||
uses: ./.github/actions/cache-mobile-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
packages/mobile-sdk-alpha/dist
|
||||
node_modules
|
||||
packages/mobile-sdk-alpha/node_modules
|
||||
common/node_modules
|
||||
key: mobile-sdk-alpha-build-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: v1
|
||||
fail-on-cache-miss: false
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.restore-build.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/mobile-sdk-alpha build
|
||||
- name: Run tests
|
||||
run: yarn workspace @selfxyz/mobile-sdk-alpha test
|
||||
|
||||
99
.github/workflows/qrcode-sdk-ci.yml
vendored
99
.github/workflows/qrcode-sdk-ci.yml
vendored
@@ -50,16 +50,14 @@ jobs:
|
||||
|
||||
- name: Cache Yarn dependencies
|
||||
id: yarn-cache
|
||||
uses: actions/cache@v4
|
||||
uses: ./.github/actions/cache-yarn
|
||||
with:
|
||||
path: |
|
||||
.yarn/cache
|
||||
node_modules
|
||||
sdk/qrcode/node_modules
|
||||
common/node_modules
|
||||
key: ${{ runner.os }}-${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}-yarn-${{ hashFiles('yarn.lock') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}-yarn-
|
||||
cache-version: ${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}
|
||||
|
||||
- name: Install Dependencies
|
||||
uses: ./.github/actions/yarn-install
|
||||
@@ -72,13 +70,10 @@ jobs:
|
||||
yarn workspace @selfxyz/qrcode build
|
||||
|
||||
- name: Cache build artifacts
|
||||
uses: actions/cache/save@v4
|
||||
uses: ./.github/actions/cache-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
sdk/sdk-common/dist
|
||||
sdk/qrcode/dist
|
||||
key: qrcode-sdk-build-${{ env.GH_SDK_CACHE_VERSION }}-${{ github.sha }}
|
||||
mode: save
|
||||
cache-version: ${{ env.GH_SDK_CACHE_VERSION }}
|
||||
|
||||
# Quality checks job
|
||||
quality-checks:
|
||||
@@ -110,29 +105,32 @@ jobs:
|
||||
|
||||
- name: Cache Yarn dependencies
|
||||
id: yarn-cache
|
||||
uses: actions/cache@v4
|
||||
uses: ./.github/actions/cache-yarn
|
||||
with:
|
||||
path: |
|
||||
.yarn/cache
|
||||
node_modules
|
||||
sdk/qrcode/node_modules
|
||||
common/node_modules
|
||||
key: ${{ runner.os }}-${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}-yarn-${{ hashFiles('yarn.lock') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}-yarn-
|
||||
cache-version: ${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}
|
||||
|
||||
- name: Install Dependencies
|
||||
uses: ./.github/actions/yarn-install
|
||||
|
||||
- name: Restore build artifacts
|
||||
uses: actions/cache/restore@v4
|
||||
id: restore-build
|
||||
uses: ./.github/actions/cache-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
sdk/sdk-common/dist
|
||||
sdk/qrcode/dist
|
||||
key: qrcode-sdk-build-${{ env.GH_SDK_CACHE_VERSION }}-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: ${{ env.GH_SDK_CACHE_VERSION }}
|
||||
fail-on-cache-miss: false
|
||||
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.restore-build.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/sdk-common build
|
||||
yarn workspace @selfxyz/qrcode build
|
||||
|
||||
- name: Run linter
|
||||
run: yarn workspace @selfxyz/qrcode lint:imports:check
|
||||
@@ -178,29 +176,32 @@ jobs:
|
||||
|
||||
- name: Cache Yarn dependencies
|
||||
id: yarn-cache
|
||||
uses: actions/cache@v4
|
||||
uses: ./.github/actions/cache-yarn
|
||||
with:
|
||||
path: |
|
||||
.yarn/cache
|
||||
node_modules
|
||||
sdk/qrcode/node_modules
|
||||
common/node_modules
|
||||
key: ${{ runner.os }}-${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}-yarn-${{ hashFiles('yarn.lock') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}-yarn-
|
||||
cache-version: ${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}
|
||||
|
||||
- name: Install Dependencies
|
||||
uses: ./.github/actions/yarn-install
|
||||
|
||||
- name: Restore build artifacts
|
||||
uses: actions/cache/restore@v4
|
||||
id: restore-build
|
||||
uses: ./.github/actions/cache-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
sdk/sdk-common/dist
|
||||
sdk/qrcode/dist
|
||||
key: qrcode-sdk-build-${{ env.GH_SDK_CACHE_VERSION }}-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: ${{ env.GH_SDK_CACHE_VERSION }}
|
||||
fail-on-cache-miss: false
|
||||
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.restore-build.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/sdk-common build
|
||||
yarn workspace @selfxyz/qrcode build
|
||||
|
||||
- name: Verify build artifacts
|
||||
run: |
|
||||
@@ -240,29 +241,41 @@ jobs:
|
||||
|
||||
- name: Cache Yarn dependencies
|
||||
id: yarn-cache
|
||||
uses: actions/cache@v4
|
||||
uses: ./.github/actions/cache-yarn
|
||||
with:
|
||||
path: |
|
||||
.yarn/cache
|
||||
node_modules
|
||||
sdk/qrcode/node_modules
|
||||
common/node_modules
|
||||
key: ${{ runner.os }}-${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}-yarn-${{ hashFiles('yarn.lock') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}-yarn-
|
||||
cache-version: ${{ env.GH_YARN_CACHE_VERSION }}-node-${{ env.NODE_VERSION_SANITIZED }}
|
||||
|
||||
- name: Install Dependencies
|
||||
uses: ./.github/actions/yarn-install
|
||||
|
||||
- name: Restore build artifacts
|
||||
uses: actions/cache/restore@v4
|
||||
id: restore-build
|
||||
uses: ./.github/actions/cache-sdk-build
|
||||
with:
|
||||
path: |
|
||||
common/dist
|
||||
sdk/sdk-common/dist
|
||||
sdk/qrcode/dist
|
||||
key: qrcode-sdk-build-${{ env.GH_SDK_CACHE_VERSION }}-${{ github.sha }}
|
||||
fail-on-cache-miss: true
|
||||
mode: restore
|
||||
cache-version: ${{ env.GH_SDK_CACHE_VERSION }}
|
||||
fail-on-cache-miss: false
|
||||
|
||||
- name: Build dependencies (fallback on cache miss)
|
||||
if: steps.restore-build.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
yarn workspace @selfxyz/common build
|
||||
yarn workspace @selfxyz/sdk-common build
|
||||
yarn workspace @selfxyz/qrcode build
|
||||
|
||||
- name: Check for nested require() in tests
|
||||
run: |
|
||||
# Check SDK tests for nested require patterns that cause OOM
|
||||
if grep -rE "require\(['\"]react(-native)?['\"])" sdk/qrcode/src/ sdk/qrcode/tests/ 2>/dev/null; then
|
||||
echo "❌ Found nested require() patterns that cause OOM in CI"
|
||||
exit 1
|
||||
fi
|
||||
echo "✅ No nested require() patterns found"
|
||||
|
||||
- name: Run tests
|
||||
run: yarn workspace @selfxyz/qrcode test
|
||||
|
||||
Reference in New Issue
Block a user