-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
chore: Improve startup times on Android through Swaps changes #10787
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
Conversation
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. |
New and removed dependencies detected. Learn more about Socket for GitHub ↗︎
🚮 Removed packages: npm/@adraffy/ens-normalize@1.10.1), npm/@metamask/swaps-controller@9.0.2), npm/@types/ws@8.5.3), npm/abitype@0.7.1), npm/cross-fetch@4.0.0), npm/eventemitter3@5.0.1), npm/isomorphic-ws@5.0.0), npm/web3-core@4.4.0), npm/web3-errors@1.2.0), npm/web3-eth-abi@4.2.2), npm/web3-eth-accounts@4.1.2), npm/web3-eth-contract@4.5.0), npm/web3-eth-ens@4.3.0), npm/web3-eth-iban@4.0.7), npm/web3-eth-personal@4.0.8), npm/web3-eth@4.7.0), npm/web3-net@4.1.0), npm/web3-providers-http@4.1.0), npm/web3-providers-ipc@4.0.7), npm/web3-providers-ws@4.0.7), npm/web3-rpc-methods@1.3.0), npm/web3-types@1.6.0), npm/web3-utils@4.3.0), npm/web3-validator@2.0.6), npm/web3@4.9.0) |
Resolved already |
@Cal-L We still need this PR for when we bump SwapsController to v10, If we could keep it open that would be great. |
1722e2e
to
3cbf42e
Compare
Description
This PR removes Web3 in favor of just using Ethers to read values off a contract.
This has resulted in the following performance improvements:
App start and Logcat are 2 related but different measurements. Logcat is more closely related to visually looking at the app and seeing when it starts up.
Related issues
Fixes: #10611
Related to: MetaMask/swaps-controller#293
Manual testing steps
You will need to run the QA build of the Android app onto a physical device to measure performance changes accurately.
android/app/build.gradle
apply plugin: "io.sentry.android.gradle"
// Sentry environment variables used by Sentry CLI to upload files. Upload is disabled by default
)signingConfigs.debug
cd ./android && ./gradlew assembleQaRelease -PminSdkVersion=26 -DtestBuildType=release -x app:createBundleFlaskDebugJsAndAssets && cd ../ && adb install -r android/app/build/outputs/apk/qa/release/app-qa-release.apk
Testing
Screenshots/Recordings
Before
After
Pre-merge author checklist
Pre-merge reviewer checklist