History log of /expo/packages/expo-constants/ios/EXConstants.podspec (Results 1 – 15 of 15)
Revision Date Author Comments
# ef901781 11-Sep-2023 Douglas Lowder <[email protected]>

Apple TV support 1: podspec and code changes for commonly used modules (#24329)

# Why

First of a series of PRs to add Apple TV support for many (but not all)
Expo SDK modules.

This PR makes A

Apple TV support 1: podspec and code changes for commonly used modules (#24329)

# Why

First of a series of PRs to add Apple TV support for many (but not all)
Expo SDK modules.

This PR makes Apple TV able to compile for apps using
`[email protected]` and ONLY the following modules:

- expo
- expo-application
- expo-constants
- expo-eas-client
- expo-file-system
- expo-font
- expo-json-utils
- expo-keep-awake
- expo-manifests
- expo-modules-core
- expo-splash-screen
- expo-structured-headers
- expo-updates-interface
- expo-updates

# How

- Add tvOS to podspecs
- Native code changes wrapped in `#if TARGET_OS_TV` (for Objective C) or
`#if os(tvOS)` (for Swift)
- Import source for the `ASN1Decoder` Swift framework used by
`expo-updates`, as the public podspec for that framework does not yet
support tvOS

# Test Plan

- Manual testing with a template still in development
- Existing CI for iOS should pass (nothing should be broken)

# Checklist

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [x] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [x] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [x] This diff will work correctly for `npx expo prebuild` & EAS Build
(eg: updated a module plugin).

show more ...


# 6668b09d 11-Nov-2022 Alan Hughes <[email protected]>

[ios][constants] Migrate expo-constants to new modules API (#20002)


# c88b85cf 14-Sep-2022 Tomasz Sapeta <[email protected]>

[ios] Bump deployment target to 13.0 (#18873)


# 9886c0aa 28-Sep-2021 Kudo Chien <[email protected]>

[expo-modules][ios] Fix errors from use_frameworks in Podfile (#14523)

# Why

close [ENG-1772](https://linear.app/expo/issue/ENG-1772/regression-test-for-use-frameworks-in-podfile)
fixes #13920

[expo-modules][ios] Fix errors from use_frameworks in Podfile (#14523)

# Why

close [ENG-1772](https://linear.app/expo/issue/ENG-1772/regression-test-for-use-frameworks-in-podfile)
fixes #13920

# How

- error: `The 'App' target has transitive dependencies that include static binaries`
declare `static_framework = true` in podspec. since all expo-modules ship in either source code or static xcframework, it should make sense to add `static_framework` declaration and solve this kind of errors.

- error: generated swift runtime header not found
fix like this because in framework mode, generated headers are inside module.
```diff
+#if __has_include(<ExpoModulesCore/ExpoModulesCore-Swift.h>)
+// For cocoapods framework, the generated swift header will be inside ExpoModulesCore module
+#import <ExpoModulesCore/ExpoModulesCore-Swift.h>
+#else
#import "ExpoModulesCore-Swift.h"
+#endif
```

- error: [gl] `<cassert>` import not found
this is supported in c++, thus rename to objc++ .mm files.

- error: [gl] `BLOCK_SAFE_RUN` inconsistent left/right operands types
this is side effect after renaming expo-gl files as .mm. fixed by explicitly cast as void.

- error: [core] undefined symbols in linking time, e.g. `EXRegisterModule`
this is side effect after renaming expo-gl files as .mm. fixed by export symbols by `extern "C"`, otherwise c++ will have different name mangling between c.

- rename `expo-image` pod to `EXImage`

- error: `Include of non-modular header inside framework module`
adding `DEFINES_MODULES` for cocoapods to create modulemap file. for external dependency like firebase, ignore the error by adding `CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES`

- error: expo-constant's app.config and expo-updates' app.manifest not found
in use_frameworks mode, the path is the same with non framework mode. `/$UNLOCALIZED_RESOURCES_FOLDER_PATH` is unnecessary.

- error: [barcode-scanner] ZXingObjC podspec GCC_PREPROCESSOR_DEFINITIONS does not export to EXBarCodeScanner and cause headers not found
add these defines explicitly

- [templates] add missing `react_native_post_install` from react-native 0.64 upgrade

- error: `Cycle inside FBReactNativeSpec; building could produce unreliable results. This usually can be resolved by moving the shell script phase '[CP-User] Generate Specs' so that it runs before the build phase that depends on its outputs.`
workaround by moving `FBReactNativeSpec` build phase script order.

Co-authored-by: Tomasz Sapeta <[email protected]>

# Test Plan

## prebuilt xcframework test

```sh
expo init -t /path/to/expo/templates/expo-template-bare-minimum sdk43
cd sdk43
# add `s.static_framework = true` for each `node_modules/expo-*/ios/*.podspec`
cd ios
# add `use_frameworks!` to Podfile
rm -rf Pods && pod install
cd ..
expo run:ios
expo run:ios --configuration Release
```

## regression for all expo-modules

```sh
expo init -t /path/to/expo/templates/expo-template-bare-minimum sdk43
cd sdk43
yarn add file:/path/to/expo/packages/expo-* # add all expo-modules one-by-one
# test non framework mode
expo run:ios
expo run:ios --configuration Release
# test framework mode
cd ios
# add `use_frameworks!` to Podfile
rm -rf Pods && pod install
cd ..
expo run:ios
expo run:ios --configuration Release
```

show more ...


# 71ebd28e 13-Sep-2021 Charlie Cruzan <[email protected]>

[ios] Bump deployment target to 12.0 (#14383)

* drop ios 11

* update bare-sandbox

* forgot some

* add PR link to changelogs

* Update packages/expo-cellular/CHANGELOG.md

Co-authored-by

[ios] Bump deployment target to 12.0 (#14383)

* drop ios 11

* update bare-sandbox

* forgot some

* add PR link to changelogs

* Update packages/expo-cellular/CHANGELOG.md

Co-authored-by: Expo CI <[email protected]>

* et pod-install after rebase

Co-authored-by: Expo CI <[email protected]>

show more ...


# 7c591bbb 17-Aug-2021 Kudo Chien <[email protected]>

[constants] Fix build phase error in xcode for nodejs possibly not found in nvm (#14047)

# Why

if user does not install nodejs by homebrew but something like nvm or volta. typically these will se

[constants] Fix build phase error in xcode for nodejs possibly not found in nvm (#14047)

# Why

if user does not install nodejs by homebrew but something like nvm or volta. typically these will setup shell `$PATH`. however, building in [xcode does not honor login shell rc file](https://mgrebenets.github.io/xcode/2019/04/04/xcode-build-phases-and-environment) and getting errors for nodejs not found.

# How

execute the script with `bash -l` that will honor login shell settings.

# Test Plan

pass building bare-expo and expo-go in xcode.

# Checklist

- [x] Documentation is up to date to reflect these changes (eg: https://docs.expo.io and README.md).

show more ...


# efd75dec 16-Aug-2021 Tomasz Sapeta <[email protected]>

[ios] Migrate all remaining native code


# a7ac343f 14-Jul-2021 Kudo Chien <[email protected]>

[expo-constants] fix absolute path in script to inconsistent Podfile.lock (#13610)

# Why

Podfile.lock hashes are based on podspec content. the `__dir__` in script_phase is different between hosts

[expo-constants] fix absolute path in script to inconsistent Podfile.lock (#13610)

# Why

Podfile.lock hashes are based on podspec content. the `__dir__` in script_phase is different between hosts and lead to different Podfile.lock.

# How

alternatively, use a static variable `$PODS_TARGET_SRCROOT` that will only translate in xcode build time.

# Test Plan

1. ci passes.
2. make sure app.config is generated.

show more ...


# 79ca9839 07-Jul-2021 Kudo Chien <[email protected]>

[expo-constants] Modularized expo-constants without further app setup (#13424)

# Why

Try to achieve the goal of `expo install expo-constants` without any further setup.

# How

For iOS, use

[expo-constants] Modularized expo-constants without further app setup (#13424)

# Why

Try to achieve the goal of `expo install expo-constants` without any further setup.

# How

For iOS, use `script_phase` to execute the script.
For Android, move gradle plugin into expo-constants android library.

# Test Plan

1. Build passed
2. Verify Constants.Manifest test case from bare-expo iOS/Android

show more ...


# 65d041d7 11-May-2021 Tomasz Sapeta <[email protected]>

[constants] Migrate interface to expo-modules-core (#12876)


# 089a3d82 15-Dec-2020 Tomasz Sapeta <[email protected]>

[ios] Bump deployment target to iOS 11.0 (#11344)


# 52a1f6d0 04-Dec-2020 Tomasz Sapeta <[email protected]>

[ios] Require CocoaPods >=1.10.0 to use prebuilt libraries
Before v1.10.0 binaries built for arm64 simulator were treated as the ones for the device and so the build fails at linking.


# 6e1dd0e8 02-Dec-2020 Tomasz Sapeta <[email protected]>

[ios] Make podspecs compatible with prebuilds (#11183)


# 8d441c7e 14-Mar-2019 Stanisław Chmiela <[email protected]>

[packages] Move unimodules foundation to `org.unimodules` scope


# eafa96e0 10-Oct-2018 Stanisław Chmiela <[email protected]>

Move universal modules to packages (#2380)

* Move modules to packages

* Remove unused, old, unmaintained standalone projects

* Replace ['"/]modules['"/] with packages

* Run pod install afte

Move universal modules to packages (#2380)

* Move modules to packages

* Remove unused, old, unmaintained standalone projects

* Replace ['"/]modules['"/] with packages

* Run pod install after regenerating ios files

show more ...