-
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
chore: Project setup #277
base: main
Are you sure you want to change the base?
chore: Project setup #277
Conversation
b3f47a1
to
16a6af2
Compare
16a6af2
to
0a9f81e
Compare
The PR stack might shift as new PRs are created from this branch. We’ll be opening smaller PRs aligned with milestones and tickets to facilitate easier review and testing. |
# Yarn | ||
.yarn/install-state.gz | ||
yarn.lock | ||
|
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.
Moving yarn.lock
out of .gitignore
as missing lock file is throwing error when example project is run. Here is the detail if you want to learn more about the yarn error.
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.
looks good, couple of suggestions and 1 important question about the submodule being pushed as part of the package.
@@ -0,0 +1,3 @@ | |||
[submodule "cio-native-sdks/customerio-ios"] | |||
path = cio-native-sdks/customerio-ios | |||
url = https://github.com/customerio/customerio-ios |
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.
We should ideally add branch in here, will help with testing changes on a specific branch.
cio-native-sdks/customerio-ios
Outdated
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.
When this package gets pushed to npm, is this directory excluded?
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 do not see this directory in gitignore file hence I assume that it will be pushed to npm.
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.
But I believe it should be ideally in .gitignore
or .npmignore
. I am sure there are reasons behind Ahmed proposing using ios native SDK as a sub-module and one of them is "Made the native iOS repo a git submodule of this repo, simplifying the process of starting and validating relevant native changes within the RN repo." but this also makes me wonder if this change is to help testing or some other reason that's not called out.
"!android/gradle", | ||
"!android/gradlew", | ||
"!android/gradlew.bat", | ||
"!android/local.properties", |
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'll probably add .idea/
in the ignore too
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.
.idea/
is already in .gitignore
. Is it something else you're referring to ?
"!**/__tests__", | ||
"!**/__fixtures__", | ||
"!**/__mocks__", | ||
"!apps" | ||
"!**/.*" | ||
], | ||
"scripts": { |
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 think we should probably add another script to fetch the latest submodule changes. thoughts?
"postinstall": "git submodule update --init --recursive && git submodule foreach git pull origin main"
"react-native": "0.74.2", | ||
"react-native-builder-bob": "^0.23.2", | ||
"release-it": "^17.4.0", | ||
"turbo": "^2.0.4", |
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.
Do we want to go ahead with Turbo ?
@@ -1,6 +1,6 @@ | |||
#import <React/RCTBridgeModule.h> | |||
|
|||
@interface RCT_EXTERN_MODULE(CustomerioPushMessaging, NSObject) | |||
@interface RCT_EXTERN_REMAP_MODULE(CustomerioPushMessaging, CustomerioPushMessaging, NSObject) |
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.
What is RCT_EXTERN_REMAP_MODULE for ?
"react": "18.2.0", | ||
"react-native": "0.74.2", | ||
"react-native-builder-bob": "^0.23.2", | ||
"release-it": "^17.4.0", |
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.
Do we want to use release-it
?
The changes in this PR consolidate the project setup modifications. They primarily focus on
package.json
configurations, dependency versions, workspace setup,.gitignore
, submodules, and minor renaming of existing native APIs.Context
We are rebuilding our React Native (RN) SDK to support Customer.io's Data Pipelines.
Public Changes
console.*
logs.App.tsx
file.Internal Changes
pre-push
hook that runslint
, as it can be challenging when lint fails before a push in a PR stack setup. Linting has been moved to thepre-commit
hook.yarn
workspace for easier management of example apps.yarn
release to ensure a consistent development experience.yarn.lock
to.gitignore
.QA Setup
PR Stack: