[with-node] Add quotes for arguments (#18741)Co-authored-by: James Ide <[email protected]>
Deprecate source-login-scripts.sh (#18330)# Why the `source-login-scripts.sh` introduced a lot of pain where the community reported much build errors from it. it doesn't support shells other tha
Deprecate source-login-scripts.sh (#18330)# Why the `source-login-scripts.sh` introduced a lot of pain where the community reported much build errors from it. it doesn't support shells other than zsh and bash. this pr find a new way to deal with xcode building issues that it cannot find the correct nodejs path. close ENG-4864 close ENG-5242 # How react-native introduces `.xcode.env` and `.xcode.env.local` for developers to override the `$NODE_BINARY`: https://github.com/facebook/react-native/pull/33546 to make sure building success from expo-constants, expo-updates, and also the app target when generating bundles. i would like to reuse the `.xcode.env` and `.xcode.env.local` from react-native. this pr further generates `.xcode.env.local` automatically for the app during `pod install`. we can ensure that `pod install` is executed from shell and nodejs is available. so we will generate `export NODE_BINARY="$(command -v node)"` in the `.xcode.env.local`. for xcode, the path will be `$PODS_ROOT/../.xcode.env.local`, every xcode subprojects can source the file to get correct `$NODE_BINARY`. # Test Plan - building bare-expo from xcode (opening xcode by macos finder) - building bare-expo by `yarn ios` - updates e2e ci passed - building expo-go (prerequisite: #18344) Co-authored-by: James Ide <[email protected]>
show more ...
[constants][updates] Fixes .zlogin sourcing on iOSFixes .zlogin typo in source-login-scripts.sh
[source-login-scripts] align the coding style with existing codefrom my missed to review #17109, i've tried to sync the coding stylewith existing code.
source-login-scripts.sh - better nvm support (#17109)# Why in response to this issue: https://github.com/expo/expo/issues/15809#issuecomment-1068629517 This PR updates the `get-app-config-ios
source-login-scripts.sh - better nvm support (#17109)# Why in response to this issue: https://github.com/expo/expo/issues/15809#issuecomment-1068629517 This PR updates the `get-app-config-ios.sh` in `expo-constants` to first attempt to source via nvm (if detected) before falling back to sourcing via the `source-login-scripts.sh`. # How This approach resolves sourcing-issues for nvm users. People are using a workaround of creating a `bash_profile` with `nvm` setup or removing nvm altogether. `nvm` is a heavily-used tool in the community and so this setup should accommodate it. Co-authored-by: Liam Ronan <[email protected]>
[constants][updates] Fix ios script phase error from zsh extendedglob (#17024)# Why fix #16525 fix #17004 # How add single-quotes to the sed statement # Test Plan ``` $ zsh $ ca
[constants][updates] Fix ios script phase error from zsh extendedglob (#17024)# Why fix #16525 fix #17004 # How add single-quotes to the sed statement # Test Plan ``` $ zsh $ cat test.sh unsetopt extendedglob current_shell=$(ps -cp "$$" -o comm="" | sed s/^-//) echo "test case1: $current_shell" setopt extendedglob current_shell=$(ps -cp "$$" -o comm="" | sed s/^-//) echo "test case2: $current_shell" setopt extendedglob current_shell=$(ps -cp "$$" -o comm='' | sed 's/^-//') echo "test case3: $current_shell" $ source test.sh test case1: zsh test.sh:6: no matches found: s/^-// test case2: test case3: zsh ```
[module-scripts] vendoring source-login-scripts.sh (#15336)# Why follow up with https://github.com/expo/expo/pull/14895#issuecomment-953428185 close ENG-2493 # How add `templates/scripts/
[module-scripts] vendoring source-login-scripts.sh (#15336)# Why follow up with https://github.com/expo/expo/pull/14895#issuecomment-953428185 close ENG-2493 # How add `templates/scripts/source-login-scripts.sh` to expo-module-scripts and it will sync to expo module package when `yarn prepare` if there's also `scripts/source-login-scripts.sh` and having `@generated` comment mark. change the file iterator in `expo-module-configure` from shell glob expansion with `find` which enabled the recursive iteration, e.g. `scripts/source-login-scripts.sh` # Test Plan - modify some template files in expo-module-scripts and `yarn prepare` for `expo-constants`, make sure the files are synced. - `yare prepack` in expo-updates and from a sdk43 project to run `yarn add file:/path/to/expo/packages/expo-updates`, test the build successful.