Skip to content

Commit fa177df

Browse files
authored
Create new package to support React Native 0.69 (#442)
* First pass Playground project generation. * Missing dependencies and configurations. Works on iOS. * Downgrade Gradle and NDK version version, add java source files. * Add support for M1 chips disable AA in playground to fix rendering error on Samsung devices. Fix .gitignore, add back missing files from iOS project. * Add skeleton for windows support to 0.69 playground * Upgrade gradle and build tools to fix android build issues on Windows. * Update .yml files * Skeleton for PackageTest project. * Revert "Upgrade gradle and build tools to fix android build issues on Windows." This reverts commit 1bf5763. * Add back .gitignore and metro.config.js chjanges * update for PackageTest after testing with local packages. * Update 0.69 gitignore for windows files * Set up JDK version for 0.69 builds. * Fix setup-java reference. * Properly format input for java-version * Add job to publish 0.69 to publish_preview.yml * Update README.md * Update readme, and re-enable AA. * Remove unneeded compileOptions hook that was causing build errors in the Playground on Mac.
1 parent 719cf11 commit fa177df

File tree

181 files changed

+54979
-11
lines changed

Some content is hidden

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

181 files changed

+54979
-11
lines changed

.github/workflows/ios_android.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ on:
99
release-version:
1010
required: true
1111
type: string
12+
java-version:
13+
required: false
14+
type: string
15+
default: '8'
1216

1317
jobs:
1418
Build:
@@ -22,6 +26,11 @@ jobs:
2226
uses: jwlawson/[email protected]
2327
with:
2428
cmake-version: '3.19.6' # See https://gitlab.kitware.com/cmake/cmake/-/issues/22021
29+
- name: Set up JDK
30+
uses: actions/setup-java@v2
31+
with:
32+
distribution: 'zulu'
33+
java-version: ${{ inputs.java-version }}
2534
- name: Setup Ninja
2635
run: brew install ninja
2736
- name: NPM Install (Playground)

.github/workflows/pr.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,15 +125,29 @@ jobs:
125125
build-android-ios-065:
126126
uses: ./.github/workflows/ios_android.yml
127127
with:
128+
java-version: '8'
128129
react-native-version: 0.65
129130
release-version: 0.0.${GITHUB_SHA::8}
130131

132+
build-android-ios-069:
133+
uses: ./.github/workflows/ios_android.yml
134+
with:
135+
java-version: '11'
136+
react-native-version: 0.69
137+
release-version: 0.0.${GITHUB_SHA::8}
138+
131139
build-windows-065:
132140
uses: ./.github/workflows/windows.yml
133141
with:
134142
react-native-version: 0.65
135143
release-version: 0.0.${GITHUB_SHA::8}
136144

145+
build-windows-069:
146+
uses: ./.github/workflows/windows.yml
147+
with:
148+
react-native-version: 0.69
149+
release-version: 0.0.${GITHUB_SHA::8}
150+
137151
build-typescript:
138152
uses: ./.github/workflows/typescript.yml
139153
with:

.github/workflows/publish.yml

Lines changed: 41 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,23 @@ jobs:
77
build-android-ios-064:
88
uses: ./.github/workflows/ios_android.yml
99
with:
10+
java-version: '8'
1011
react-native-version: 0.64
1112
release-version: ${GITHUB_REF/refs\/tags\//}
1213

1314
build-android-ios-065:
1415
uses: ./.github/workflows/ios_android.yml
1516
with:
17+
java-version: '8'
1618
react-native-version: 0.65
1719
release-version: ${GITHUB_REF/refs\/tags\//}
20+
21+
build-android-ios-069:
22+
uses: ./.github/workflows/ios_android.yml
23+
with:
24+
java-version: '11'
25+
react-native-version: 0.69
26+
release-version: ${GITHUB_REF/refs\/tags\//}
1827

1928
build-windows-064:
2029
uses: ./.github/workflows/windows.yml
@@ -28,13 +37,19 @@ jobs:
2837
react-native-version: 0.65
2938
release-version: ${GITHUB_REF/refs\/tags\//}
3039

40+
build-windows-069:
41+
uses: ./.github/workflows/windows.yml
42+
with:
43+
react-native-version: 0.69
44+
release-version: ${GITHUB_REF/refs\/tags\//}
45+
3146
build-typescript:
3247
uses: ./.github/workflows/typescript.yml
3348
with:
3449
release-version: ${GITHUB_REF/refs\/tags\//}
3550

3651
package:
37-
needs: [build-typescript, build-android-ios-064, build-android-ios-065, build-windows-064, build-windows-065]
52+
needs: [build-typescript, build-android-ios-064, build-android-ios-065, build-android-ios-069, build-windows-064, build-windows-065, build-windows-069]
3853
runs-on: macos-latest
3954
steps:
4055
- name: Checkout Repo
@@ -57,6 +72,11 @@ jobs:
5772
with:
5873
name: 'Assembled-iOSAndroid0.65'
5974
path: Package/Assembled-iOSAndroid0.65
75+
- name: Download Assembled-iOSAndroid 0.69 Folder
76+
uses: actions/download-artifact@v2
77+
with:
78+
name: 'Assembled-iOSAndroid0.69'
79+
path: Package/Assembled-iOSAndroid0.69
6080
- name: Download Assembled-Windows 0.64 Folder
6181
uses: actions/download-artifact@v2
6282
with:
@@ -67,6 +87,11 @@ jobs:
6787
with:
6888
name: 'Assembled-Windows0.65'
6989
path: Package/Assembled-Windows0.65
90+
- name: Download Assembled-Windows 0.69 Folder
91+
uses: actions/download-artifact@v2
92+
with:
93+
name: 'Assembled-Windows0.69'
94+
path: Package/Assembled-Windows0.69
7095
- name: Display structure of downloaded Assembled and Assembled-Windows folders
7196
run: ls -R
7297
- name: Setup Node.js
@@ -97,6 +122,13 @@ jobs:
97122
working-directory: ./Package/Assembled-iOSAndroid0.65
98123
env:
99124
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
125+
- name: Version & Publish Package @babylonjs/react-native-iosandroid-0-69
126+
run: |
127+
npm version --no-git-tag-version ${GITHUB_REF/refs\/tags\//}
128+
npm publish --access public
129+
working-directory: ./Package/Assembled-iOSAndroid0.69
130+
env:
131+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
100132

101133
- name: Version & Publish Package @babylonjs/react-native-windows-0-64
102134
run: |
@@ -111,4 +143,11 @@ jobs:
111143
npm publish --access public
112144
working-directory: ./Package/Assembled-Windows0.65
113145
env:
114-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
146+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
147+
- name: Version & Publish Package @babylonjs/react-native-windows-0-69
148+
run: |
149+
npm version --no-git-tag-version ${GITHUB_REF/refs\/tags\//}
150+
npm publish --access public
151+
working-directory: ./Package/Assembled-Windows0.69
152+
env:
153+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

.github/workflows/publish_preview.yml

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,24 @@ jobs:
1717
build-android-ios-064:
1818
uses: ./.github/workflows/ios_android.yml
1919
with:
20+
java-version: '8'
2021
react-native-version: 0.64
2122
release-version: ${{ github.event.inputs.release_version }}
2223

2324
build-android-ios-065:
2425
uses: ./.github/workflows/ios_android.yml
2526
with:
27+
java-version: '8'
2628
react-native-version: 0.65
2729
release-version: ${{ github.event.inputs.release_version }}
2830

31+
build-android-ios-069:
32+
uses: ./.github/workflows/ios_android.yml
33+
with:
34+
java-version: '11'
35+
react-native-version: 0.69
36+
release-version: ${{ github.event.inputs.release_version }}
37+
2938
build-windows-064:
3039
uses: ./.github/workflows/windows.yml
3140
with:
@@ -38,13 +47,19 @@ jobs:
3847
react-native-version: 0.65
3948
release-version: ${{ github.event.inputs.release_version }}
4049

50+
build-windows-069:
51+
uses: ./.github/workflows/windows.yml
52+
with:
53+
react-native-version: 0.69
54+
release-version: ${{ github.event.inputs.release_version }}
55+
4156
build-typescript:
4257
uses: ./.github/workflows/typescript.yml
4358
with:
4459
release-version: ${{ github.event.inputs.release_version }}
4560

4661
package:
47-
needs: [build-typescript, build-android-ios-064, build-android-ios-065, build-windows-064, build-windows-065]
62+
needs: [build-typescript, build-android-ios-064, build-android-ios-065, build-android-ios-069 build-windows-064, build-windows-065, build-windows-069]
4863
runs-on: macos-latest
4964
steps:
5065
- name: Checkout Repo
@@ -67,6 +82,11 @@ jobs:
6782
with:
6883
name: 'Assembled-iOSAndroid0.65'
6984
path: Package/Assembled-iOSAndroid0.65
85+
- name: Download Assembled-iOSAndroid 0.69 Folder
86+
uses: actions/download-artifact@v2
87+
with:
88+
name: 'Assembled-iOSAndroid0.69'
89+
path: Package/Assembled-iOSAndroid0.69
7090
- name: Download Assembled-Windows 0.64 Folder
7191
uses: actions/download-artifact@v2
7292
with:
@@ -77,6 +97,11 @@ jobs:
7797
with:
7898
name: 'Assembled-Windows0.65'
7999
path: Package/Assembled-Windows0.65
100+
- name: Download Assembled-Windows 0.69 Folder
101+
uses: actions/download-artifact@v2
102+
with:
103+
name: 'Assembled-Windows0.69'
104+
path: Package/Assembled-Windows0.69
80105
- name: Display structure of downloaded Assembled and Assembled-Windows folders
81106
run: ls -R
82107
- name: Setup Node.js
@@ -107,6 +132,13 @@ jobs:
107132
working-directory: ./Package/Assembled-iOSAndroid0.65
108133
env:
109134
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
135+
- name: Version & Publish Package @babylonjs/react-native-iosandroid-0-69
136+
run: |
137+
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
138+
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
139+
working-directory: ./Package/Assembled-iOSAndroid0.69
140+
env:
141+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
110142

111143
- name: Version & Publish Package @babylonjs/react-native-windows-0-64
112144
run: |
@@ -120,5 +152,12 @@ jobs:
120152
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
121153
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
122154
working-directory: ./Package/Assembled-Windows0.65
155+
env:
156+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
157+
- name: Version & Publish Package @babylonjs/react-native-windows-0-69
158+
run: |
159+
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
160+
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
161+
working-directory: ./Package/Assembled-Windows0.69
123162
env:
124163
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

Apps/PackageTest/0.69.0/.buckconfig

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
2+
[android]
3+
target = Google Inc.:Google APIs:23
4+
5+
[maven_repositories]
6+
central = https://repo1.maven.org/maven2
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
BUNDLE_PATH: "vendor/bundle"
2+
BUNDLE_FORCE_RUBY_PLATFORM: 1

Apps/PackageTest/0.69.0/.eslintrc.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
module.exports = {
2+
root: true,
3+
extends: '@react-native-community',
4+
parser: '@typescript-eslint/parser',
5+
plugins: ['@typescript-eslint'],
6+
overrides: [
7+
{
8+
files: ['*.ts', '*.tsx'],
9+
rules: {
10+
'@typescript-eslint/no-shadow': ['error'],
11+
'no-shadow': 'off',
12+
'no-undef': 'off',
13+
},
14+
},
15+
],
16+
};

Apps/PackageTest/0.69.0/.gitignore

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
# OSX
2+
#
3+
.DS_Store
4+
5+
# Xcode
6+
#
7+
build/
8+
*.pbxuser
9+
!default.pbxuser
10+
*.mode1v3
11+
!default.mode1v3
12+
*.mode2v3
13+
!default.mode2v3
14+
*.perspectivev3
15+
!default.perspectivev3
16+
xcuserdata
17+
*.xccheckout
18+
*.moved-aside
19+
DerivedData
20+
*.hmap
21+
*.ipa
22+
*.xcuserstate
23+
ios/.xcode.env.local
24+
25+
# Android/IntelliJ
26+
#
27+
build/
28+
.idea
29+
.gradle
30+
local.properties
31+
*.iml
32+
*.hprof
33+
34+
# node.js
35+
#
36+
node_modules/
37+
npm-debug.log
38+
yarn-error.log
39+
40+
# BUCK
41+
buck-out/
42+
\.buckd/
43+
*.keystore
44+
!debug.keystore
45+
46+
# fastlane
47+
#
48+
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
49+
# screenshots whenever they are needed.
50+
# For more information about the recommended setup visit:
51+
# https://docs.fastlane.tools/best-practices/source-control/
52+
53+
**/fastlane/report.xml
54+
**/fastlane/Preview.html
55+
**/fastlane/screenshots
56+
**/fastlane/test_output
57+
58+
# Bundle artifact
59+
*.jsbundle
60+
61+
# Ruby / CocoaPods
62+
/ios/Pods/
63+
/vendor/bundle/
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
module.exports = {
2+
arrowParens: 'avoid',
3+
bracketSameLine: true,
4+
bracketSpacing: false,
5+
singleQuote: true,
6+
trailingComma: 'all',
7+
};

Apps/PackageTest/0.69.0/.ruby-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
2.7.5
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{}

Apps/PackageTest/0.69.0/Gemfile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
source 'https://rubygems.org'
2+
3+
# You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
4+
ruby '2.7.5'
5+
6+
gem 'cocoapods', '~> 1.11', '>= 1.11.2'
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/**
2+
* @format
3+
*/
4+
5+
import 'react-native';
6+
import React from 'react';
7+
import App from '../App';
8+
9+
// Note: test renderer must be required after react-native.
10+
import renderer from 'react-test-renderer';
11+
12+
it('renders correctly', () => {
13+
renderer.create(<App />);
14+
});

0 commit comments

Comments
 (0)