-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
feat: script for downloading sourcemaps + symbolicating them #43894
feat: script for downloading sourcemaps + symbolicating them #43894
Conversation
@hoangzinh Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
npm has a |
Sure thing! Can I help with the broken iOS job? |
Just saw this, build is okay now after the revert 👍 |
Actually, this PR can already be tested and merged even with the first PR being reverted. The script won't really work with no source maps uploaded, but still (or we could also wait, I don't mind) |
Oh, sorry, I just found a way to make the querying for the artifact way simpler. Will move this to draft until its changed and ready. |
Alright, I made the script simpler. In I changed to upload artifacts containing the version in their name. This way we can simply find an artifact by the name.
|
@hoangzinh no C+ review needed here |
Co-authored-by: Rory Abraham <47436092+roryabraham@users.noreply.github.com>
Co-authored-by: Rory Abraham <47436092+roryabraham@users.noreply.github.com>
Okay, so I refactored it to use To fix this I use tsconfig-paths, and added a |
Also the typescript check fails complaining about newly added .js files - I didn't add any new js files, its just that I recompiled the GH actions. Will take this off hold since the first PR was merged and this PR is ready for a new round of review. |
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 like you need to fix Validate GitHub Actions
by rebuilding GitHub actions.
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.
one last thing
typecheck failure is a false alarm - we added a new |
Reviewer Checklist
Screenshots/VideosAndroid: NativeAndroid: mWeb ChromeiOS: NativeiOS: mWeb SafariMacOS: Chrome / SafariMacOS: Desktop |
@roryabraham looks like this was merged without a test passing. Please add a note explaining why this was done and remove the |
not an emergency - see my last comment |
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
🚀 Deployed to staging by https://github.com/roryabraham in version: 9.0.1-0 🚀
|
🚀 Deployed to production by https://github.com/yuwenmemon in version: 9.0.1-19 🚀
|
Details
This PR adds a script that can be used to symbolicate profiles recorded from a production (staging) app.
To symbolicate a profile we need a source map. We need the exact source map that was used when the production app was created.
Thus we upload the source maps during the deploy process in the GitHub action workflow as artifact.
The now added script in
scripts/symbolicate-profile.ts
:.cpuprofile
file and gets the app version from it (we encode it in the filename)./.sourcemap
folder. Next time the command is run it tries to reuse the source mapThe script can simply be invoked by running:
npm run symbolicate-profile -- --platform=android --profile='./Profile_trace_for_1.4.86-0.cpuprofile'
Fixed Issues
$ #43649
PROPOSAL: #43649 (comment)
Tests
No QA, as its a dev only change.
For PR review I'd appreciate if someone else could test the script.
You can use this profile for testing:
Profile_trace_for_1.4.86-0.cpuprofile
Offline tests
QA Steps
n/a - dev only change
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodSTYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label and/or tagged@Expensify/design
so the design team can review the changes.ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
shorted.mov