Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
356c5e0
test: cleans the test resource approach and helper functions (#21997)
christopherferreira9 Nov 4, 2025
c49e182
fix: inconsistent close button size on swaps (#21615)
GeorgeGkas Nov 4, 2025
27f0909
ci: Skip Gradle cache restoration for repack runs (#22004)
Gudahtt Nov 4, 2025
1c7b545
ci: Prevent XCode cache from expanding (#22008)
Gudahtt Nov 4, 2025
f18bfbf
chore: fetch currencyRates with price api (#21523)
sahar-fehri Nov 4, 2025
a63edf5
fix: enable back navigation from activity view when navigating from p…
vinnyhoward Nov 4, 2025
ccf485e
fix: regeneration of metametrics id when it is an empty string (#22093)
tommasini Nov 4, 2025
9e9c5de
chore: upgrade auto-changelog v4 to v5 (#22123)
jake-perkins Nov 4, 2025
f4a24ba
chore: Update keyboard height to 48px to improve usability (#21875)
amandaye0h Nov 4, 2025
f59a0ea
feat: DeFiPositionsController package changes (#21657)
bergarces Nov 4, 2025
9e72769
test: unskip test (#22099)
racitores Nov 4, 2025
796c844
test: disables the send native token tests (#22134)
christopherferreira9 Nov 4, 2025
abf9078
test: fixed flakiness (#22129)
javiergarciavera Nov 4, 2025
b4d71a5
fix: Perps chart breaks when historicalCandles fail to fetch (#22029)
gambinish Nov 4, 2025
575ad9c
feat(ramps): adds event for tracking when user details are fetched (#…
georgeweiler Nov 4, 2025
b99dfb1
feat(predict): optimistic updates for sold/claimed positions (#21987)
matallui Nov 4, 2025
73d9e11
chore(perps): remove dead code and document architecture (#22101)
abretonc7s Nov 4, 2025
95acabf
feat(ramps): request data incrementally in buildquote (#21775)
AxelGes Nov 4, 2025
d61c6a6
fix: Update Hip3 risk disclaimer (#22141)
gambinish Nov 4, 2025
a5f1a18
test: increases timeout and removes sync enable step (#22145)
christopherferreira9 Nov 4, 2025
93ad9b8
feat(ramp): add buy unified button (no nav) (#22122)
wachunei Nov 4, 2025
454b008
chore: Consolidate link types and implement normalizer (Phase 1 - PR …
smilingkylan Nov 4, 2025
d283497
feat: Added riv animations to StackCard's empty state (#21897)
brianacnguyen Nov 4, 2025
50275f4
chore: Improved error catching block to know when feature flag update…
tommasini Nov 4, 2025
02f6a9e
chore(predict): Visual tweaks from (visual) bug bash (#22157)
kevinbluer Nov 4, 2025
9e73393
fix: the network badges for the tokens are missing a border (#22147)
vinnyhoward Nov 4, 2025
1b9baf3
fix: convert quotes copy from title case to sentence case (#22146)
vinnyhoward Nov 4, 2025
5be4d69
fix: resolve TypeScript errors and add UUID v4 test coverage cp-7.58.…
tommasini Nov 4, 2025
8999593
feat: Implement dynamic signing verification for link-handling (#22150)
smilingkylan Nov 4, 2025
aa05c58
test: disable predictions e2e (#22161)
cortisiko Nov 4, 2025
6f33fe3
chore: fix market details header, market feed header and avatars (#22…
caieu Nov 4, 2025
f4d7cba
fix: update copy for perps trade action menu (#22155)
vinnyhoward Nov 4, 2025
0ad3a8c
fix: remove padding and border radius from order type bottom sheet (#…
vinnyhoward Nov 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 26 additions & 16 deletions .github/workflows/build-android-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,17 +62,6 @@ jobs:
configure-keystores: true
target: ${{ inputs.keystore_target }} # qa for taget=main and flask for target=flask

- name: Cache Gradle dependencies
uses: cirruslabs/cache@v4
id: gradle-cache-restore
env:
GRADLE_CACHE_VERSION: 1
with:
path: |
~/_work/.gradle/caches
~/_work/.gradle/wrapper
key: gradle-${{ env.GRADLE_CACHE_VERSION }}-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}

- name: Setup project dependencies with retry
uses: nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 #v3.0.2
with:
Expand Down Expand Up @@ -121,13 +110,31 @@ jobs:
${{ steps.determine-target-paths.outputs.apk-target-path }}/${{ steps.determine-target-paths.outputs.artifact_name }}.apk
${{ steps.determine-target-paths.outputs.test-apk-target-path }}/${{ steps.determine-target-paths.outputs.artifact_name }}-androidTest.apk
${{ steps.determine-target-paths.outputs.aab-target-path }}/${{ steps.determine-target-paths.outputs.artifact_name }}.aab
key: android-apk-${{ inputs.build_type }}-${{ env.CACHE_GENERATION }}-${{ steps.generate-fingerprint.outputs.fingerprint }}
# Include Gradle properties in key to force rebuild when properties change
# Keep the `hashFiles` call for Gradle config in-sync with these steps:
# - "Cache Gradle dependencies"
# - "Cache build artifacts"
key: android-apk-${{ inputs.build_type }}-${{ env.CACHE_GENERATION }}-${{ steps.generate-fingerprint.outputs.fingerprint }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
android-apk-${{ inputs.build_type }}-${{ env.CACHE_GENERATION }}-
android-apk-

- name: Cache Gradle dependencies
uses: cirruslabs/cache@v4
if: ${{ steps.apk-cache-restore.outputs.cache-hit != 'true' }}
env:
GRADLE_CACHE_VERSION: 1
with:
path: |
~/_work/.gradle/caches
~/_work/.gradle/wrapper
# Keep the `hashFiles` call for Gradle config in-sync with these steps:
# - "Check and restore cached APKs if Fingerprint is found"
# - "Cache build artifacts"
key: gradle-${{ env.GRADLE_CACHE_VERSION }}-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}

- name: Build Android E2E APKs
if: ${{ steps.apk-cache-restore.outputs.cache-hit != 'true' || steps.gradle-cache-restore.outputs.cache-hit != 'true' }}
if: ${{ steps.apk-cache-restore.outputs.cache-hit != 'true' }}
run: |
echo "🏗 Building Android E2E APKs..."
export NODE_OPTIONS="--max-old-space-size=8192"
Expand Down Expand Up @@ -178,7 +185,7 @@ jobs:
MM_INFURA_PROJECT_ID: ${{ secrets.MM_INFURA_PROJECT_ID }}

- name: Repack APK with JS updates using @expo/repack-app
if: ${{ steps.apk-cache-restore.outputs.cache-hit == 'true' && steps.gradle-cache-restore.outputs.cache-hit == 'true' }}
if: ${{ steps.apk-cache-restore.outputs.cache-hit == 'true' }}
run: |
echo "📦 Repacking APK with updated JavaScript bundle using @expo/repack-app..."
# Use the optimized repack script which uses @expo/repack-app
Expand Down Expand Up @@ -229,14 +236,17 @@ jobs:

# Cache build artifacts with the pre-build fingerprint
- name: Cache build artifacts
if: ${{ steps.apk-cache-restore.outputs.cache-hit != 'true' || steps.gradle-cache-restore.outputs.cache-hit != 'true' }}
if: ${{ steps.apk-cache-restore.outputs.cache-hit != 'true' }}
uses: cirruslabs/cache@v4
with:
path: |
${{ steps.determine-target-paths.outputs.apk-target-path }}/${{ steps.determine-target-paths.outputs.artifact_name }}.apk
${{ steps.determine-target-paths.outputs.test-apk-target-path }}/${{ steps.determine-target-paths.outputs.artifact_name }}-androidTest.apk
${{ steps.determine-target-paths.outputs.aab-target-path }}/${{ steps.determine-target-paths.outputs.artifact_name }}.aab
key: android-apk-${{ inputs.build_type }}-${{ env.CACHE_GENERATION }}-${{ steps.generate-fingerprint.outputs.fingerprint }}
# Keep the `hashFiles` call for Gradle config in-sync with these steps:
# - "Check and restore cached APKs if Fingerprint is found"
# - "Cache Gradle dependencies"
key: android-apk-${{ inputs.build_type }}-${{ env.CACHE_GENERATION }}-${{ steps.generate-fingerprint.outputs.fingerprint }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}

- name: Upload Android APK
id: upload-apk
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/build-ios-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,13 +58,13 @@ jobs:

- name: Cache Xcode derived data
uses: cirruslabs/cache@0ea6c28a9b52ff2a1a01354742d8fbe0c4599693
env:
XCODE_CACHE_VERSION: 1
with:
path: |
~/Library/Developer/Xcode/DerivedData
ios/build
key: ${{ runner.os }}-xcode-${{ hashFiles('ios/**/*.{h,m,mm,swift}', 'ios/**/Podfile.lock', 'yarn.lock') }}
restore-keys: |
${{ runner.os }}-xcode-
key: ${{ runner.os }}-xcode-${{ env.XCODE_CACHE_VERSION }}-${{ hashFiles('ios/**/*.{h,m,mm,swift}', 'ios/**/Podfile.lock', 'yarn.lock') }}

# Install Node.js, Xcode tools, and other iOS development dependencies
- name: Installing iOS Environment Setup
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/create-release-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -79,15 +79,15 @@ jobs:
create-release-pr:
needs: [resolve-bases, resolve-previous-ref, generate-build-version]
name: Create Release Pull Request using Github Tools
uses: MetaMask/github-tools/.github/workflows/create-release-pr.yml@7fe185fdb0e60981c898e88d82e44ff33f604daa
uses: MetaMask/github-tools/.github/workflows/create-release-pr.yml@749c097218590d5cd36d28d07967e12ba830b146
with:
platform: mobile
checkout-base-branch: ${{ needs.resolve-bases.outputs.checkout_base }}
release-pr-base-branch: ${{ needs.resolve-bases.outputs.release_base }}
semver-version: ${{ inputs.semver-version }}
previous-version-ref: ${{ needs.resolve-previous-ref.outputs.previous_ref }}
mobile-build-version: ${{ needs.generate-build-version.outputs.build-version }}
github-tools-version: 7fe185fdb0e60981c898e88d82e44ff33f604daa
github-tools-version: 749c097218590d5cd36d28d07967e12ba830b146
secrets:
# This token needs write permissions to metamask-mobile & read permissions to metamask-planning
# If called from auto-create-release-pr use the PR_TOKEN passed in as an input, if called manually use github secret token values
Expand Down
30 changes: 15 additions & 15 deletions .github/workflows/run-e2e-smoke-tests-android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -134,20 +134,20 @@ jobs:
changed_files: ${{ inputs.changed_files }}
secrets: inherit

prediction-market-android-smoke:
strategy:
matrix:
split: [1]
fail-fast: false
uses: ./.github/workflows/run-e2e-workflow.yml
with:
test-suite-name: prediction_market_android_smoke-${{ matrix.split }}
platform: android
test_suite_tag: 'SmokePredictions'
split_number: ${{ matrix.split }}
total_splits: 1
changed_files: ${{ inputs.changed_files }}
secrets: inherit
# prediction-market-android-smoke:
# strategy:
# matrix:
# split: [1]
# fail-fast: false
# uses: ./.github/workflows/run-e2e-workflow.yml
# with:
# test-suite-name: prediction_market_android_smoke-${{ matrix.split }}
# platform: android
# test_suite_tag: 'SmokePredictions'
# split_number: ${{ matrix.split }}
# total_splits: 1
# changed_files: ${{ inputs.changed_files }}
# secrets: inherit

rewards-android-smoke:
strategy:
Expand Down Expand Up @@ -177,7 +177,7 @@ jobs:
- network-abstraction-android-smoke
- network-expansion-android-smoke
- confirmations-redesigned-android-smoke
- prediction-market-android-smoke
# - prediction-market-android-smoke
- rewards-android-smoke
steps:
- name: Checkout
Expand Down
30 changes: 15 additions & 15 deletions .github/workflows/run-e2e-smoke-tests-ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -134,20 +134,20 @@ jobs:
changed_files: ${{ inputs.changed_files }}
secrets: inherit

prediction-market-ios-smoke:
strategy:
matrix:
split: [1]
fail-fast: false
uses: ./.github/workflows/run-e2e-workflow.yml
with:
test-suite-name: prediction_market_ios_smoke-${{ matrix.split }}
platform: ios
test_suite_tag: 'SmokePredictions'
split_number: ${{ matrix.split }}
total_splits: 1
changed_files: ${{ inputs.changed_files }}
secrets: inherit
# prediction-market-ios-smoke:
# strategy:
# matrix:
# split: [1]
# fail-fast: false
# uses: ./.github/workflows/run-e2e-workflow.yml
# with:
# test-suite-name: prediction_market_ios_smoke-${{ matrix.split }}
# platform: ios
# test_suite_tag: 'SmokePredictions'
# split_number: ${{ matrix.split }}
# total_splits: 1
# changed_files: ${{ inputs.changed_files }}
# secrets: inherit

rewards-ios-smoke:
strategy:
Expand Down Expand Up @@ -177,7 +177,7 @@ jobs:
- accounts-ios-smoke
- network-abstraction-ios-smoke
- network-expansion-ios-smoke
- prediction-market-ios-smoke
# - prediction-market-ios-smoke
- rewards-ios-smoke
steps:
- name: Checkout
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
diff --git a/dist/NetworkEnablementController.cjs b/dist/NetworkEnablementController.cjs
index d4a40bea9e4ed3c28e347d96e309efe1ff889e81..fab280760de6bd5cdfdbecf01495c2d5616b2e16 100644
--- a/dist/NetworkEnablementController.cjs
+++ b/dist/NetworkEnablementController.cjs
@@ -25,6 +25,11 @@ const getDefaultNetworkEnablementControllerState = () => ({
[controller_utils_1.ChainId[controller_utils_1.BuiltInNetworkName.Mainnet]]: true,
[controller_utils_1.ChainId[controller_utils_1.BuiltInNetworkName.LineaMainnet]]: true,
[controller_utils_1.ChainId[controller_utils_1.BuiltInNetworkName.BaseMainnet]]: true,
+ [controller_utils_1.ChainId[controller_utils_1.BuiltInNetworkName.ArbitrumOne]]: true,
+ [controller_utils_1.ChainId[controller_utils_1.BuiltInNetworkName.BscMainnet]]: true,
+ [controller_utils_1.ChainId[controller_utils_1.BuiltInNetworkName.OptimismMainnet]]: true,
+ [controller_utils_1.ChainId[controller_utils_1.BuiltInNetworkName.PolygonMainnet]]: true,
+ [controller_utils_1.ChainId[controller_utils_1.BuiltInNetworkName.SeiMainnet]]: true,
},
[utils_1.KnownCaipNamespace.Solana]: {
[keyring_api_1.SolScope.Mainnet]: true,
Binary file added app/animations/Carousel_Confetti.riv
Binary file not shown.
Loading
Loading