Skip to content

Releases: MetaMask/eth-json-rpc-middleware

11.0.2

07 Sep 08:59
b74afb7
Compare
Choose a tag to compare

Changed

  • Bump @metamask/eth-sig-util from ^5.0.0 to ^6.0.0 (#236)

11.0.1

13 Jul 00:09
ceda029
Compare
Choose a tag to compare

Changed

  • Bump @metamask/utils from ^3.5.0 to ^5.0.2 (#201)
  • Bump eth-block-tracker from ^7.0.0 to ^7.0.1 (#204)

11.0.0

21 Feb 18:56
e7a1de5
Compare
Choose a tag to compare

Changed

  • BREAKING: Update eth-block-tracker to v7 (#196, #188)
    • This changes the expected type of the blockTracker parameter for the following functions:
      • createBlockCacheMiddleware
      • createBlockRefMiddleware
      • createBlockRefRewriteMiddleware
      • createBlockTrackerInspectorMiddleware
      • createRetryOnEmptyMiddleware
    • Only the type change is breaking; there is no functional change here.
  • BREAKING: Add new required parameters for the fetch middleware (#192, #190)
    • The required parameters are fetch and btoa. Previously we would either use the global by that name (if one existed), or a polyfill. Those polyfills have been removed.
  • Replace json-stable-stringify with safe-stable-stringify (#104)
    • This should slightly improve performance of the inlight cache and block cache middleware

Removed

  • BREAKING: Remove providerFromEngine and providerFromMiddleware (#194)
    • These are now provided by the package @metamask/eth-json-rpc-provider instead
  • BREAKING: Remove unnecessary suppressUnauthorized option (#193)

Fixed

  • BREAKING: Fix types for createWalletMiddleware (#111)
    • This middleware had previously included a number of errors, where the type contradicted the Ethereum JSON-RPC specification and how we've been using this middleware in practice. They should all now match the specification.

10.0.0

02 Feb 13:06
6ee50c7
Compare
Choose a tag to compare

Changed

  • BREAKING: Rename the package from eth-json-rpc-middleware to @metamask/eth-json-rpc-middleware (#180)
  • Change all middleware request and response types to unknown (#183)
    • This more accurately reflects the expectations of the middleware, and the way they had been used. This was required to more easily compose this middleware with others that had non-matching types.
  • The block cache and the inflight cache middleware types have been updated to include the skipCache request property (#178)
    • This property was always supported, but it was missing from the type.

9.0.1

05 Oct 17:12
c4d0bf8
Compare
Choose a tag to compare

Changed

  • Update @metamask/eth-sig-util from v3 to v5 (#133, #150)
  • Remove unused dependencies (#133)

Fixed

  • Fix block-ref middleware, and prevent it from making a duplicate request (#151)
  • Fix retryOnEmpty middleware and prevent it from making duplicate requests (#147)

9.0.0

22 Aug 22:46
41c54f9
Compare
Choose a tag to compare

Added

  • Add logging (#140)
    • You will not be able to see log messages by default, but you can turn them on for this library by setting the DEBUG environment variable to metamask:eth-json-rpc-middleware:* or metamask:*.

Changed

  • BREAKING: Require Node >= 14 (#137)

8.1.0

29 Apr 21:14
25a7c4b
Compare
Choose a tag to compare

Added

  • Expose SafeEventEmitterProvider type (#127)

Fixed

  • Move eth-block-tracker from devDependencies to dependencies (#125)
    • We depend upon this package only for types.

8.0.2

27 Apr 18:02
fa67ae6
Compare
Choose a tag to compare

Added

  • Added suppressUnauthorized param to getAccounts (#116)

Security

  • Bump node-fetch to resolve vulnerability (#115)

8.0.1

07 Dec 17:34
eb649a8
Compare
Choose a tag to compare

Fixed

  • Restore support for query strings in fetch middleware (#109)
    • As of v7.0.0, query strings were silently dropped from RPC URLs passed in. Now they are preserved, as was the case in v6.0.0.

8.0.0

05 Nov 18:22
09290a7
Compare
Choose a tag to compare

Added

  • BREAKING: Add eth_signTransaction support (#96)
    • We consider this breaking because a wallet application may not support this method, and would have to explicitly block it until its implications can be adequately represented to the user.
  • Add send method to provider and ethersProviderAsMiddleware (#97)