-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
fix: regenerator-runtime and reenable SES (v1.1.0) on iOS (JSC) #8033
Conversation
Refactor gen func proto iterator symbol obj prop assignment to Object.defineProperty
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
E2E test started on Bitrise: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/27e3bafe-0f8a-4644-8d6e-42bd5b1d8333 |
converted back to draft until failing/cancelled unit tests resolved |
E2E test started on Bitrise: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/fae1b7fb-caf2-4b2d-bffa-c491fe9b4f38 |
pr re-readied up, since CI flakey unit tests unrelated to this pr issue appears fixed, based on Sentry logs, solution and our prev solution in mm-ext |
once is merged, we can update this branch, and unit tests should be passing again and PR is ready for QA we shouldn't need to disable SES |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #8033 +/- ##
=======================================
Coverage 40.33% 40.33%
=======================================
Files 1235 1235
Lines 29949 29949
Branches 2875 2875
=======================================
Hits 12079 12079
Misses 17175 17175
Partials 695 695 ☔ View full report in Codecov by Sentry. |
This reverts commit c5eba9d.
- Since was disabled as crash hotfix - CI unit test failures were due to Node v18.19 not SES - All regenerator-runtime vers now SES-compatible (v0.13.8+)
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
E2E test started on Bitrise: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/a273882e-3ca2-4d7d-a332-9df00fe1e0c6 |
build_smoke_e2e_ios_android_stage ✅ local testing
all smoke tests passing locally, update branch and re-run BitRise Smoke tests ( |
https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/d36076eb-cdf7-4179-9d94-15ac845bc5a5 ✅ all regression tests also passing locally |
I believe there were issues with our E2E tests on Bitrise. @cortisiko @chrisleewilcox could you confirm? |
@leotm Are you aware if the latest core controllers already resolve this issue? If not, could you follow up with a PR to core that performs one of the following? |
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.
left a comment and some questions
good question after checking core(main) appears fixed now
since edit: tried bumping @tommasini @Gudahtt what would be the best way to upgrade our patch? (looking thru the 2.4k lines) edit: after brief call with @tommasini doing our controller upgrades, our resolution seems best solution for now cc @Cal-L also our final |
And remove stale babel-runtime/regenerator-runtime resolution
Removed dependencies detected. Learn more about Socket for GitHub ↗︎ |
This reverts commit 38c0a31.
I don't think updating that package would help; |
yeah i see what you mean
ok leaving it for now, unless a resolution like MetaMask/core#3809 would make sense over there 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.
LGTM
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
Description
Fix recent spike in iOS crashes (sending ETH on Optimism)
and reenable SES on iOS (we disabled it temporarily for our v7.12.2 hotfix)
nb: flakey CI earlier was Node 18.19, not SES
Make
[email protected]
compatible with SES via a patch (updated since to a resolution)Object.defineProperty
full regenerator-runtime dep tree
Considerations
runtime.js
other relevant parts@metamask/assets-controllers>babel-runtime>regenerator-runtime
@metamask/assets-controllers>babel-runtime
Remaining
regenerator-runtime
transitive deps are safe above v0.13.8 (see dep tree above)Related issues
Fixes: #8015
resolveEnsToIpfsContentId
const Registry = contract(registryAbi).at(registryAddress);
an ethjs/ethjs-contractresolveEnsToIpfsContentId
Fixes: #8017
Additional context
Manual testing steps
Steps in Sentry issue breadcrumbs (iOS prod)
To enable SES in debug-mode, omit
!__DEV__
metamask-mobile/patches/react-native+0.71.14.patch
Lines 11 to 12 in 46c1cea
I've not managed to repro locally this way yet
Screenshots/Recordings
Before
After
Pre-merge author checklist
Pre-merge reviewer checklist