You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Summary
- Guard Nitro initialization by side‑effect import and try/catch; remove
direct runtime probe dependency
- Add optional Expo config plugin to disable Folly coroutines via
Podfile macros (default off)
## Notes
- Keeps CI/Jest stable by avoiding unavailable named imports
- Idempotent Podfile edit; applies only when opt‑in flag is set
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Bug Fixes**
* iOS: Fixed startup crash related to in‑app purchases and sanitized
error payloads to avoid leaking product IDs; listeners warn/inert until
runtime initializes.
* **New Features**
* Plugin supports an optional Expo config flag to disable Folly
coroutines in iOS builds.
* **Documentation**
* Clarified event‑driven purchase flow, FAQ on transient success→error
timing, and guidance to prefer purchase.id; added installation
workaround steps.
* **Examples**
* Added subscription demos, item‑detail modal, and redacted sensitive
fields.
* **Chores**
* Dev tooling updates and prerelease version bump; added Node type
definitions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Copy file name to clipboardExpand all lines: docs/docs/installation.md
+33Lines changed: 33 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -78,6 +78,39 @@ After installing the package, you need to:
78
78
79
79
3.**Create a development build** (see the Platform Configuration section below for details)
80
80
81
+
4. Optional: Fix iOS Folly coroutine include error
82
+
83
+
If your iOS build fails with errors such as `'folly/coro/Coroutine.h' file not found` from `RCT-Folly/folly/Expected.h`, you can opt‑in to a workaround that disables Folly coroutine support during CocoaPods install.
84
+
85
+
Add this flag to the `react-native-iap` plugin options in your Expo config:
86
+
87
+
```json
88
+
{
89
+
"expo": {
90
+
"plugins": [
91
+
[
92
+
"react-native-iap",
93
+
{
94
+
"ios": {
95
+
"with-folly-no-couroutines": true
96
+
}
97
+
}
98
+
]
99
+
]
100
+
}
101
+
}
102
+
```
103
+
104
+
What this does:
105
+
- Injects `FOLLY_NO_CONFIG=1`, `FOLLY_CFG_NO_COROUTINES=1`, and `FOLLY_HAS_COROUTINES=0` into the Podfile `post_install` block for all Pods targets, preventing `RCT-Folly` from including non‑vendored `<folly/coro/*>` headers.
106
+
- Idempotent: skips if you already set these defines yourself.
107
+
108
+
After enabling the flag, re-run prebuild and install pods:
109
+
-`rm -rf ios`
110
+
-`npx expo prebuild -p ios`
111
+
-`cd ios && LANG=en_US.UTF-8 pod install --repo-update`
0 commit comments