- Support Node.js 22+ by removing upper bound on Node version requirement
- Allow customizable fetch cache option
- Support node 20
- Remove weiroll functionality
- Updated Node.js engine requirements to
>=14.0.0 <19.0.0to align with downstream dependencies
- Add support for
eth_getTransactionByHashRPC method
- Add support for weiroll
- Add
decodeLog
- (breaking) Replace
function encodeCallSignature(...)withfunction encodeFunctionCall(...) - (breaking) Replace
function decodeCallOutput(...)withfunction decodeParameters(...) - From
web3-eth-abipackage, add:function encodeFunctionSignature(...)function encodeEventSignature(...)function encodeParameters(...)
- Add a note about the absence of
function fromHex(number) - Relax node engine requirements in
package.json
- (breaking) When an Ethereum full node call results in a HTTP status
200 OKbut the payload contained an error{error: { code: "XXXX", message: "error message"}}we didn't throw but returnedresults: undefinedwhich was undefined behavior. - In
options, allow users to defineAbortController.signalto self-manage the lifecycle of a fetch request.
- For any kind of call to an Ethereum full node, when doing an RPC call, when
the HTTP request returned a status 200, but the body didn't contain a valid
JSON object, eth-fun emitted a
FetchErrorthat didn't show the text body to the developer. eth-fun now includes the non-json body in the error message so that developers understand what went wrong in the HTTP request and its parsing.
toHex(num)now throws whentypeof num !== "number"
- Remove
solcand all related functions (allFunctions,getStorageLocation&compile).
- Have the
transportmodule throw aRPCErrors upon encountering a status>= 500from an Ethereum full node.
- Add
getTransactionReceiptfunction
- Add
getLogsfunction
- Export both ESM and CJS modules as package using "conditional exports"
- New build process allows to target CommonJS projects in e.g. node.js
- (Breaking change) Change
node(it was a URL) function parameter tooptionsobject for all JSON-RPC functions - (Breaking change) Rename
ethCalltocall - Expose
toHexfunction - Add
getBlockByNumberfunction
- (Breaking change) All RPC functions may now throw a
RPCErrorin case the remote procedure returns an error - Add
error objectto exports - Add
ethCall,encodeCallSignatureanddecodeCallOutputfunctions to exports
- Add
nodes objectto exports - Add
getStorageLocationfunction
- Add
getStorageAtfunction - Add
blockNumberfunction
- Add
compilefunction - (Breaking change) Separate
allFunctionsandcompilefunction - (Breaking change) Change
allFunctionsfunction signature. Output now returns an object of named contracts with the list of functions.
- Initial release
- Add
allFunctionsfunction that returns all functions of a contract in a.solfile.