Skip to content

Commit

Permalink
Merge branch 'main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
georgewrmarshall authored Feb 12, 2025
2 parents 2741f9f + b3f0ee7 commit f1d9f84
Show file tree
Hide file tree
Showing 1,841 changed files with 117,940 additions and 46,567 deletions.
12 changes: 0 additions & 12 deletions .android.env.example
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,3 @@ export MM_FOX_CODE="EXAMPLE_FOX_CODE"
export MM_BRANCH_KEY_TEST=
export MM_BRANCH_KEY_LIVE=
export METAMASK_BUILD_TYPE=
# Firebase
export FCM_CONFIG_API_KEY=
export FCM_CONFIG_AUTH_DOMAIN=
export FCM_CONFIG_PROJECT_ID=
export FCM_CONFIG_STORAGE_BUCKET=
export FCM_CONFIG_MESSAGING_SENDER_ID=
export FCM_CONFIG_APP_ID=
export GOOGLE_SERVICES_B64_ANDROID=
#Notifications Feature Announcements
export FEATURES_ANNOUNCEMENTS_ACCESS_TOKEN=
export FEATURES_ANNOUNCEMENTS_SPACE_ID=

8 changes: 8 additions & 0 deletions .depcheckrc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ ignores:
- '@react-native-community/slider'
- 'patch-package'
- '@lavamoat/allow-scripts'
- '@lavamoat/git-safe-dependencies'
- 'babel-plugin-inline-import'
# This is used on the patch for TokenRatesController of Assets controllers, for we to be able to use the last version of it
- cockatiel
Expand Down Expand Up @@ -84,3 +85,10 @@ ignores:
- 'app'
- 'i18n-js'
- 'images'

## Expo
- '@config-plugins/detox'
- 'cross-spawn'
- 'expo-build-properties'
- 'expo-dev-client'

2 changes: 2 additions & 0 deletions .e2e.env.example
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,5 @@ export MM_TEST_ACCOUNT_SRP='word1 word... word12'
export MM_TEST_ACCOUNT_ADDRESS='0x...'
export MM_TEST_ACCOUNT_PRIVATE_KEY=''
export IS_TEST="true"
# Temporary mechanism to enable security alerts API prior to release.
export MM_SECURITY_ALERTS_API_ENABLED="true"
35 changes: 34 additions & 1 deletion .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ module.exports = {
},
},
{
files: ['scripts/**/*.js'],
files: ['scripts/**/*.js', 'app.config.js'],
rules: {
'no-console': 0,
'import/no-commonjs': 0,
Expand All @@ -73,6 +73,39 @@ module.exports = {
'@metamask/design-tokens/color-no-hex': 'off',
},
},
{
files: [
'app/components/UI/Name/**/*.{js,ts,tsx}',
'app/components/UI/SimulationDetails/**/*.{js,ts,tsx}',
'app/components/hooks/DisplayName/**/*.{js,ts,tsx}',
'app/components/Views/confirmations/**/*.{js,ts,tsx}'
],
excludedFiles: [
'app/components/Views/confirmations/components/WatchAssetRequest/**/*.{js,ts,tsx}'],
rules: {
'no-restricted-syntax': [
'error',
{
selector: `ImportSpecifier[imported.name=/${[
'selectChainId',
'selectContractExchangeRates',
'selectConversionRate',
'selectNetworkClientId',
'selectNetworkStatus',
'selectNickname',
'selectProviderConfig',
'selectProviderType',
'selectRpcUrl',
'selectSelectedNetworkClientId',
'selectTicker',
]
.map((method) => `^${method}$`)
.join('|')}/]`,
message: 'Avoid using global network selectors in confirmations',
},
],
},
},
],

globals: {
Expand Down
87 changes: 50 additions & 37 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -7,54 +7,65 @@
app/component-library/ @MetaMask/design-system-engineers

# Platform Team
patches/ @MetaMask/mobile-platform
app/core/Engine.ts @MetaMask/mobile-platform
app/core/Engine.test.js @MetaMask/mobile-platform
app/core/Analytics/ @MetaMask/mobile-platform
app/util/metrics/ @MetaMask/mobile-platform
app/components/hooks/useMetrics/ @MetaMask/mobile-platform

# Supply Chain Team
bitrise.yml @MetaMask/supply-chain @MetaMask/mobile-platform
yarn.lock @MetaMask/supply-chain @MetaMask/mobile-platform
ios/Podfile.lock @MetaMask/supply-chain @MetaMask/mobile-platform
.github/CODEOWNERS @MetaMask/mobile-platform
patches/ @MetaMask/mobile-platform
app/core/Engine/Engine.ts @MetaMask/mobile-platform
app/core/Engine/Engine.test.ts @MetaMask/mobile-platform
app/core/Engine/index.ts @MetaMask/mobile-platform
app/core/Engine/types.ts @MetaMask/mobile-platform
app/core/Engine/controllers/RemoteFeatureFlagController/ @MetaMask/mobile-platform
app/core/Analytics/ @MetaMask/mobile-platform
app/util/metrics/ @MetaMask/mobile-platform
app/components/hooks/useMetrics/ @MetaMask/mobile-platform
app/selectors/featureFlagController/* @MetaMask/mobile-platform
app/selectors/featureFlagController/minimumAppVersion/ @MetaMask/mobile-platform
app/store/migrations/ @MetaMask/mobile-platform
bitrise.yml @MetaMask/mobile-platform
yarn.lock @MetaMask/mobile-platform
ios/Podfile.lock @MetaMask/mobile-platform
app/components/Views/BrowserTab/BrowserTab.tsx @MetaMask/mobile-platform

# Ramps Team
app/components/UI/Ramp/ @MetaMask/ramp @MetaMask/mobile-platform
app/reducers/fiatOrders/ @MetaMask/ramp @MetaMask/mobile-platform
app/components/UI/Ramp/ @MetaMask/ramp
app/reducers/fiatOrders/ @MetaMask/ramp

# Confirmation Team
app/components/Views/confirmations @MetaMask/confirmations @MetaMask/mobile-platform
ppom @MetaMask/confirmations @MetaMask/mobile-platform
app/components/Views/confirmations @MetaMask/confirmations
ppom @MetaMask/confirmations

# All below files are maintained by the SDK team because they contain SDK related code, WalletConnect integrations, or critical SDK flows.
app/actions/sdk @MetaMask/sdk-devs @MetaMask/mobile-platform
app/components/Approvals/WalletConnectApproval @MetaMask/sdk-devs @MetaMask/mobile-platform
app/components/Views/SDK @MetaMask/sdk-devs @MetaMask/mobile-platform
app/components/Views/WalletConnectSessions @MetaMask/sdk-devs @MetaMask/mobile-platform
app/core/BackgroundBridge/WalletConnectPort.ts @MetaMask/sdk-devs @MetaMask/mobile-platform
app/core/DeeplinkManager @MetaMask/sdk-devs @MetaMask/mobile-platform
app/core/RPCMethods/RPCMethodMiddleware.ts @MetaMask/sdk-devs @MetaMask/mobile-platform
app/core/SDKConnect @MetaMask/sdk-devs @MetaMask/mobile-platform
app/core/WalletConnect @MetaMask/sdk-devs @MetaMask/mobile-platform
app/reducers/sdk @MetaMask/sdk-devs @MetaMask/mobile-platform
app/util/walletconnect.js @MetaMask/sdk-devs @MetaMask/mobile-platform
app/actions/sdk @MetaMask/sdk-devs
app/components/Approvals/WalletConnectApproval @MetaMask/sdk-devs
app/components/Views/SDK @MetaMask/sdk-devs
app/components/Views/WalletConnectSessions @MetaMask/sdk-devs
app/core/BackgroundBridge/WalletConnectPort.ts @MetaMask/sdk-devs
app/core/DeeplinkManager @MetaMask/sdk-devs
app/core/RPCMethods/RPCMethodMiddleware.ts @MetaMask/sdk-devs
app/core/SDKConnect @MetaMask/sdk-devs
app/core/WalletConnect @MetaMask/sdk-devs
app/reducers/sdk @MetaMask/sdk-devs
app/util/walletconnect.js @MetaMask/sdk-devs

# Accounts Team
app/core/Encryptor/ @MetaMask/accounts-engineers
app/core/Encryptor/ @MetaMask/accounts-engineers
app/core/Engine/controllers/AccountsController @MetaMask/accounts-engineers

# Swaps Team
app/components/UI/Swaps @MetaMask/swaps-engineers @MetaMask/mobile-platform
app/components/UI/Swaps @MetaMask/swaps-engineers

# Notifications Team
app/components/Views/Notifications @MetaMask/notifications @MetaMask/mobile-platform
app/components/Views/Settings/NotificationsSettings @MetaMask/notifications @MetaMask/mobile-platform
app/components/UI/Notifications @MetaMask/notifications @MetaMask/mobile-platform
app/reducers/notification @MetaMask/notifications @MetaMask/mobile-platform
app/actions/notification @MetaMask/notifications @MetaMask/mobile-platform
app/selectors/notification @MetaMask/notifications @MetaMask/mobile-platform
app/util/notifications @MetaMask/notifications @MetaMask/mobile-platform
app/store/util/notifications @MetaMask/notifications @MetaMask/mobile-platform
app/components/Views/Notifications @MetaMask/notifications
app/components/Views/Settings/NotificationsSettings @MetaMask/notifications
**/Notifications/** @MetaMask/notifications
**/Notification/** @MetaMask/notifications
**/notifications/** @MetaMask/notifications
**/notification/** @MetaMask/notifications

# Identity Team
app/actions/identity @MetaMask/identity
app/util/identity @MetaMask/identity
app/components/UI/ProfileSyncing @MetaMask/identity
e2e/specs/identity @MetaMask/identity

# LavaMoat Team
ses.cjs @MetaMask/supply-chain
Expand All @@ -64,6 +75,9 @@ patches/react-native+0.*.patch @MetaMask/supply-chain
**/snaps/** @MetaMask/snaps-devs
**/Snaps/** @MetaMask/snaps-devs

# Wallet API Platform Team
app/core/RPCMethods/ @MetaMask/wallet-api-platform-engineers

# Staking Team
app/components/UI/Stake @MetaMask/metamask-staking

Expand Down Expand Up @@ -112,7 +126,6 @@ app/components/Views/QRAccountDisplay @MetaMask/wallet-ux
app/components/Views/QRScanner @MetaMask/wallet-ux
app/components/Views/Settings @MetaMask/wallet-ux
app/components/Views/TermsAndConditions @MetaMask/wallet-ux

app/reducers/experimentalSettings @MetaMask/wallet-ux
app/reducers/modals @MetaMask/wallet-ux
app/reducers/navigation @MetaMask/wallet-ux
Expand Down
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,8 @@ body:
- In production (default)
- In beta
- During release testing
- On the development branch
- On main branch
- On a feature branch
validations:
required: true
- type: input
Expand Down
3 changes: 2 additions & 1 deletion .github/guidelines/LABELING_GUIDELINES.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@ To merge your PR one of the following QA labels are required:
- **Run E2E Smoke**: This label will kick-off E2E testing and trigger a check to make sure the E2E tests pass.

### Optional labels:
- **regression-develop**: This label can manually be added to a bug report issue at the time of its creation if the bug is present on the development branch, i.e., `main`, but is not yet released in production.
- **regression-main**: This label can manually be added to a bug report issue at the time of its creation if the bug is present on the development branch, i.e., `main`, but is not yet released in production.
- **feature-branch-bug**: This label can manually be added to a bug report issue at the time of its creation if the bug is present on a feature branch, i.e., before merging to `main`.

### Labels prohibited when PR needs to be merged:
Any PR that includes one of the following labels can not be merged:
Expand Down
7 changes: 1 addition & 6 deletions .github/scripts/add-release-label-to-pr-and-linked-issues.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import { retrieveLinkedIssues } from './shared/issue';
import { Label } from './shared/label';
import { Labelable, addLabelToLabelable } from './shared/labelable';
import { retrievePullRequest } from './shared/pull-request';
import { isValidVersionFormat } from './shared/utils';

main().catch((error: Error): void => {
console.error(error);
Expand Down Expand Up @@ -90,9 +91,3 @@ async function main(): Promise<void> {
await addLabelToLabelable(octokit, linkedIssue, releaseLabel);
}
}

// This helper function checks if version has the correct format: "x.y.z" where "x", "y" and "z" are numbers.
function isValidVersionFormat(str: string): boolean {
const regex = /^\d+\.\d+\.\d+$/;
return regex.test(str);
}
Loading

0 comments on commit f1d9f84

Please sign in to comment.