[MAUI] Measure only APK in Android SOD jobs#5265
Open
simonrozsival wants to merge 1 commit into
Open
Conversation
Stage only the signed APK and versions metadata for Android SizeOnDisk work items so mapping files, binlogs, and other publish sidecars are not reported as APK size. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: a301fa68-0e6c-4280-b2f2-bc3d4c9ae3de
Contributor
There was a problem hiding this comment.
Pull request overview
This PR fixes MAUI Android SizeOnDisk (SOD) measurements in Helix by staging only the signed APK (plus versions.json) into the pub directory, avoiding accidental inclusion of extra publish artifacts (e.g., R8 mapping.txt, binlogs, resource-designer assemblies) in the “APK size” metric.
Changes:
- Update Android SOD work item pre-commands to copy only
*.apkandversions.jsonintopubinstead of recursively copying the entire correlation output. - Keep the extracted-APK measurement behavior by still expanding the APK contents into
pubfor the “Extracted Size” work item.
Show a summary per file
| File | Description |
|---|---|
| eng/performance/maui_scenarios_android.proj | Adjusts Android SOD Helix work items to stage only the intended measurement inputs (APK + versions metadata) into pub to prevent inflated size reporting. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 1/1 changed files
- Comments generated: 0
matouskozak
approved these changes
Jul 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
versions.jsonfor MAUI Android SizeOnDisk work itemsBackground
Related: dotnet/android#12184
@matouskozak The NativeAOT MAUI sample-content chart jumped from roughly 27 MB to 53 MB after dotnet/android enabled the trimmable typemap by default. The trimmable path also enables R8, which publishes a large
mapping.txtbeside the APK.The SOD work item recursively copied the complete correlation output into
pub, andSizeOnDiskrecursively measured that directory. Running the unmodified scenario against a reproduced payload reported 52,797,806 bytes, comprising:mapping.txt: 28,318,349 bytesversions.json: 3 bytesThe actual trimmable APK is smaller than the previous managed-typemap APK; the regression is in measurement composition.
This change stages only the APK and
versions.jsonfor the two SOD work items.test.pyconsumes and removesversions.jsonin lab runs before invoking SizeOnDisk.Validation