Skip to content

Check TypeScript with different React Native versions #152

Check TypeScript with different React Native versions

Check TypeScript with different React Native versions #152

name: Check TypeScript with different React Native versions
env:
YARN_ENABLE_HARDENED_MODE: 0
on:
pull_request:
paths:
- .github/workflows/check-TS-react-native.yml
schedule:
- cron: '37 19 * * *'
workflow_dispatch:
jobs:
run:
if: github.repository == 'software-mansion/react-native-reanimated'
runs-on: ubuntu-latest
strategy:
matrix:
react-native-version: ['0.71', '0.72', '0.73', '0.74', nightly]
fail-fast: false
concurrency:
group: TS-react-native-nightly-${{ matrix.react-native-version }}-${{ github.ref }}
cancel-in-progress: true
steps:
- name: checkout
uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v4
with:
cache: 'yarn'
- name: Clear annotations
run: .github/workflows/helper/clear-annotations.sh
- name: Install monorepo node dependencies
run: yarn install
- name: Install Reanimated node dependencies
working-directory: packages/react-native-reanimated
run: yarn install
- name: Build Reanimated node dependencies
working-directory: packages/react-native-reanimated
run: yarn build
- name: Install react-native ${{ matrix.react-native-version }}
run: yarn up react-native@${{ matrix.react-native-version }}
- name: Check source types
working-directory: packages/react-native-reanimated
run: yarn type:check:src
- name: Check plugin types
working-directory: packages/react-native-reanimated
run: yarn type:check:plugin
- name: Check API
working-directory: packages/react-native-reanimated
run: yarn type:check:app
- name: Run common type tests
working-directory: packages/react-native-reanimated
run: yarn type:check:tests:common
- name: Run 0.72+ type tests
working-directory: packages/react-native-reanimated
if: matrix.react-native-version != '0.71'
run: yarn type:check:tests:0.72+