All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fix
block-ref
middleware, and prevent it from making a duplicate request (#151) - Fix
retryOnEmpty
middleware and prevent it from making duplicate requests (#147)
- 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 tometamask:eth-json-rpc-middleware:*
ormetamask:*
.
- You will not be able to see log messages by default, but you can turn them on for this library by setting the
- BREAKING: Require Node >= 14 (#137)
- Expose
SafeEventEmitterProvider
type (#127)
- Move
eth-block-tracker
fromdevDependencies
todependencies
(#125)- We depend upon this package only for types.
- Added
suppressUnauthorized
param togetAccounts
(#116)
- Bump
node-fetch
to resolve vulnerability (#115)
- 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 inv6.0.0
.
- As of
8.0.0 - 2021-11-04
- 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 andethersProviderAsMiddleware
(#97)
7.0.1 - 2021-03-26
blockTrackerInspectorMiddleware
(#88)- Due to an error introduced in #68, this middleware would sometimes hang indefinitely.
7.0.0 - 2021-03-25
- TypeScript types (#68)
- (BREAKING) Move middleware files to
/src
folder (#60) - (BREAKING) Convert all exports to named (#81)
- Migrate to TypeScript (#68)
- Replace
url
dependency with native URL global (#67) - Ask bundlers to ignore Node-specific depedencies in browser environments (#78, #84)
- Removed various unused production dependencies (#10, #80)
- (BREAKING) Parity middleware (#63)
- Previously imported as
eth-json-rpc-middleware/wallet-parity.js
- Previously imported as
- (BREAKING) Scaffold middleware (#60)
- This was just a re-export from
json-rpc-engine
.
- This was just a re-export from
retryOnEmpty
middleware error messages (#58)- They were referencing a different middleware.
- Default unrecognized methods to never be cached (#66)
- Only publish necessary files (#70)
- Robustify
providerFromEngine
callback parameter validation (#76)- Previously, it only errored if the parameter was falsy. Now, it will error if it is not a function.
- Passing the previous implementation a truthy, non-function value would cause fatal downstream errors.
- Prevent caching unrecognized requests (#75)
- Previously, nonsense values were sometimes cached, resulting in an ugly state and possibly a minor performance penalty.
6.0.0 - 2020-09-22
- (BREAKING) Delete VM middleware (#56)
- Previously imported as
eth-json-rpc-middleware/vm.js
- Previously imported as