-
Notifications
You must be signed in to change notification settings - Fork 71
ci: generate size reports #496
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
base: main
Are you sure you want to change the base?
Conversation
thomson-t
left a comment
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.
Awesome feature 🎉
I would imagine we will have to add a similar report in kits if we want to measure the size of those indirect dependencies.
| echo " Creating xcframework..." >&2 | ||
| xcodebuild -create-xcframework \ | ||
| -archive "${ARCHIVES_DIR}/mParticle-Apple-SDK-iOS.xcarchive" -framework mParticle_Apple_SDK.framework \ | ||
| -output "${BUILD_DIR}/mParticle_Apple_SDK.xcframework" \ |
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.
Can we include the size of mParticle_Apple_SDK.xcframework as well in the report?
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.
@thomson-t The report now generates this as part of the comment on PRs and the script report. Example here
denischilik
left a comment
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 suggest to create only one app with two targets, where one will be with SDK second without. It will be also good to generate them with Tuist even if we keep xcode project under the repo control.
📦 SDK Size Impact ReportMeasures how much the SDK adds to an app's size (with-SDK minus without-SDK).
ℹ️ Size test app not found on target branch. This is the new baseline. Raw measurementsTarget branch (main): {"sdk_impact_kb": 0, "sdk_executable_impact_bytes": 0, "xcframework_size_kb": 0}This PR: {"baseline_app_size_kb":84,"baseline_executable_size_bytes":75464,"with_sdk_app_size_kb":1876,"with_sdk_executable_size_bytes":76360,"sdk_impact_kb":1792,"sdk_executable_impact_bytes":896,"xcframework_size_kb":9592} |
@denischilik I considered both of these approaches but went down the route of separate apps without Tuist for ease of partner understanding and overall simplicity. With this approach they can immediately open the projects without using Tuist, a 3rd party tool they may not have. Additionally they can open both projects at once to compare the differences without having to dig into what each separate target is doing |
denischilik
left a comment
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.
LGTM
Background
What Has Changed
size-report.ymlruns on every PR or manually triggeredScreenshots/Video
Source
Checklist
Additional Notes
Reference Issue (For employees only. Ignore if you are an outside contributor)