Skip to content

Commit

Permalink
[5.0.0 release] staging -> main (#274)
Browse files Browse the repository at this point in the history
* bump the major version for all packages to adopt the iOS SDK 4.0.0 (#271)

* bump the major version for all packages to 3.0.0 (assurance to 5.0.0)

* align up all package versions and fix Lerna bootstrap issue

* update Xcode to 14.1.0

* show verbose logs when building the ios app

* Fix Yoga issue (facebook/react-native#36758)

* try to fix the Xcode issue

* update docs and disable ios build step on CI (#273)
  • Loading branch information
yangyansong-adbe authored Jun 20, 2023
1 parent 3222df7 commit 82e4900
Show file tree
Hide file tree
Showing 33 changed files with 14,883 additions and 10,880 deletions.
40 changes: 23 additions & 17 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,17 @@ jobs:
- checkout

- restore_cache:
keys:
keys:
- yarn-cache-{{ checksum "yarn.lock" }}
- run: yarn bootstrap

- run: yarn install

- save_cache:
key: yarn-cache-{{ checksum "yarn.lock" }}
paths:
- ./node_modules
- ./apps/AEPSampleApp/node_modules

- run:
name: Unit Tests
command: yarn tests:jest --watchAll=false --runInBand
Expand All @@ -29,7 +31,7 @@ jobs:

steps:
- checkout

- run:
name: yarn install
command: yarn install
Expand All @@ -39,29 +41,24 @@ jobs:
command: |
export NODE_OPTIONS=--max-old-space-size=8192
yarn sampleapp:android:build
build-sample-app-ios:
macos:
xcode: "13.0.0"
xcode: 14.1.0

steps:
- checkout

# CircleCI puts xcode app in consistent path, RN looks for versioned path
- run:
name: Move xcode
command: |
cd /Applications && mv Xcode.app Xcode-13.0.app
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f /Applications/Xcode-13.0.app/Contents/Developer/Applications/Simulator.app
- run:
name: Install latest NodeJS
command: brew install node

- restore_cache:
keys:
keys:
- ios-yarn-cache-{{ checksum "yarn.lock" }}
- run: yarn bootstrap

- run: yarn install

- save_cache:
key: ios-yarn-cache-{{ checksum "yarn.lock" }}
paths:
Expand All @@ -71,11 +68,19 @@ jobs:
- run:
name: Install latest Cocoapods
command: sudo gem install cocoapods

- run:
name: Install pods
command: yarn sampleapp:ios:pod:install

- run:
name: Yoga fix
command: |
cd apps/AEPSampleApp
sed -i.bo 's/ node->getLayout()\.hadOverflow() |$/\0|/' ./node_modules/react-native/ReactCommon/yoga/yoga/Yoga.cpp
cd ../../
rm -rf ~/Library/Developer/Xcode/DerivedData
- run:
name: Building iOS Sample App
command: yarn sampleapp:ios:build
Expand All @@ -84,5 +89,6 @@ workflows:
ci-workflow:
jobs:
- unit-test
- build-sample-app-ios
# Uncomment the following lines to build the ios code after this issue is fixed: https://github.com/adobe/aepsdk-react-native/issues/272
# - build-sample-app-ios
- build-sample-app-android
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -109,4 +109,6 @@ xcuserdata/
packages/.DS_Store

js/
test/.DS_Store
test/.DS_Store

.yarn/
1 change: 1 addition & 0 deletions .yarnrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
nodeLinker: node-modules
16 changes: 10 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,18 @@ This repository is a monorepo and contains a collection of React Native modules
| [@adobe/react-native-aeptarget](./packages/target) | [![npm version](https://badge.fury.io/js/%40adobe%2Freact-native-aeptarget.svg)](https://www.npmjs.com/package/@adobe/react-native-aeptarget) ![npm downloads](https://img.shields.io/npm/dm/@adobe/react-native-aeptarget) | [Target](https://developer.adobe.com/client-sdks/documentation/adobe-target)
| [@adobe/react-native-aepcampaignclassic](./packages/campaignclassic) | [![npm version](https://badge.fury.io/js/%40adobe%2Freact-native-aepcampaignclassic.svg)](https://www.npmjs.com/package/@adobe/react-native-aepcampaignclassic) [![npm downloads](https://img.shields.io/npm/dm/@adobe/react-native-aepcampaignclassic)](https://www.npmjs.com/package/@adobe/react-native-aepcampaignclassic) |[CampaignClassic](https://developer.adobe.com/client-sdks/documentation/adobe-campaign-classic)

> Warning: Please always use the latest major versions of the above libraries to avoid incompatible issues.
> Note: Since version 5.0.0 of the Adobe React Native SDK, all React Native libraries that share the same major version are compatible with each other.
## Requirements

Requires React Native >= v0.60.0
- Requires React Native >= v0.60.0

> React Native v0.60.0 and above supports [CLI autolink feature](https://github.com/react-native-community/cli/blob/master/docs/autolinking.md) which links the module while building the app.
- Requires Xcode 14.1+

> To submit iOS apps to the App Store, you must build them using Xcode 14.1 or later, as required by [Apple](https://developer.apple.com/ios/submit/).
## Installation

You need to install Adobe Experience Platform Mobile SDK with [npm](https://www.npmjs.com/) packages and configure the native Android/iOS project in your React Native project.
Expand Down Expand Up @@ -56,10 +60,10 @@ The following code snippet shows for Mobile Core and Edge Network extensions as
...
"dependencies": {
"react-native": "0.64.2",
"@adobe/react-native-aepcore": "^2.0.0", //core is required and includes aepcore, aepsignal, aeplifecycle, aepidentity libraries
"@adobe/react-native-aepedge": "^2.0.0",
"@adobe/react-native-aepedgeidentity": "^2.0.0",
"@adobe/react-native-aepedgeconsent": "^2.0.0",
"@adobe/react-native-aepcore": "^5.0.0", //core is required and includes aepcore, aepsignal, aeplifecycle, aepidentity libraries
"@adobe/react-native-aepedge": "^5.0.0",
"@adobe/react-native-aepedgeidentity": "^5.0.0",
"@adobe/react-native-aepedgeconsent": "^5.0.0",
...
},
```
Expand Down
8 changes: 8 additions & 0 deletions apps/AEPSampleApp/ios/Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -33,5 +33,13 @@ target 'AEPSampleApp' do
post_install do |installer|
react_native_post_install(installer)
__apply_Xcode_12_5_M1_post_install_workaround(installer)
installer.pods_project.targets.each do |t|
if t.name.start_with?("AEP")
t.build_configurations.each do |bc|
bc.build_settings['OTHER_SWIFT_FLAGS'] = '$(inherited) -no-verify-emitted-module-interface'
end
end
end
end

end
Loading

0 comments on commit 82e4900

Please sign in to comment.