Skip to content

Commit 1de50eb

Browse files
authored
Modernize project tooling, CI, and example apps (#391)
1 parent f949b08 commit 1de50eb

245 files changed

Lines changed: 16269 additions & 32901 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.circleci/config.yml

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ version: 2.1
33
executors:
44
default:
55
docker:
6-
- image: circleci/node:10
6+
- image: cimg/node:22.11
77
working_directory: ~/project
88

99
commands:
@@ -22,21 +22,13 @@ jobs:
2222
keys:
2323
- dependencies-{{ checksum "package.json" }}
2424
- dependencies-
25-
- restore_cache:
26-
keys:
27-
- dependencies-example-{{ checksum "example/package.json" }}
28-
- dependencies-example-
2925
- run:
3026
name: Install dependencies
3127
command: |
32-
yarn install --cwd example --frozen-lockfile
33-
yarn install --frozen-lockfile
28+
yarn install --immutable
3429
- save_cache:
3530
key: dependencies-{{ checksum "package.json" }}
3631
paths: node_modules
37-
- save_cache:
38-
key: dependencies-example-{{ checksum "example/package.json" }}
39-
paths: example/node_modules
4032
- persist_to_workspace:
4133
root: .
4234
paths: .
@@ -57,7 +49,7 @@ jobs:
5749
- run:
5850
name: Typecheck files
5951
command: |
60-
yarn typescript
52+
yarn typecheck
6153
6254
unit-tests:
6355
executor: default
@@ -78,7 +70,7 @@ jobs:
7870
- run:
7971
name: Build package
8072
command: |
81-
yarn prepare
73+
yarn prepack
8274
8375
workflows:
8476
build-and-test:

.github/stale.yml

Lines changed: 0 additions & 18 deletions
This file was deleted.

.github/workflows/build-android.yml

Lines changed: 11 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -7,55 +7,41 @@ on:
77
paths:
88
- '.github/workflows/build-android.yml'
99
- 'android/**'
10-
- 'example/android/**'
10+
- 'examples/bare/android/**'
1111
- 'yarn.lock'
12-
- 'example/yarn.lock'
1312
- 'src/Spec/**'
1413
pull_request:
1514
paths:
1615
- '.github/workflows/build-android.yml'
1716
- 'android/**'
18-
- 'example/android/**'
17+
- 'examples/bare/android/**'
1918
- 'yarn.lock'
20-
- 'example/yarn.lock'
2119
- 'src/Spec/**'
2220

2321
jobs:
2422
build_example:
2523
name: Build Android Example App
2624
runs-on: ubuntu-latest
2725
steps:
28-
- uses: actions/checkout@v2
26+
- uses: actions/checkout@v4
2927

30-
- name: Setup JDK 11
31-
uses: actions/setup-java@v1
28+
- name: Setup JDK 17
29+
uses: actions/setup-java@v4
3230
with:
33-
java-version: 11
31+
distribution: 'zulu'
32+
java-version: 17
3433

35-
- name: Get yarn cache directory path
36-
id: yarn-cache-dir-path
37-
run: echo "::set-output name=dir::$(yarn cache dir)"
38-
- name: Restore node_modules from cache
39-
uses: actions/cache@v2
40-
id: yarn-cache
41-
with:
42-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
43-
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
44-
restore-keys: |
45-
${{ runner.os }}-yarn-
4634
- name: Install node_modules
47-
run: yarn install --frozen-lockfile
48-
- name: Install node_modules for example/
49-
run: yarn install --frozen-lockfile --cwd example
35+
run: yarn install --immutable
5036

5137
- name: Restore Gradle cache
52-
uses: actions/cache@v2
38+
uses: actions/cache@v4
5339
with:
5440
path: |
5541
~/.gradle/caches
5642
~/.gradle/wrapper
5743
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
5844
restore-keys: |
5945
${{ runner.os }}-gradle-
60-
- name: Run Gradle Build for example/android/
61-
run: cd example/android && ./gradlew assembleDebug --build-cache && cd ../..
46+
- name: Run Gradle Build for examples/bare/android/
47+
run: cd examples/bare/android && ./gradlew assembleDebug --build-cache && cd ../../..

.github/workflows/build-ios.yml

Lines changed: 16 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,19 @@ name: Build iOS App
33
on:
44
push:
55
branches:
6-
- master
6+
- main
77
paths:
88
- '.github/workflows/build-ios.yml'
99
- 'ios/**'
1010
- '*.podspec'
11-
- 'example/ios/**'
11+
- 'examples/bare/ios/**'
1212
- 'src/Spec/**'
1313
pull_request:
1414
paths:
1515
- '.github/workflows/build-ios.yml'
1616
- 'ios/**'
1717
- '*.podspec'
18-
- 'example/ios/**'
18+
- 'examples/bare/ios/**'
1919
- 'src/Spec/**'
2020

2121
jobs:
@@ -24,23 +24,13 @@ jobs:
2424
runs-on: macOS-latest
2525
defaults:
2626
run:
27-
working-directory: example/ios
27+
working-directory: examples/bare/ios
2828
steps:
29-
- uses: actions/checkout@v2
29+
- uses: actions/checkout@v4
3030

31-
- name: Get yarn cache directory path
32-
id: yarn-cache-dir-path
33-
run: echo "::set-output name=dir::$(yarn cache dir)"
34-
- name: Restore node_modules from cache
35-
uses: actions/cache@v2
36-
id: yarn-cache
37-
with:
38-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
39-
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
40-
restore-keys: |
41-
${{ runner.os }}-yarn-
42-
- name: Install node_modules for example/
43-
run: yarn install --frozen-lockfile --cwd ..
31+
- name: Install node_modules
32+
run: yarn install --immutable
33+
working-directory: .
4434

4535
- name: Restore buildcache
4636
uses: mikehardy/buildcache-action@v1
@@ -49,32 +39,32 @@ jobs:
4939
- name: Setup Ruby (bundle)
5040
uses: ruby/setup-ruby@v1
5141
with:
52-
ruby-version: 2.7
42+
ruby-version: 3.2
5343
bundler-cache: true
54-
working-directory: example/ios
44+
working-directory: examples/bare
5545

5646
- name: Restore Pods cache
57-
uses: actions/cache@v2
47+
uses: actions/cache@v4
5848
with:
5949
path: |
60-
example/ios/Pods
50+
examples/bare/ios/Pods
6151
~/Library/Caches/CocoaPods
6252
~/.cocoapods
6353
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }}
6454
restore-keys: |
6555
${{ runner.os }}-pods-
6656
- name: Install Pods
67-
run: bundle exec pod check || NO_FLIPPER=1 RCT_NEW_ARCH_ENABLED=1 bundle exec pod install
57+
run: bundle exec pod check || bundle exec pod install
6858
- name: Install xcpretty
6959
run: gem install xcpretty
7060
- name: Build App
7161
run: "set -o pipefail && xcodebuild \
7262
CC=clang CPLUSPLUS=clang++ LD=clang LDPLUSPLUS=clang++ \
7363
-derivedDataPath build -UseModernBuildSystem=YES \
74-
-workspace CompressorExample.xcworkspace \
75-
-scheme CompressorExample \
64+
-workspace BareExample.xcworkspace \
65+
-scheme BareExample \
7666
-sdk iphonesimulator \
7767
-configuration Debug \
78-
-destination 'platform=iOS Simulator,name=iPhone 11 Pro' \
68+
-destination 'platform=iOS Simulator,name=iPhone 15 Pro' \
7969
build \
8070
CODE_SIGNING_ALLOWED=NO | xcpretty"

.github/workflows/stale-bot.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
issues: write
1010
pull-requests: write
1111
steps:
12-
- uses: actions/stale@v4
12+
- uses: actions/stale@v9
1313
with:
1414
repo-token: ${{ secrets.GITHUB_TOKEN }}
1515
days-before-stale: 365

.github/workflows/validate-android.yml

Lines changed: 11 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Validate Android
33
on:
44
push:
55
branches:
6-
- master
6+
- main
77
paths:
88
- '.github/workflows/validate-android.yml'
99
- 'android/**'
@@ -20,32 +20,21 @@ jobs:
2020
runs-on: ubuntu-latest
2121
defaults:
2222
run:
23-
working-directory: ./example/android
23+
working-directory: ./examples/bare/android
2424
steps:
25-
- uses: actions/checkout@v2
26-
- name: Setup JDK 11
27-
uses: actions/setup-java@v1
25+
- uses: actions/checkout@v4
26+
- name: Setup JDK 17
27+
uses: actions/setup-java@v4
2828
with:
29-
java-version: 11
29+
distribution: 'zulu'
30+
java-version: 17
3031

31-
- name: Get yarn cache directory path
32-
id: yarn-cache-dir-path
33-
run: echo "::set-output name=dir::$(yarn cache dir)"
34-
- name: Restore node_modules from cache
35-
uses: actions/cache@v2
36-
id: yarn-cache
37-
with:
38-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
39-
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
40-
restore-keys: |
41-
${{ runner.os }}-yarn-
4232
- name: Install node_modules
43-
run: yarn install --frozen-lockfile --cwd ../..
44-
- name: Install node_modules for example/
45-
run: yarn install --frozen-lockfile --cwd ..
33+
run: yarn install --immutable
34+
working-directory: .
4635

4736
- name: Restore Gradle cache
48-
uses: actions/cache@v2
37+
uses: actions/cache@v4
4938
with:
5039
path: |
5140
~/.gradle/caches
@@ -59,4 +48,4 @@ jobs:
5948
- name: Parse Gradle Lint Report
6049
uses: yutailang0119/action-android-lint@v3.1.0
6150
with:
62-
report-path: example/android/build/reports/lint-results.xml
51+
report-path: examples/bare/android/build/reports/lint-results.xml

0 commit comments

Comments
 (0)