-
Notifications
You must be signed in to change notification settings - Fork 13
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
fix: include required messagingpush dependency for no push configuration #187
Conversation
Pull request title looks good 👍! If this pull request gets merged, it will cause a new release of the software. Example: If this project's latest release version is All merged pull requests will eventually get deployed. But some types of pull requests will trigger a deployment (such as features and bug fixes) while some pull requests will wait to get deployed until a later time. This project uses a special format for pull requests titles. Expand this section to learn more (expand by clicking the ᐅ symbol on the left side of this sentence)...This project uses a special format for pull requests titles. Don't worry, it's easy! This pull request title should be in this format:
If your pull request introduces breaking changes to the code, use this format:
where
Examples:
Need more examples? Want to learn more about this format? Check out the official docs. Note: If your pull request does multiple things such as adding a feature and makes changes to the CI server and fixes some bugs then you might want to consider splitting this pull request up into multiple smaller pull requests. |
# no dependencies. This is the default subspec designed to not install any push dependencies. | ||
# This is the default subspec designed to not install any push dependencies. Customer should choose APN or FCM. | ||
# The SDK at runtime currently requires the MessagingPush module so we do include it here. | ||
ss.dependency "CustomerIO/MessagingPush", package["cioNativeiOSSdkVersion"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking at the comment, I'm not clear on what the customer needs to do. What about adding both APN and FCM options as comments and directing the customer to uncomment the one they need and deleting the other?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not clear on what the customer needs to do.
The customer needs to follow our SDK docs to setup APN or FCM push.
This PR is trying to handle the scenario where a customer has not yet setup APN or FCM push. Some customers have sent us support tickets saying that they are experiencing issues with our SDK while following our SDK docs. They must be doing 1 step at a time, continuously compiling their app and testing along the way. If a customer does that, they could encounter issues. This PR is to try and fix those issues.
This PR does not effect our docs today. No work on customers part besides what they already do.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the idea but added some thoughts
@@ -28,7 +28,9 @@ Pod::Spec.new do |s| | |||
s.default_subspec = "nopush" | |||
|
|||
s.subspec 'nopush' do |ss| |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe we need to move away from wording nopush
because otherwise, it can get confusing. how about base/common
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This name would be for internal purposes, only which is why I included docs into this file explaining it. However, I do understand what you mean by nopush
being confusing.
I wouldn't mind a word generic-push
or base-push
which implies that the RN SDK does require some sort of push setup, but it's not specific to the service yet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sweet, I am approving it as this isn't a blocker, feel free to update it to a more generic name now or later.
@@ -28,7 +28,9 @@ Pod::Spec.new do |s| | |||
s.default_subspec = "nopush" | |||
|
|||
s.subspec 'nopush' do |ss| |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sweet, I am approving it as this isn't a blocker, feel free to update it to a more generic name now or later.
Hey guys! |
### [3.1.8](3.1.7...3.1.8) (2023-08-28) ### Bug Fixes * include required messagingpush dependency for no push configuration ([#187](#187)) ([78bbc63](78bbc63))
@gerjunior-groundswell, this has been deployed in |
The RN SDK today does require the messagingpush SDK module but the podspec that we ask customers to install does not include this module. This could mean compile-time errors.
Yes, we do expect that customers setup rich push in their app and so we do not expect customers to encounter this problem. However, the idea that this PR also adds a comment to the podspec files specifying required dependencies is a good value add to the codebase.
PR in draft mode and asks for review by team to get feedback if this is something we want to do or not.
Note: Conversation that sparked this idea: https://github.com/customerio/docs/pull/1446#discussion_r1298239891