-
-
Notifications
You must be signed in to change notification settings - Fork 213
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
feat: add multichain support to bridge-controller #5486
Conversation
9817317
to
1a23d2d
Compare
1a23d2d
to
42b9e6c
Compare
New dependencies detected. Learn more about Socket for GitHub ↗︎
|
@metamaskbot publish-preview |
Preview builds have been published. See these instructions for more information about preview builds. Expand for full list of packages and versions.
|
@metamaskbot publish-preview |
Preview builds have been published. See these instructions for more information about preview builds. Expand for full list of packages and versions.
|
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 great work
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! Great work!
@metamaskbot publish-preview |
Preview builds have been published. See these instructions for more information about preview builds. Expand for full list of packages and versions.
|
## Explanation Releasing @metamask/bridge-controller 11.0.0 to include multichain network support implemented in [5486](#5486) <!-- Thanks for your contribution! Take a moment to answer these questions so that reviewers have the information they need to properly understand your changes: * What is the current state of things and why does it need to change? * What is the solution your changes offer and how does it work? * Are there any changes whose purpose might not obvious to those unfamiliar with the domain? * If your primary goal was to update one package but you found you had to update another one along the way, why did you do so? * If you had to upgrade a dependency, why did you do so? --> ## References <!-- Are there any issues that this pull request is tied to? Are there other links that reviewers should consult to understand these changes better? Are there client or consumer pull requests to adopt any breaking changes? For example: * Fixes #12345 * Related to #67890 --> ## Changelog <!-- If you're making any consumer-facing changes, list those changes here as if you were updating a changelog, using the template below as a guide. (CATEGORY is one of BREAKING, ADDED, CHANGED, DEPRECATED, REMOVED, or FIXED. For security-related issues, follow the Security Advisory process.) Please take care to name the exact pieces of the API you've added or changed (e.g. types, interfaces, functions, or methods). If there are any breaking changes, make sure to offer a solution for consumers to follow once they upgrade to the changes. Finally, if you're only making changes to development scripts or tests, you may replace the template below with "None". --> ### `@metamask/bridge-controller` ### Added - BREAKING: Bump dependency @metamask/keyring-api to ^17.2.0 ([#5486](#5486)) - BREAKING: Bump dependency @metamask/multichain-network-controller to ^0.3.0 ([#5486](#5486)) - BREAKING: Bump dependency @metamask/snaps-utils to ^8.10.0 ([#5486](#5486)) - BREAKING: Bump peer dependency @metamask/snaps-controllers to ^9.19.0 ([#5486](#5486)) - Solana constants, utils, quote and token support ([#5486](#5486)) - Utilities to convert chainIds between `ChainId`, `Hex`, `string` and `CaipChainId` ([#5486](#5486)) - Add `refreshRate` feature flag to enable chain-specific quote refresh intervals ([#5486](#5486)) - `isNativeAddress` and `isSolanaChainId` utilities that can be used by both the controller and clients ([#5486](#5486)) ### Changed - Replace QuoteRequest usages with `GenericQuoteRequest` to support both EVM and multichain input parameters ([#5486](#5486)) - Make `QuoteRequest.slippage` optional ([#5486](#5486)) - Deprecate `SwapsTokenObject` and replace usages with multichain BridgeAsset ([#5486](#5486)) - Changed `bridgeFeatureFlags.extensionConfig.chains` to key configs by CAIP chainIds ([#5486](#5486)) ## Checklist N/A
Explanation
The
BridgeController
currently only works with EVM networks and addresses. In order to support Solana integration into mobile, this PR adds the multichain compatibility updates implemented in extension.Specific changes
Notes for upgrading mobile to this version
AllowedActions
type update)References
Bridge{,Status}Controller
state metamask-extension#29443Changelog
@metamask/bridge-controller 8.0.0
ADDED
CHANGED
fetchFn
can propagate parameters to the underlying fetch functionbridgeFeatureFlags.chains
keys from Hex to CAIP-formatted chainIdsChecklist