Skip to content
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: remove global network from signature controller #4797

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

matthewwalsh0
Copy link
Member

Explanation

Remove all global network usage form the signature controller to support multi-chain in the clients.

Specifically:

  • Remove getCurrentChainId constructor callback from SignatureController.
  • Determine chainId using networkClientId from request argument and NetworkController messenger action.
  • Persist chainId and networkClientId in state.

References

Fixes #3498

Changelog

@metamask/signature-controller

  • ADDED: Add chainId and networkClientId to SignatureRequest and LegacyMessage types.
  • CHANGED: Throw if no networkClientId provided or if chainId cannot be determined.
  • REMOVED: Remove getCurrentChainId callback from constructor options.

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've highlighted breaking changes using the "BREAKING" category above as appropriate
  • I've prepared draft pull requests for clients and consumer packages to resolve any breaking changes

@matthewwalsh0
Copy link
Member Author

@metamaskbot publish-preview

Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/accounts-controller": "18.2.2-preview-2c5a4f93",
  "@metamask-previews/address-book-controller": "6.0.1-preview-2c5a4f93",
  "@metamask-previews/announcement-controller": "7.0.1-preview-2c5a4f93",
  "@metamask-previews/approval-controller": "7.1.0-preview-2c5a4f93",
  "@metamask-previews/assets-controllers": "38.3.0-preview-2c5a4f93",
  "@metamask-previews/base-controller": "7.0.1-preview-2c5a4f93",
  "@metamask-previews/build-utils": "3.0.1-preview-2c5a4f93",
  "@metamask-previews/chain-controller": "0.1.3-preview-2c5a4f93",
  "@metamask-previews/composable-controller": "9.0.1-preview-2c5a4f93",
  "@metamask-previews/controller-utils": "11.3.0-preview-2c5a4f93",
  "@metamask-previews/ens-controller": "14.0.1-preview-2c5a4f93",
  "@metamask-previews/eth-json-rpc-provider": "4.1.4-preview-2c5a4f93",
  "@metamask-previews/gas-fee-controller": "20.0.1-preview-2c5a4f93",
  "@metamask-previews/json-rpc-engine": "9.0.3-preview-2c5a4f93",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.3-preview-2c5a4f93",
  "@metamask-previews/keyring-controller": "17.2.2-preview-2c5a4f93",
  "@metamask-previews/logging-controller": "6.0.1-preview-2c5a4f93",
  "@metamask-previews/message-manager": "10.1.1-preview-2c5a4f93",
  "@metamask-previews/name-controller": "8.0.1-preview-2c5a4f93",
  "@metamask-previews/network-controller": "21.0.1-preview-2c5a4f93",
  "@metamask-previews/notification-controller": "7.0.0-preview-2c5a4f93",
  "@metamask-previews/notification-services-controller": "0.9.0-preview-2c5a4f93",
  "@metamask-previews/permission-controller": "11.0.2-preview-2c5a4f93",
  "@metamask-previews/permission-log-controller": "3.0.1-preview-2c5a4f93",
  "@metamask-previews/phishing-controller": "12.0.3-preview-2c5a4f93",
  "@metamask-previews/polling-controller": "10.0.1-preview-2c5a4f93",
  "@metamask-previews/preferences-controller": "13.0.3-preview-2c5a4f93",
  "@metamask-previews/profile-sync-controller": "0.9.7-preview-2c5a4f93",
  "@metamask-previews/queued-request-controller": "5.1.0-preview-2c5a4f93",
  "@metamask-previews/rate-limit-controller": "6.0.1-preview-2c5a4f93",
  "@metamask-previews/selected-network-controller": "18.0.1-preview-2c5a4f93",
  "@metamask-previews/signature-controller": "19.1.0-preview-2c5a4f93",
  "@metamask-previews/transaction-controller": "37.2.0-preview-2c5a4f93",
  "@metamask-previews/user-operation-controller": "15.0.1-preview-2c5a4f93"
}

Base automatically changed from refactor/signature-controller-remove-message-managers to main October 16, 2024 13:15
@matthewwalsh0 matthewwalsh0 force-pushed the feat/signature-controller-no-global-chain-id branch from 2c5a4f9 to 6d497e3 Compare October 17, 2024 21:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant