Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pod install | static linking issue | RCT Folly | Turbo modules #70

Merged
merged 8 commits into from
Feb 6, 2024

Conversation

ajaysubra
Copy link
Collaborator

@ajaysubra ajaysubra commented Jan 30, 2024

Description

We were notified of a customer facing issues when trying to pod install in the iOS directory of their react native project. The issue read -

[!] The following Swift pods cannot yet be integrated as static libraries:

The Swift pod `klaviyo-react-native-sdk` depends upon `RCT-Folly.common`, which does not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set `use_modular_headers!` globally in your Podfile, or specify `:modular_headers => true` for particular dependencies.

Although, we were unable to reproduce this error in our test app even after updating our podfile to match the customers, we tried to dig into the issue and it turns out that RCT-Folly. is an objective c library that was getting pulled in as one of our dependency because we were trying to get turbo modules to work.

As a solution,

  • since we are not currently using turbo modules, I've updated our podspec to not include that as a dependency
  • Further, just as a safely check I've added a line to our podspec that would allow swift and objective c interoperability if in the future we ended up pulling in objective c libraries.

Check List

  • Are you changing anything with the public API?
  • Are your changes backwards compatible with previous SDK Versions?

Changelog / Code Overview

Test Plan

Once I get this PR in I'll use the npm install with a commit and test it locally and make sure our internal test app is able to pull in dependencies with cocoapods and works as expected. I will test it with a few version of react native to be sure that this works on all versions.

Related Issues/Tickets

@ajaysubra ajaysubra requested a review from a team as a code owner January 30, 2024 21:28
@ajaysubra ajaysubra requested review from evan-masseau and removed request for a team January 30, 2024 21:28
package-lock.json Outdated Show resolved Hide resolved

Pod::Spec.new do |s|
s.name = "klaviyo-react-native-sdk"
s.name = package["name"]
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

using the name from the package just to avoid having it in two places. Not related to the fix.

s.source_files = "ios/**/*.{h,m,mm,swift}"

# Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

turbo module/new arch related stuff


# Don't install the dependencies when we run `pod install` in the old architecture.
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

turbo module/new arch related stuff

@evan-masseau
Copy link
Contributor

evan-masseau commented Jan 31, 2024

Once I get this PR in I'll use the npm install with a commit

You should be able to npm install with a commit hash without merging to master

@ajaysubra
Copy link
Collaborator Author

Once I get this PR in I'll use the npm install with a commit

You should be able to npm install with a commit hash without merging to master

Yeah you are right, I did do some vague testing locally already so I was thinking of doing a more formal test once this was in but I guess you are right. Better to do the formal testing before merging so that I can fix any issue right here.

@ajaysubra
Copy link
Collaborator Author

Testing on the below RN versions and posting the results of pod install. Please note that this doesn't indicate that we support all of these versions at the moment but mostly indicating that pod install works on these versions.

React native version pod install Result
0.68.7
0.69.12
0.70.15
0.71.15
0.72.10
0.73.3

Copy link
Contributor

@evan-masseau evan-masseau left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Still don't totally understand why it broke for them, but If it worked for them, it works for me.
Make sure the squashed commit message clearly mentions RCT Folly, New Arch and Turbo Modules so that if we need to revert/change this in the future when we work on new arch/turbo its easy to find please!

@ajaysubra ajaysubra changed the title Pod install | static linking issue Pod install | static linking issue | RCT Folly | Turbo modules Feb 2, 2024
@lightstrike
Copy link

I tried running the example RN project in this repo from the master branch and hit a bunch of different errors with running yarn ios (yarn android was fine). Pulling down the changes from this branch resolved all the pod issues, nice work! 🎊

Let me know if you want me to run anything from my end to try hunting down what's driving the breakage in master.

@evan-masseau
Copy link
Contributor

evan-masseau commented Feb 5, 2024

Thanks for chiming in @lightstrike, if you wouldn't mind sharing your npx react-native info and any of the error messages you hit that may help us understand more going forward. Presumably they were related to rct-folly? In our environments, the example app builds on master, so we've been having trouble reproducing. But we are glad to hear that this branch fixed it for you! We'll keep you posted when this gets into an official release.

@lightstrike
Copy link

Sure thing @evan-masseau, here's the output of npx react-native info when running the example on the master branch:

System:
  OS: macOS 14.2.1
  CPU: (10) arm64 Apple M1 Max
  Memory: 85.81 MB / 32.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 18.4.0
    path: ~/.nvm/versions/node/v18.4.0/bin/node
  Yarn:
    version: 3.6.1
    path: ~/.nvm/versions/node/v18.4.0/bin/yarn
  npm:
    version: 8.12.1
    path: ~/.nvm/versions/node/v18.4.0/bin/npm
  Watchman: Not Found
Managers:
  CocoaPods:
    version: 1.14.3
    path: /opt/homebrew/bin/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 23.2
      - iOS 17.2
      - macOS 14.2
      - tvOS 17.2
      - watchOS 10.2
  Android SDK: Not Found
IDEs:
  Android Studio: 2023.1 AI-231.9392.1.2311.11255304
  Xcode:
    version: 15.1/15C65
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.9
    path: /opt/homebrew/opt/openjdk@17/bin/javac
  Ruby:
    version: 2.6.10
    path: /usr/bin/ruby
npmPackages:
  "@react-native-community/cli": Not Found
  react:
    installed: 18.2.0
    wanted: 18.2.0
  react-native:
    installed: 0.73.1
    wanted: 0.73.1
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: false
iOS:
  hermesEnabled: true
  newArchEnabled: false

info React Native v0.73.3 is now available (your project is running on v0.73.1).
info Changelog: https://github.com/facebook/react-native/releases/tag/v0.73.3
info Diff: https://react-native-community.github.io/upgrade-helper/?from=0.73.3
info For more info, check out "https://reactnative.dev/docs/upgrading?os=macos".

Here's the current error thrown by yarn ios (linked as it's a lot, hopefully helpful!). Let me know if you want me to check anything else.

@evan-masseau
Copy link
Contributor

evan-masseau commented Feb 5, 2024

Thanks @lightstrike, ultimately your error seems to be from RCTThirdPartyFabricComponentsProvider.mm which I think is part of what Ajay is taking out in this PR. It does appear to be related to the issue that prompted us to draft this PR in the first place.
Unfortunately I still can't reproduce it myself, despite the output from our npx react-native info being basically identical. Here are the steps I took with a clean clone of the repository:

  • clean clone of the repo
  • yarn install in project root
  • cd example/ios
  • pod install
    • Note, using yarn pod-install created an erroneous xcode.env.local file with a bad path to node binary, so I opt for using pod install.
    • Also note that this pod install modified the pod lockfile to bump to v 0.1.1 of the Klaviyo SDK, something we should update in version control
  • yarn ios -- takes a while to build project, but succeeds.

We certainly aren't giving up on understanding the issue, but I think this PR will have to be our first step. We're just doing a little more testing before we merge and release this.

Thanks again for your active help. If there were any differences in how you installed and tested the example, let me know. There are often several ways to do the same things with RN, so a minor difference might give us a clue!

@evan-masseau evan-masseau mentioned this pull request Feb 5, 2024
@evan-masseau
Copy link
Contributor

The discovery about yarn pod-install generating an erroneous local xcode config file has finally allowed me to fix our Github Action that compiles the example app on iOS, see #75. That will be a nice sanity check going forward that in a clean environment our example app does in fact compile and launch on both platforms.

* master:
  Bump example iOS project lockfile (#74)
  Update local.properties template files (#68)
  Fixes for React Native Apps <= 0.72.0 (#71)

# Conflicts:
#	example/ios/Podfile.lock
@evan-masseau evan-masseau force-pushed the as/pod-install-static-linking-issue branch from 183ab82 to b533c07 Compare February 6, 2024 14:54
@evan-masseau
Copy link
Contributor

Fixed conflicts

evan-masseau and others added 2 commits February 6, 2024 12:24
…ic-linking-issue

# Conflicts:
#	example/ios/Podfile.lock
#	klaviyo-react-native-sdk.podspec
@ajaysubra ajaysubra merged commit 0e8cdfe into master Feb 6, 2024
5 checks passed
@ajaysubra ajaysubra deleted the as/pod-install-static-linking-issue branch February 6, 2024 21:13
evan-masseau added a commit that referenced this pull request Feb 6, 2024
… Klaviyo help center (#62)" (#85)

* Link to license file in README (#60)

Co-authored-by: Evan Masseau <>

* Updated readme to include troubleshooting steps when running pod install (#63)

updated readme

* Updating version to 0.1.1 (#66)

* 0.1.1

* updating version

* reverting back to use older rn version

* updating yarn lock

* removing changes to package lock file

* Fixes for React Native Apps <= 0.72.0 (#71)

* Fix the react-native gradle dependency
* Add a local property to enable specifying react-native version for the SDK for local development
* Specify Kotlin version that is compatible with Android SDK's (although this didn't seem to actually cause any build errors)
* Remove accidental use of an extension method that is technically SDK 24+

---------

Co-authored-by: Evan Masseau <>

* Update local.properties template files (#68)

* Add template local.properties file to example app
* Be clearer about VCS status of these files.

---------

Co-authored-by: Evan Masseau <>

* Bump example iOS project lockfile (#74)

I think this needs to be bumped when we increase the overall project version.

Co-authored-by: Evan Masseau <>

* Github CI Updates (#75)

* Move doc bot to its own file so we don't have to see it as skipped all the time.

* Use same ruby version as local dev environment

* Stop using `yarn pod-install` because it creates an erroneous xcode.env.local file that breaks the hermes build scripts.

---------

Co-authored-by: Evan Masseau <>

* Updating to iOS SDK 3.0.2 (#77)

* 0.1.1

* updated to us latest iOS SDK

* removing package lock

* Pod install | static linking issue | RCT Folly | Turbo modules (#70)

* 0.1.1

* removed turbo module stuff and added xcconfig

* removing package lock

* comitting example app pod lock file

---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Evan C Masseau <[email protected]>

* Readme rewrite with references to native SDKs and Klaviyo help center (#62)


---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Kenny Tsui <[email protected]>

* Generated docs for 149cfd8

---------

Co-authored-by: Evan C Masseau <[email protected]>
Co-authored-by: Ajay Subramanya <[email protected]>
Co-authored-by: Kenny Tsui <[email protected]>
Co-authored-by: github-actions <[email protected]>
evan-masseau added a commit that referenced this pull request Feb 7, 2024
* Link to license file in README (#60)

Co-authored-by: Evan Masseau <>

* Updated readme to include troubleshooting steps when running pod install (#63)

updated readme

* Updating version to 0.1.1 (#66)

* 0.1.1

* updating version

* reverting back to use older rn version

* updating yarn lock

* removing changes to package lock file

* Fixes for React Native Apps <= 0.72.0 (#71)

* Fix the react-native gradle dependency
* Add a local property to enable specifying react-native version for the SDK for local development
* Specify Kotlin version that is compatible with Android SDK's (although this didn't seem to actually cause any build errors)
* Remove accidental use of an extension method that is technically SDK 24+

---------

Co-authored-by: Evan Masseau <>

* Update local.properties template files (#68)

* Add template local.properties file to example app
* Be clearer about VCS status of these files.

---------

Co-authored-by: Evan Masseau <>

* Bump example iOS project lockfile (#74)

I think this needs to be bumped when we increase the overall project version.

Co-authored-by: Evan Masseau <>

* Github CI Updates (#75)

* Move doc bot to its own file so we don't have to see it as skipped all the time.

* Use same ruby version as local dev environment

* Stop using `yarn pod-install` because it creates an erroneous xcode.env.local file that breaks the hermes build scripts.

---------

Co-authored-by: Evan Masseau <>

* Updating to iOS SDK 3.0.2 (#77)

* 0.1.1

* updated to us latest iOS SDK

* removing package lock

* Pod install | static linking issue | RCT Folly | Turbo modules (#70)

* 0.1.1

* removed turbo module stuff and added xcconfig

* removing package lock

* comitting example app pod lock file

---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Evan C Masseau <[email protected]>

* Readme rewrite with references to native SDKs and Klaviyo help center (#62)


---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Kenny Tsui <[email protected]>

* Release 0.1.2  (#84)

* 0.1.1

* Release 0.1.2

* removed package lock

* podlock file changes

* Break up CI files so we can get individual badges (#86)

* Break up CI files so we can get individual badges

* Add badges and fix names

---------

Co-authored-by: Evan Masseau <>

* Add action to publish to NPM after publishing a release (#82)


---------

Co-authored-by: Evan Masseau <>

* Update README.md (#90)

* Generated docs for fafe4f9

---------

Co-authored-by: Evan C Masseau <[email protected]>
Co-authored-by: Ajay Subramanya <[email protected]>
Co-authored-by: Kenny Tsui <[email protected]>
Co-authored-by: github-actions <[email protected]>
evan-masseau pushed a commit that referenced this pull request Feb 7, 2024
* master:
  Update README.md (#90)
  Add action to publish to NPM after publishing a release (#82)
  Break up CI files so we can get individual badges (#86)
  Release 0.1.2  (#84)
  Readme rewrite with references to native SDKs and Klaviyo help center (#62)
  Pod install | static linking issue | RCT Folly | Turbo modules (#70)
evan-masseau added a commit that referenced this pull request Feb 14, 2024
…authored-by: Evan Masseau <>" (#101)

* Link to license file in README (#60)

Co-authored-by: Evan Masseau <>

* Updated readme to include troubleshooting steps when running pod install (#63)

updated readme

* Updating version to 0.1.1 (#66)

* 0.1.1

* updating version

* reverting back to use older rn version

* updating yarn lock

* removing changes to package lock file

* Fixes for React Native Apps <= 0.72.0 (#71)

* Fix the react-native gradle dependency
* Add a local property to enable specifying react-native version for the SDK for local development
* Specify Kotlin version that is compatible with Android SDK's (although this didn't seem to actually cause any build errors)
* Remove accidental use of an extension method that is technically SDK 24+

---------

Co-authored-by: Evan Masseau <>

* Update local.properties template files (#68)

* Add template local.properties file to example app
* Be clearer about VCS status of these files.

---------

Co-authored-by: Evan Masseau <>

* Bump example iOS project lockfile (#74)

I think this needs to be bumped when we increase the overall project version.

Co-authored-by: Evan Masseau <>

* Github CI Updates (#75)

* Move doc bot to its own file so we don't have to see it as skipped all the time.

* Use same ruby version as local dev environment

* Stop using `yarn pod-install` because it creates an erroneous xcode.env.local file that breaks the hermes build scripts.

---------

Co-authored-by: Evan Masseau <>

* Updating to iOS SDK 3.0.2 (#77)

* 0.1.1

* updated to us latest iOS SDK

* removing package lock

* Pod install | static linking issue | RCT Folly | Turbo modules (#70)

* 0.1.1

* removed turbo module stuff and added xcconfig

* removing package lock

* comitting example app pod lock file

---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Evan C Masseau <[email protected]>

* Readme rewrite with references to native SDKs and Klaviyo help center (#62)


---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Kenny Tsui <[email protected]>

* Release 0.1.2  (#84)

* 0.1.1

* Release 0.1.2

* removed package lock

* podlock file changes

* Break up CI files so we can get individual badges (#86)

* Break up CI files so we can get individual badges

* Add badges and fix names

---------

Co-authored-by: Evan Masseau <>

* Add action to publish to NPM after publishing a release (#82)


---------

Co-authored-by: Evan Masseau <>

* Update README.md (#90)

* Publish to NPM with the default npm registry configured in package.json (#92)


---------

Co-authored-by: Evan Masseau <>

* Updated iOS instructions in example app (#99)

* 0.1.1

* udpate the example app to implement push

* hanlded deep links

* removed package json lock file

* updated to addressed Evan comments in the pr

* Fix mistaken duplicate open push section (#95)

Co-authored-by: Evan Masseau <>

* Remove local.properties from git index (#96)

* remove local.properties from git index, changes were still being tracked despite gitignore

* missed variable

---------

Co-authored-by: Evan Masseau <>

* Generated docs for 1547589

---------

Co-authored-by: Evan C Masseau <[email protected]>
Co-authored-by: Ajay Subramanya <[email protected]>
Co-authored-by: Kenny Tsui <[email protected]>
Co-authored-by: github-actions <[email protected]>
evan-masseau added a commit that referenced this pull request Feb 16, 2024
… README.md" (#107)

* Link to license file in README (#60)

Co-authored-by: Evan Masseau <>

* Updated readme to include troubleshooting steps when running pod install (#63)

updated readme

* Updating version to 0.1.1 (#66)

* 0.1.1

* updating version

* reverting back to use older rn version

* updating yarn lock

* removing changes to package lock file

* Fixes for React Native Apps <= 0.72.0 (#71)

* Fix the react-native gradle dependency
* Add a local property to enable specifying react-native version for the SDK for local development
* Specify Kotlin version that is compatible with Android SDK's (although this didn't seem to actually cause any build errors)
* Remove accidental use of an extension method that is technically SDK 24+

---------

Co-authored-by: Evan Masseau <>

* Update local.properties template files (#68)

* Add template local.properties file to example app
* Be clearer about VCS status of these files.

---------

Co-authored-by: Evan Masseau <>

* Bump example iOS project lockfile (#74)

I think this needs to be bumped when we increase the overall project version.

Co-authored-by: Evan Masseau <>

* Github CI Updates (#75)

* Move doc bot to its own file so we don't have to see it as skipped all the time.

* Use same ruby version as local dev environment

* Stop using `yarn pod-install` because it creates an erroneous xcode.env.local file that breaks the hermes build scripts.

---------

Co-authored-by: Evan Masseau <>

* Updating to iOS SDK 3.0.2 (#77)

* 0.1.1

* updated to us latest iOS SDK

* removing package lock

* Pod install | static linking issue | RCT Folly | Turbo modules (#70)

* 0.1.1

* removed turbo module stuff and added xcconfig

* removing package lock

* comitting example app pod lock file

---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Evan C Masseau <[email protected]>

* Readme rewrite with references to native SDKs and Klaviyo help center (#62)


---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Kenny Tsui <[email protected]>

* Release 0.1.2  (#84)

* 0.1.1

* Release 0.1.2

* removed package lock

* podlock file changes

* Break up CI files so we can get individual badges (#86)

* Break up CI files so we can get individual badges

* Add badges and fix names

---------

Co-authored-by: Evan Masseau <>

* Add action to publish to NPM after publishing a release (#82)


---------

Co-authored-by: Evan Masseau <>

* Update README.md (#90)

* Publish to NPM with the default npm registry configured in package.json (#92)


---------

Co-authored-by: Evan Masseau <>

* Updated iOS instructions in example app (#99)

* 0.1.1

* udpate the example app to implement push

* hanlded deep links

* removed package json lock file

* updated to addressed Evan comments in the pr

* Fix mistaken duplicate open push section (#95)

Co-authored-by: Evan Masseau <>

* Remove local.properties from git index (#96)

* remove local.properties from git index, changes were still being tracked despite gitignore

* missed variable

---------

Co-authored-by: Evan Masseau <>

* Update README.md (#105)

* Update README.md

* Update README.md

* Implemented deep links to call react native in example iOS app (#104)

* 0.1.1

* implemented deep linking calls to react native

* removed unused method

* removed package lock

* added deep linking hanlder

* Generated docs for 815a893

---------

Co-authored-by: Evan C Masseau <[email protected]>
Co-authored-by: Ajay Subramanya <[email protected]>
Co-authored-by: Kenny Tsui <[email protected]>
Co-authored-by: github-actions <[email protected]>
evan-masseau added a commit that referenced this pull request Feb 21, 2024
…of Gemfile (#97)* To make proper use of bundle, lockfile needs to be committed. I specified a cocoapods version since podfile.lock contains cocoapods version!Add explicit instructions about example app* Added alias for entire example app setup scriptTry updating CI step to use gem to pin cocoapods version---------Co-authored-by: Evan Masseau <>" (#114)

* Link to license file in README (#60)

Co-authored-by: Evan Masseau <>

* Updated readme to include troubleshooting steps when running pod install (#63)

updated readme

* Updating version to 0.1.1 (#66)

* 0.1.1

* updating version

* reverting back to use older rn version

* updating yarn lock

* removing changes to package lock file

* Fixes for React Native Apps <= 0.72.0 (#71)

* Fix the react-native gradle dependency
* Add a local property to enable specifying react-native version for the SDK for local development
* Specify Kotlin version that is compatible with Android SDK's (although this didn't seem to actually cause any build errors)
* Remove accidental use of an extension method that is technically SDK 24+

---------

Co-authored-by: Evan Masseau <>

* Update local.properties template files (#68)

* Add template local.properties file to example app
* Be clearer about VCS status of these files.

---------

Co-authored-by: Evan Masseau <>

* Bump example iOS project lockfile (#74)

I think this needs to be bumped when we increase the overall project version.

Co-authored-by: Evan Masseau <>

* Github CI Updates (#75)

* Move doc bot to its own file so we don't have to see it as skipped all the time.

* Use same ruby version as local dev environment

* Stop using `yarn pod-install` because it creates an erroneous xcode.env.local file that breaks the hermes build scripts.

---------

Co-authored-by: Evan Masseau <>

* Updating to iOS SDK 3.0.2 (#77)

* 0.1.1

* updated to us latest iOS SDK

* removing package lock

* Pod install | static linking issue | RCT Folly | Turbo modules (#70)

* 0.1.1

* removed turbo module stuff and added xcconfig

* removing package lock

* comitting example app pod lock file

---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Evan C Masseau <[email protected]>

* Readme rewrite with references to native SDKs and Klaviyo help center (#62)


---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Kenny Tsui <[email protected]>

* Release 0.1.2  (#84)

* 0.1.1

* Release 0.1.2

* removed package lock

* podlock file changes

* Break up CI files so we can get individual badges (#86)

* Break up CI files so we can get individual badges

* Add badges and fix names

---------

Co-authored-by: Evan Masseau <>

* Add action to publish to NPM after publishing a release (#82)


---------

Co-authored-by: Evan Masseau <>

* Update README.md (#90)

* Publish to NPM with the default npm registry configured in package.json (#92)


---------

Co-authored-by: Evan Masseau <>

* Updated iOS instructions in example app (#99)

* 0.1.1

* udpate the example app to implement push

* hanlded deep links

* removed package json lock file

* updated to addressed Evan comments in the pr

* Fix mistaken duplicate open push section (#95)

Co-authored-by: Evan Masseau <>

* Remove local.properties from git index (#96)

* remove local.properties from git index, changes were still being tracked despite gitignore

* missed variable

---------

Co-authored-by: Evan Masseau <>

* Update README.md (#105)

* Update README.md

* Update README.md

* Implemented deep links to call react native in example iOS app (#104)

* 0.1.1

* implemented deep linking calls to react native

* removed unused method

* removed package lock

* added deep linking hanlder

* [CHNL-5592] Adding troubleshooting guide linked from readme (#109)

* 0.1.1

* added troubleshooting

* removed packagfe lock

* added troibleshoting to the contents

* swapped android and ios

* [Dependabot] Bump ip from 1.1.8 to 1.1.9 (#111)

Bumps [ip](https://github.com/indutny/node-ip) from 1.1.8 to 1.1.9.
- [Commits](indutny/node-ip@v1.1.8...v1.1.9)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add example app instructions to README, make use of Gemfile (#97)

* To make proper use of bundle, lockfile needs to be committed. I specified a cocoapods version since podfile.lock contains cocoapods version!
Add explicit instructions about example app

* Added alias for entire example app setup script
Try updating CI step to use gem to pin cocoapods version

---------

Co-authored-by: Evan Masseau <>

* Generated docs for ed0836a

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Evan C Masseau <[email protected]>
Co-authored-by: Ajay Subramanya <[email protected]>
Co-authored-by: Kenny Tsui <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <[email protected]>
evan-masseau added a commit that referenced this pull request Feb 21, 2024
…)*"

* Link to license file in README (#60)

Co-authored-by: Evan Masseau <>

* Updated readme to include troubleshooting steps when running pod install (#63)

updated readme

* Updating version to 0.1.1 (#66)

* 0.1.1

* updating version

* reverting back to use older rn version

* updating yarn lock

* removing changes to package lock file

* Fixes for React Native Apps <= 0.72.0 (#71)

* Fix the react-native gradle dependency
* Add a local property to enable specifying react-native version for the SDK for local development
* Specify Kotlin version that is compatible with Android SDK's (although this didn't seem to actually cause any build errors)
* Remove accidental use of an extension method that is technically SDK 24+

---------

Co-authored-by: Evan Masseau <>

* Update local.properties template files (#68)

* Add template local.properties file to example app
* Be clearer about VCS status of these files.

---------

Co-authored-by: Evan Masseau <>

* Bump example iOS project lockfile (#74)

I think this needs to be bumped when we increase the overall project version.

Co-authored-by: Evan Masseau <>

* Github CI Updates (#75)

* Move doc bot to its own file so we don't have to see it as skipped all the time.

* Use same ruby version as local dev environment

* Stop using `yarn pod-install` because it creates an erroneous xcode.env.local file that breaks the hermes build scripts.

---------

Co-authored-by: Evan Masseau <>

* Updating to iOS SDK 3.0.2 (#77)

* 0.1.1

* updated to us latest iOS SDK

* removing package lock

* Pod install | static linking issue | RCT Folly | Turbo modules (#70)

* 0.1.1

* removed turbo module stuff and added xcconfig

* removing package lock

* comitting example app pod lock file

---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Evan C Masseau <[email protected]>

* Readme rewrite with references to native SDKs and Klaviyo help center (#62)


---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Kenny Tsui <[email protected]>

* Release 0.1.2  (#84)

* 0.1.1

* Release 0.1.2

* removed package lock

* podlock file changes

* Break up CI files so we can get individual badges (#86)

* Break up CI files so we can get individual badges

* Add badges and fix names

---------

Co-authored-by: Evan Masseau <>

* Add action to publish to NPM after publishing a release (#82)


---------

Co-authored-by: Evan Masseau <>

* Update README.md (#90)

* Publish to NPM with the default npm registry configured in package.json (#92)


---------

Co-authored-by: Evan Masseau <>

* Updated iOS instructions in example app (#99)

* 0.1.1

* udpate the example app to implement push

* hanlded deep links

* removed package json lock file

* updated to addressed Evan comments in the pr

* Fix mistaken duplicate open push section (#95)

Co-authored-by: Evan Masseau <>

* Remove local.properties from git index (#96)

* remove local.properties from git index, changes were still being tracked despite gitignore

* missed variable

---------

Co-authored-by: Evan Masseau <>

* Update README.md (#105)

* Update README.md

* Update README.md

* Implemented deep links to call react native in example iOS app (#104)

* 0.1.1

* implemented deep linking calls to react native

* removed unused method

* removed package lock

* added deep linking hanlder

* [CHNL-5592] Adding troubleshooting guide linked from readme (#109)

* 0.1.1

* added troubleshooting

* removed packagfe lock

* added troibleshoting to the contents

* swapped android and ios

* [Dependabot] Bump ip from 1.1.8 to 1.1.9 (#111)

Bumps [ip](https://github.com/indutny/node-ip) from 1.1.8 to 1.1.9.
- [Commits](indutny/node-ip@v1.1.8...v1.1.9)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add example app instructions to README, make use of Gemfile (#97)

* To make proper use of bundle, lockfile needs to be committed. I specified a cocoapods version since podfile.lock contains cocoapods version!
Add explicit instructions about example app

* Added alias for entire example app setup script
Try updating CI step to use gem to pin cocoapods version

---------

Co-authored-by: Evan Masseau <>

* Bridge initialize and setPushToken to RN layer (#98)

* Add an initialize method to react native layer

* Add set push token to RN layer

* Updated to latest versions of native SDKs

* Elaboration on example app initialize/setPushToken, use a consistent value for example API key

* SCREAMING_SNAKE_CASE

---------

Co-authored-by: Evan Masseau <>

* Generated docs for a44a582

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Evan C Masseau <[email protected]>
Co-authored-by: Ajay Subramanya <[email protected]>
Co-authored-by: Kenny Tsui <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <[email protected]>
evan-masseau added a commit that referenced this pull request Feb 22, 2024
…s on how to use `initialize` and `setToken` from RN code. (#113)

* Link to license file in README (#60)

Co-authored-by: Evan Masseau <>

* Updated readme to include troubleshooting steps when running pod install (#63)

updated readme

* Updating version to 0.1.1 (#66)

* 0.1.1

* updating version

* reverting back to use older rn version

* updating yarn lock

* removing changes to package lock file

* Fixes for React Native Apps <= 0.72.0 (#71)

* Fix the react-native gradle dependency
* Add a local property to enable specifying react-native version for the SDK for local development
* Specify Kotlin version that is compatible with Android SDK's (although this didn't seem to actually cause any build errors)
* Remove accidental use of an extension method that is technically SDK 24+

---------

Co-authored-by: Evan Masseau <>

* Update local.properties template files (#68)

* Add template local.properties file to example app
* Be clearer about VCS status of these files.

---------

Co-authored-by: Evan Masseau <>

* Bump example iOS project lockfile (#74)

I think this needs to be bumped when we increase the overall project version.

Co-authored-by: Evan Masseau <>

* Github CI Updates (#75)

* Move doc bot to its own file so we don't have to see it as skipped all the time.

* Use same ruby version as local dev environment

* Stop using `yarn pod-install` because it creates an erroneous xcode.env.local file that breaks the hermes build scripts.

---------

Co-authored-by: Evan Masseau <>

* Updating to iOS SDK 3.0.2 (#77)

* 0.1.1

* updated to us latest iOS SDK

* removing package lock

* Pod install | static linking issue | RCT Folly | Turbo modules (#70)

* 0.1.1

* removed turbo module stuff and added xcconfig

* removing package lock

* comitting example app pod lock file

---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Evan C Masseau <[email protected]>

* Readme rewrite with references to native SDKs and Klaviyo help center (#62)


---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Kenny Tsui <[email protected]>

* Release 0.1.2  (#84)

* 0.1.1

* Release 0.1.2

* removed package lock

* podlock file changes

* Break up CI files so we can get individual badges (#86)

* Break up CI files so we can get individual badges

* Add badges and fix names

---------

Co-authored-by: Evan Masseau <>

* Add action to publish to NPM after publishing a release (#82)


---------

Co-authored-by: Evan Masseau <>

* Update README.md (#90)

* Publish to NPM with the default npm registry configured in package.json (#92)


---------

Co-authored-by: Evan Masseau <>

* Updated iOS instructions in example app (#99)

* 0.1.1

* udpate the example app to implement push

* hanlded deep links

* removed package json lock file

* updated to addressed Evan comments in the pr

* Fix mistaken duplicate open push section (#95)

Co-authored-by: Evan Masseau <>

* Remove local.properties from git index (#96)

* remove local.properties from git index, changes were still being tracked despite gitignore

* missed variable

---------

Co-authored-by: Evan Masseau <>

* Update README.md (#105)

* Update README.md

* Update README.md

* Implemented deep links to call react native in example iOS app (#104)

* 0.1.1

* implemented deep linking calls to react native

* removed unused method

* removed package lock

* added deep linking hanlder

* [CHNL-5592] Adding troubleshooting guide linked from readme (#109)

* 0.1.1

* added troubleshooting

* removed packagfe lock

* added troibleshoting to the contents

* swapped android and ios

* [Dependabot] Bump ip from 1.1.8 to 1.1.9 (#111)

Bumps [ip](https://github.com/indutny/node-ip) from 1.1.8 to 1.1.9.
- [Commits](indutny/node-ip@v1.1.8...v1.1.9)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add example app instructions to README, make use of Gemfile (#97)

* To make proper use of bundle, lockfile needs to be committed. I specified a cocoapods version since podfile.lock contains cocoapods version!
Add explicit instructions about example app

* Added alias for entire example app setup script
Try updating CI step to use gem to pin cocoapods version

---------

Co-authored-by: Evan Masseau <>

* Bridge initialize and setPushToken to RN layer (#98)

* Add an initialize method to react native layer

* Add set push token to RN layer

* Updated to latest versions of native SDKs

* Elaboration on example app initialize/setPushToken, use a consistent value for example API key

* SCREAMING_SNAKE_CASE

---------

Co-authored-by: Evan Masseau <>

* [CHNL-5370] Updating readme to include instructions on how to use `initialize` and `setToken` from RN code. (#113)

* 0.1.1

* added troubleshooting

* updated readme with initilize and set token instructions

* adding notifee stuff to trouble shooting guide

* removed duplicate android

* removed package.json

* some minor fixes

* added example on requesting permission

* Apply suggestions from code review

Co-authored-by: Evan C Masseau <[email protected]>

* minor updates

* review comments

* updated readme

---------

Co-authored-by: Evan C Masseau <[email protected]>

* Generated docs for bf5467b

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Evan C Masseau <[email protected]>
Co-authored-by: Ajay Subramanya <[email protected]>
Co-authored-by: Kenny Tsui <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <[email protected]>
evan-masseau added a commit that referenced this pull request Feb 22, 2024
…-authored-by: Evan Masseau <>" (#118)

* Link to license file in README (#60)

Co-authored-by: Evan Masseau <>

* Updated readme to include troubleshooting steps when running pod install (#63)

updated readme

* Updating version to 0.1.1 (#66)

* 0.1.1

* updating version

* reverting back to use older rn version

* updating yarn lock

* removing changes to package lock file

* Fixes for React Native Apps <= 0.72.0 (#71)

* Fix the react-native gradle dependency
* Add a local property to enable specifying react-native version for the SDK for local development
* Specify Kotlin version that is compatible with Android SDK's (although this didn't seem to actually cause any build errors)
* Remove accidental use of an extension method that is technically SDK 24+

---------

Co-authored-by: Evan Masseau <>

* Update local.properties template files (#68)

* Add template local.properties file to example app
* Be clearer about VCS status of these files.

---------

Co-authored-by: Evan Masseau <>

* Bump example iOS project lockfile (#74)

I think this needs to be bumped when we increase the overall project version.

Co-authored-by: Evan Masseau <>

* Github CI Updates (#75)

* Move doc bot to its own file so we don't have to see it as skipped all the time.

* Use same ruby version as local dev environment

* Stop using `yarn pod-install` because it creates an erroneous xcode.env.local file that breaks the hermes build scripts.

---------

Co-authored-by: Evan Masseau <>

* Updating to iOS SDK 3.0.2 (#77)

* 0.1.1

* updated to us latest iOS SDK

* removing package lock

* Pod install | static linking issue | RCT Folly | Turbo modules (#70)

* 0.1.1

* removed turbo module stuff and added xcconfig

* removing package lock

* comitting example app pod lock file

---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Evan C Masseau <[email protected]>

* Readme rewrite with references to native SDKs and Klaviyo help center (#62)


---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Kenny Tsui <[email protected]>

* Release 0.1.2  (#84)

* 0.1.1

* Release 0.1.2

* removed package lock

* podlock file changes

* Break up CI files so we can get individual badges (#86)

* Break up CI files so we can get individual badges

* Add badges and fix names

---------

Co-authored-by: Evan Masseau <>

* Add action to publish to NPM after publishing a release (#82)


---------

Co-authored-by: Evan Masseau <>

* Update README.md (#90)

* Publish to NPM with the default npm registry configured in package.json (#92)


---------

Co-authored-by: Evan Masseau <>

* Updated iOS instructions in example app (#99)

* 0.1.1

* udpate the example app to implement push

* hanlded deep links

* removed package json lock file

* updated to addressed Evan comments in the pr

* Fix mistaken duplicate open push section (#95)

Co-authored-by: Evan Masseau <>

* Remove local.properties from git index (#96)

* remove local.properties from git index, changes were still being tracked despite gitignore

* missed variable

---------

Co-authored-by: Evan Masseau <>

* Update README.md (#105)

* Update README.md

* Update README.md

* Implemented deep links to call react native in example iOS app (#104)

* 0.1.1

* implemented deep linking calls to react native

* removed unused method

* removed package lock

* added deep linking hanlder

* [CHNL-5592] Adding troubleshooting guide linked from readme (#109)

* 0.1.1

* added troubleshooting

* removed packagfe lock

* added troibleshoting to the contents

* swapped android and ios

* [Dependabot] Bump ip from 1.1.8 to 1.1.9 (#111)

Bumps [ip](https://github.com/indutny/node-ip) from 1.1.8 to 1.1.9.
- [Commits](indutny/node-ip@v1.1.8...v1.1.9)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add example app instructions to README, make use of Gemfile (#97)

* To make proper use of bundle, lockfile needs to be committed. I specified a cocoapods version since podfile.lock contains cocoapods version!
Add explicit instructions about example app

* Added alias for entire example app setup script
Try updating CI step to use gem to pin cocoapods version

---------

Co-authored-by: Evan Masseau <>

* Bridge initialize and setPushToken to RN layer (#98)

* Add an initialize method to react native layer

* Add set push token to RN layer

* Updated to latest versions of native SDKs

* Elaboration on example app initialize/setPushToken, use a consistent value for example API key

* SCREAMING_SNAKE_CASE

---------

Co-authored-by: Evan Masseau <>

* [CHNL-5370] Updating readme to include instructions on how to use `initialize` and `setToken` from RN code. (#113)

* 0.1.1

* added troubleshooting

* updated readme with initilize and set token instructions

* adding notifee stuff to trouble shooting guide

* removed duplicate android

* removed package.json

* some minor fixes

* added example on requesting permission

* Apply suggestions from code review

Co-authored-by: Evan C Masseau <[email protected]>

* minor updates

* review comments

* updated readme

---------

Co-authored-by: Evan C Masseau <[email protected]>

* Update to version 0.2.0 (#116)

Update to v 0.2.0

Co-authored-by: Evan Masseau <>

* Generated docs for 40ce40e

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Evan C Masseau <[email protected]>
Co-authored-by: Ajay Subramanya <[email protected]>
Co-authored-by: Kenny Tsui <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <[email protected]>
evan-masseau added a commit that referenced this pull request Feb 26, 2024
…on specifically" (#122)

* Link to license file in README (#60)

Co-authored-by: Evan Masseau <>

* Updated readme to include troubleshooting steps when running pod install (#63)

updated readme

* Updating version to 0.1.1 (#66)

* 0.1.1

* updating version

* reverting back to use older rn version

* updating yarn lock

* removing changes to package lock file

* Fixes for React Native Apps <= 0.72.0 (#71)

* Fix the react-native gradle dependency
* Add a local property to enable specifying react-native version for the SDK for local development
* Specify Kotlin version that is compatible with Android SDK's (although this didn't seem to actually cause any build errors)
* Remove accidental use of an extension method that is technically SDK 24+

---------

Co-authored-by: Evan Masseau <>

* Update local.properties template files (#68)

* Add template local.properties file to example app
* Be clearer about VCS status of these files.

---------

Co-authored-by: Evan Masseau <>

* Bump example iOS project lockfile (#74)

I think this needs to be bumped when we increase the overall project version.

Co-authored-by: Evan Masseau <>

* Github CI Updates (#75)

* Move doc bot to its own file so we don't have to see it as skipped all the time.

* Use same ruby version as local dev environment

* Stop using `yarn pod-install` because it creates an erroneous xcode.env.local file that breaks the hermes build scripts.

---------

Co-authored-by: Evan Masseau <>

* Updating to iOS SDK 3.0.2 (#77)

* 0.1.1

* updated to us latest iOS SDK

* removing package lock

* Pod install | static linking issue | RCT Folly | Turbo modules (#70)

* 0.1.1

* removed turbo module stuff and added xcconfig

* removing package lock

* comitting example app pod lock file

---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Evan C Masseau <[email protected]>

* Readme rewrite with references to native SDKs and Klaviyo help center (#62)


---------

Co-authored-by: Evan Masseau <>
Co-authored-by: Kenny Tsui <[email protected]>

* Release 0.1.2  (#84)

* 0.1.1

* Release 0.1.2

* removed package lock

* podlock file changes

* Break up CI files so we can get individual badges (#86)

* Break up CI files so we can get individual badges

* Add badges and fix names

---------

Co-authored-by: Evan Masseau <>

* Add action to publish to NPM after publishing a release (#82)


---------

Co-authored-by: Evan Masseau <>

* Update README.md (#90)

* Publish to NPM with the default npm registry configured in package.json (#92)


---------

Co-authored-by: Evan Masseau <>

* Updated iOS instructions in example app (#99)

* 0.1.1

* udpate the example app to implement push

* hanlded deep links

* removed package json lock file

* updated to addressed Evan comments in the pr

* Fix mistaken duplicate open push section (#95)

Co-authored-by: Evan Masseau <>

* Remove local.properties from git index (#96)

* remove local.properties from git index, changes were still being tracked despite gitignore

* missed variable

---------

Co-authored-by: Evan Masseau <>

* Update README.md (#105)

* Update README.md

* Update README.md

* Implemented deep links to call react native in example iOS app (#104)

* 0.1.1

* implemented deep linking calls to react native

* removed unused method

* removed package lock

* added deep linking hanlder

* [CHNL-5592] Adding troubleshooting guide linked from readme (#109)

* 0.1.1

* added troubleshooting

* removed packagfe lock

* added troibleshoting to the contents

* swapped android and ios

* [Dependabot] Bump ip from 1.1.8 to 1.1.9 (#111)

Bumps [ip](https://github.com/indutny/node-ip) from 1.1.8 to 1.1.9.
- [Commits](indutny/node-ip@v1.1.8...v1.1.9)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add example app instructions to README, make use of Gemfile (#97)

* To make proper use of bundle, lockfile needs to be committed. I specified a cocoapods version since podfile.lock contains cocoapods version!
Add explicit instructions about example app

* Added alias for entire example app setup script
Try updating CI step to use gem to pin cocoapods version

---------

Co-authored-by: Evan Masseau <>

* Bridge initialize and setPushToken to RN layer (#98)

* Add an initialize method to react native layer

* Add set push token to RN layer

* Updated to latest versions of native SDKs

* Elaboration on example app initialize/setPushToken, use a consistent value for example API key

* SCREAMING_SNAKE_CASE

---------

Co-authored-by: Evan Masseau <>

* [CHNL-5370] Updating readme to include instructions on how to use `initialize` and `setToken` from RN code. (#113)

* 0.1.1

* added troubleshooting

* updated readme with initilize and set token instructions

* adding notifee stuff to trouble shooting guide

* removed duplicate android

* removed package.json

* some minor fixes

* added example on requesting permission

* Apply suggestions from code review

Co-authored-by: Evan C Masseau <[email protected]>

* minor updates

* review comments

* updated readme

---------

Co-authored-by: Evan C Masseau <[email protected]>

* Update to version 0.2.0 (#116)

Update to v 0.2.0

Co-authored-by: Evan Masseau <>

* Readme proofreading/formatting (#119)

Co-authored-by: Evan Masseau <>

* Podfile and CI fixes (#120)

* Use 1.14.3 pod version specifically

* Skip all caches if manually re executing CI 

---------

Co-authored-by: Evan Masseau <>

* Generated docs for ad12079

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Evan C Masseau <[email protected]>
Co-authored-by: Ajay Subramanya <[email protected]>
Co-authored-by: Kenny Tsui <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants