MetaMask / metamask-mobile

Mobile web browser providing access to websites that use the Ethereum blockchain
https://metamask.io
Other
2.17k stars 1.12k forks source link

chore/ Update accounts-controller @v19.0.0 and keyring-controller @v18.0.0 #12339

Open owencraston opened 2 days ago

owencraston commented 2 days ago

Description

This PR updates the accounts controller to the latest version of 19. This updates requires a peer dependancy bump of the keyring controller to version 18.0.0

Related issues

Fixes: https://github.com/MetaMask/metamask-mobile/issues/12302 Fixes: https://github.com/MetaMask/metamask-mobile/issues/12304

Blocked by: https://github.com/MetaMask/metamask-mobile/pull/11409

Manual testing steps

Account creation

  1. open app
  2. press create wallet
  3. go through the onboarding flow
  4. once onboarding is complete, you should be on the wallet view and see a single account
  5. open the account selector list and add a new account'
  6. this should work without issues
  7. change the name of your new account
  8. force close the app and reopen, the previously selected account should be the same and the custom name should be preserved.

Account importing

  1. assuming you have created a wallet wth the above steps....
  2. open the account selector list and click add account or hardware wallet and then click import account
  3. paste a private key in this text field and then import
  4. the account should be imported, selected and have the label "imported"
  5. force closing the app and re opening it should preserve the same state of accounts

Hardware wallets

  1. assuming you have created a wallet wth the above steps....
  2. open the account selector list and click add account or hardware wallet and then click Add hardware wallet
  3. select your hardware wallet of choice (ledger or qr based)
  4. follow the instructions to add a hardware wallet
  5. the steps should work and you should have successfully added a hardware account
  6. the hardware account should have the correct labels (either Qr hardware or ledger)
  7. force closing the app and reopening should preserve the same accounts state.

Screenshots/Recordings

Before

After

Pre-merge author checklist

Pre-merge reviewer checklist

github-actions[bot] commented 2 days ago

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.

socket-security[bot] commented 2 days ago

New and removed dependencies detected. Learn more about Socket for GitHub ↗︎

Package New capabilities Transitives Size Publisher
npm/@metamask/accounts-controller@19.0.0 None 0 267 kB metamaskbot
npm/@metamask/approval-controller@7.1.1 None 0 221 kB metamaskbot
npm/@metamask/eth-snap-keyring@4.4.0 Transitive: network +3 3.17 MB
npm/@metamask/json-rpc-engine@10.0.1 None 0 178 kB metamaskbot
npm/@metamask/json-rpc-middleware-stream@8.0.5 None 0 49.9 kB metamaskbot
npm/@metamask/keyring-controller@18.0.0 Transitive: environment +2 630 kB danfinlay, gudahtt, kumavis, ...7 more
npm/@metamask/snaps-controllers@9.12.0 Transitive: network +3 2.86 MB danfinlay, gudahtt, kumavis, ...7 more
npm/@metamask/snaps-rpc-methods@11.5.1 None 0 1.23 MB metamaskbot

🚮 Removed packages: npm/@metamask/accounts-controller@18.2.1, npm/@metamask/approval-controller@7.1.0, npm/@metamask/eth-snap-keyring@4.3.6, npm/@metamask/snaps-controllers@9.11.0, npm/@metamask/snaps-rpc-methods@11.4.0

View full report↗︎

sonarcloud[bot] commented 2 days ago

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
0.0% Coverage on New Code
0.0% Duplication on New Code

See analysis details on SonarQube Cloud

github-actions[bot] commented 2 days ago

https://bitrise.io/ Bitrise

✅✅✅ pr_smoke_e2e_pipeline passed on Bitrise! ✅✅✅

Commit hash: 24bfc6cc1cc7fe3136d9b141f77656fb2122b8cb Build link: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/f8893ed8-ce7f-4e18-9e35-560f827dc7c3

[!NOTE]

  • You can kick off another pr_smoke_e2e_pipeline on Bitrise by removing and re-applying the Run Smoke E2E label on the pull request