-
Notifications
You must be signed in to change notification settings - Fork 9
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: Improve sample apps build info #458
base: main
Are you sure you want to change the base?
Conversation
Sample app builds 📱Below you will find the list of the latest versions of the sample apps. It's recommended to always download the latest builds of the sample apps to accurately test the pull request. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #458 +/- ##
============================================
+ Coverage 41.98% 51.86% +9.88%
- Complexity 259 291 +32
============================================
Files 99 96 -3
Lines 2320 2570 +250
Branches 344 352 +8
============================================
+ Hits 974 1333 +359
+ Misses 1247 1133 -114
- Partials 99 104 +5 ☔ View full report in Codecov by Sentry. |
Build available to test |
📏 SDK Binary Size Comparison ReportNo changes detected in SDK binary size ✅ |
d71bbb7
to
90321af
Compare
"SDK version: %s\n" + | ||
"Build date: %s\n" + | ||
"Branch: %s\n" + | ||
"Default workspace: Native iOS & Android\n" + |
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 would probably rather have that data being injected via secrets than hardcode? cause the next time we wish to change source, we can do that with CI but we will need to do another release just to change this hardcoded string.
or skip it if we don't want to have it via secret?
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 see your point about trying to make the value dynamic.
However, the CI values (if it's secrets of env variables) are picked up when you build a new samples app version. So even if it's done using secrets, you still need another release to pick the new values, they won't change for existing builds.
Also I don't see those default workspaces changing too often.
If you are okay with it, let's KISS this one and the first time we have to change it, we make it dynamic 😄
Hey @scotttwittrockcio , great feedback! Thank you. Let me break it down.
Sure, we can do that.
The app version is not changed from what it is now. |
cbe19ac
to
fcf3761
Compare
@scotttwittrockcio , @Shahroz16 I've updated the PR, please take a look at the updated screenshots. |
fcf3761
to
2642e7e
Compare
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.
Given Scotts changes are done too, and we can revisit the workspace later, its good to go
|
|
If I understand this correctly, the
Can we update this to replace an '/' with '.' in the sdk version that is sent to the server? The slash can break our parsing of the user agent string. |
Output from our chat. Theres a follow up ticket to make this happen here: https://linear.app/customerio/issue/MBL-647/update-sdk-version-in-builds |
Motivation
This PR updates the build info we show on sample apps. The changes aims to make those build info useful to the development team and other stakeholders determining how the sample app they are using was built. It also helps the development team reproduce the same build when they get issues or reports.
The new build info
SDK version
This is the version of the SDK that the sample app is using, it can have the following values:
Build date
The date and time when the sample app was built, displayed in local time zone of the user
Branch
The branch from which the sample app was built
Default workspace
The default workspace that the app connects to by default or when resetting defaults in the settings screen
App version
This is unique version code of the sample app to identify the specific app version
Screenshots
Here's a screenshot of different cases and how the info is displayed.