Skip to content

feat: support external sign transactions#5604

Merged
matthewwalsh0 merged 3 commits intomainfrom
feat/transaction-external-sign
Apr 8, 2025
Merged

feat: support external sign transactions#5604
matthewwalsh0 merged 3 commits intomainfrom
feat/transaction-external-sign

Conversation

@matthewwalsh0
Copy link
Member

@matthewwalsh0 matthewwalsh0 commented Apr 7, 2025

Explanation

Support transactions that are signed externally, such as delegations, using a new isExternalSign property that disables nonce generation and signing via the KeyringController.

References

Fixes #4596 #4597

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 communicated my changes to consumers by updating changelogs for packages I've changed, highlighting breaking changes as necessary
  • I've prepared draft pull requests for clients and consumer packages to resolve any breaking changes

@matthewwalsh0 matthewwalsh0 changed the base branch from main to feat/is-atomic-batch-supported April 7, 2025 13:48
@matthewwalsh0 matthewwalsh0 marked this pull request as ready for review April 7, 2025 14:03
@matthewwalsh0 matthewwalsh0 requested review from a team as code owners April 7, 2025 14:03
@matthewwalsh0
Copy link
Member Author

@metamaskbot publish-preview

@github-actions
Copy link
Contributor

github-actions bot commented Apr 7, 2025

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": "27.0.0-preview-7f6d1f4",
  "@metamask-previews/address-book-controller": "6.0.3-preview-7f6d1f4",
  "@metamask-previews/announcement-controller": "7.0.3-preview-7f6d1f4",
  "@metamask-previews/app-metadata-controller": "1.0.0-preview-7f6d1f4",
  "@metamask-previews/approval-controller": "7.1.3-preview-7f6d1f4",
  "@metamask-previews/assets-controllers": "56.0.0-preview-7f6d1f4",
  "@metamask-previews/base-controller": "8.0.0-preview-7f6d1f4",
  "@metamask-previews/bridge-controller": "12.0.0-preview-7f6d1f4",
  "@metamask-previews/bridge-status-controller": "11.0.0-preview-7f6d1f4",
  "@metamask-previews/build-utils": "3.0.3-preview-7f6d1f4",
  "@metamask-previews/chain-agnostic-permission": "0.3.0-preview-7f6d1f4",
  "@metamask-previews/composable-controller": "11.0.0-preview-7f6d1f4",
  "@metamask-previews/controller-utils": "11.7.0-preview-7f6d1f4",
  "@metamask-previews/earn-controller": "0.10.0-preview-7f6d1f4",
  "@metamask-previews/eip1193-permission-middleware": "0.1.0-preview-7f6d1f4",
  "@metamask-previews/ens-controller": "16.0.0-preview-7f6d1f4",
  "@metamask-previews/eth-json-rpc-provider": "4.1.8-preview-7f6d1f4",
  "@metamask-previews/gas-fee-controller": "23.0.0-preview-7f6d1f4",
  "@metamask-previews/json-rpc-engine": "10.0.3-preview-7f6d1f4",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.7-preview-7f6d1f4",
  "@metamask-previews/keyring-controller": "21.0.1-preview-7f6d1f4",
  "@metamask-previews/logging-controller": "6.0.4-preview-7f6d1f4",
  "@metamask-previews/message-manager": "12.0.1-preview-7f6d1f4",
  "@metamask-previews/multichain": "4.0.0-preview-7f6d1f4",
  "@metamask-previews/multichain-api-middleware": "0.1.1-preview-7f6d1f4",
  "@metamask-previews/multichain-network-controller": "0.3.0-preview-7f6d1f4",
  "@metamask-previews/multichain-transactions-controller": "0.8.0-preview-7f6d1f4",
  "@metamask-previews/name-controller": "8.0.3-preview-7f6d1f4",
  "@metamask-previews/network-controller": "23.2.0-preview-7f6d1f4",
  "@metamask-previews/notification-services-controller": "5.0.1-preview-7f6d1f4",
  "@metamask-previews/permission-controller": "11.0.6-preview-7f6d1f4",
  "@metamask-previews/permission-log-controller": "3.0.3-preview-7f6d1f4",
  "@metamask-previews/phishing-controller": "12.4.1-preview-7f6d1f4",
  "@metamask-previews/polling-controller": "13.0.0-preview-7f6d1f4",
  "@metamask-previews/preferences-controller": "17.0.0-preview-7f6d1f4",
  "@metamask-previews/profile-sync-controller": "11.0.0-preview-7f6d1f4",
  "@metamask-previews/queued-request-controller": "10.0.0-preview-7f6d1f4",
  "@metamask-previews/rate-limit-controller": "6.0.3-preview-7f6d1f4",
  "@metamask-previews/remote-feature-flag-controller": "1.6.0-preview-7f6d1f4",
  "@metamask-previews/sample-controllers": "0.1.0-preview-7f6d1f4",
  "@metamask-previews/selected-network-controller": "22.0.0-preview-7f6d1f4",
  "@metamask-previews/signature-controller": "27.1.0-preview-7f6d1f4",
  "@metamask-previews/token-search-discovery-controller": "2.1.0-preview-7f6d1f4",
  "@metamask-previews/transaction-controller": "53.0.0-preview-7f6d1f4",
  "@metamask-previews/user-operation-controller": "32.0.0-preview-7f6d1f4"
}

OGPoyraz
OGPoyraz previously approved these changes Apr 8, 2025
@matthewwalsh0 matthewwalsh0 force-pushed the feat/is-atomic-batch-supported branch from 88ffa32 to 6a29cee Compare April 8, 2025 10:53
Base automatically changed from feat/is-atomic-batch-supported to main April 8, 2025 10:58
@matthewwalsh0 matthewwalsh0 dismissed stale reviews from pedronfigueiredo and OGPoyraz April 8, 2025 10:58

The base branch was changed.

Skip signing if external sign.
Skip dropped checks if external sign.
@matthewwalsh0 matthewwalsh0 merged commit a118fd3 into main Apr 8, 2025
199 of 200 checks passed
@matthewwalsh0 matthewwalsh0 deleted the feat/transaction-external-sign branch April 8, 2025 12:21
matallui added a commit that referenced this pull request Apr 9, 2025
* main:
  Fix unmocked block tracker warning in NetworkController tests (#5289)
  ci: GH action to remind developers to add release notes in CHANGELOG.md (#5620)
  Release 355.0.0 (#5619)
  Release 354.0.0 (#5615)
  fix: Update origin in Snap requests (#5616)
  Release/353.0.0 (#5612)
  refactor(accounts-controller): use type-cast instead of `@ts-expect-error` (#5568)
  feat: support external sign transactions (#5604)
  feat: extend isAtomicBatchSupported result (#5600)
  fix: Rename `enableTxParamsGasFeeUpdates` to `isAutomaticGasFeeUpdateEnabled` and also callback (#5602)
  Release/352.0.0 (#5608)
  feat: STAKE-1005: refresh staking data when staking txs are confirmed (#5607)
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.

3 participants