This repository was archived by the owner on Mar 5, 2025. It is now read-only.
Releases: web3/web3.js
Releases · web3/web3.js
v1.8.2
Changed
- Updated Webpack 4 to Webpack 5, more details at (#5629)
crypto-browserifymodule is now used only in webpack builds for polyfilling browsers (#5629)- Updated
ethereumjs-utilto7.1.5(#5629) - Updated
lerna4 to version 6 (#5680) - Bump utils 0.12.0 to 0.12.5 (#5691)
Fixed
- Fixed types for
web3.utils._jsonInterfaceMethodToString(#5550) - Fixed Next.js builds failing on Node.js v16, Abortcontroller added if it doesn't exist globally (#5601)
- Builds fixed by updating all typescript versions to 4.1 (#5675)
Removed
clean-webpack-pluginhas been removed from dev-dependencies (#5629)
Added
https-browserify,process,stream-browserify,stream-http,crypto-browserifyadded to dev-dependencies for polyfilling (#5629)- Add
readable-streamto dev-dependancies for webpack (#5629)
Security
npm audit fixfor libraries update (#5726)
v4.0.1-alpha.5
[4.0.1-alpha.5]
Removed
web3
buildentry frompackage.json(#5755)
web3-validator
buildentry frompackage.json(#5755)
Changed
web3-core
- web3.js dependencies (#5757)
web3-errors
- web3.js dependencies (#5757)
web3-eth
- web3.js dependencies (#5757)
web3-eth-abi
- web3.js dependencies (#5757)
web3-eth-accounts
- web3.js dependencies (#5757)
web3-eth-contract
- web3.js dependencies (#5757)
web3-eth-ens
- web3.js dependencies (#5757)
web3-eth-iban
- web3.js dependencies (#5757)
web3-eth-personal
- web3.js dependencies (#5757)
web3-eth-net
- web3.js dependencies (#5757)
web3-providers-http
- web3.js dependencies (#5757)
web3-providers-ipc
- web3.js dependencies (#5757)
web3-providers-ws
- web3.js dependencies (#5757)
web3-rpc-methods
- web3.js dependencies (#5757)
web3-utils
- web3.js dependencies (#5757)
Fixed
web3-eth
- Enable transaction with local wallet index in the
tofield (#5731)
Added
web3-types
- Add
TransactionWithFromLocalWalletIndex,TransactionWithToLocalWalletIndexandTransactionWithFromAndToLocalWalletIndextypes (#5731)
v4.0.1-alpha.4
Changed
web3
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-core
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-errors
mainandfilesentries inpackage.jsonchanged tolib/directory fromdist/(#5739)
web3-eth
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-eth-abi
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-eth-accounts
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-eth-contract
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-eth-ens
mainandfilesentries inpackage.jsonchanged tolib/directory fromdist/(#5739)
web3-eth-iban
mainandfilesentries inpackage.jsonchanged tolib/directory fromdist/(#5739)
web3-eth-personal
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-net
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-providers-http
mainandfilesentries inpackage.jsonchanged tolib/directory fromdist/(#5739)
web3-providers-ipc
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-providers-ws
mainandfilesentries inpackage.jsonchanged tolib/directory fromdist/(#5739)
web3-rpc-methods
mainandfilesentries inpackage.jsonchanged tolib/directory fromdist/(#5739)
web3-types
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-utils
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-validator
tsccompiled files moved tolib/directory fromdist/(#5739)
web3-providers-ipc
- Refactor to use common SocketProvider class (#5683)
web3-providers-ws
- Refactor to use common SocketProvider class (#5683)
web3-utils
- Add SocketProvider class and Eip1193Provider abstract class (#5683)
web3-types
- These types were added: ProviderRpcError, EthSubscription, ProviderMessage, ProviderConnectInfo (#5683)
v1.8.2-rc.0
Changed
- Updated Webpack 4 to Webpack 5, more details at (#5629)
crypto-browserifymodule is now used only in webpack builds for polyfilling browsers (#5629)- Updated
ethereumjs-utilto7.1.5(#5629) - Updated
lerna4 to version 6 (#5680) - Bump utils 0.12.0 to 0.12.5 (#5691)
Fixed
- Fixed types for
web3.utils._jsonInterfaceMethodToString(#5550) - Fixed Next.js builds failing on Node.js v16, Abortcontroller added if it doesn't exist globally (#5601)
- Builds fixed by updating all typescript versions to 4.1 (#5675)
Removed
clean-webpack-pluginhas been removed from dev-dependencies (#5629)
Added
https-browserify,process,stream-browserify,stream-http,crypto-browserifyadded to dev-dependencies for polyfilling (#5629)- Add
readable-streamto dev-dependancies for webpack (#5629)
Security
npm audit fixfor libraries update (#5726)
v4.0.1-alpha.3
Fixed
web3-validator
- Fix issue when importing
web3-validatorpackage within browser environments (Webpack minified filename changed fromindex.min.jstoweb3-validator.min.js) (#5710) - Fix build error '"type"' does not satisfy the constraint (#5712)
web3-eth-abi
- Parameters decoding error for nested components (#5714)
v4.0.1-alpha.2
Added
web3-eth-contract
- Decoding error data, using Error ABI if available, if error was returned from a smart contract function call (#5662).
web3-types
- These types were moved from
web3-eth-accountstoweb3-typespackage: Cipher, CipherOptions, ScryptParams, PBKDF2SHA256Params, KeyStore (#5581 )
web3-utils
- Export a new function
uuidV4that generates a random v4 Uuid (#5373). - Enable passing a starting number, to increment based on it, for the Json Rpc Request
id(#5652). - Export a new function
isPromisethat checks if an object is a promise (#5652).
web3-eth-contract
SpecialOutputtype was added as a generic type into the call function to support reassigning output types (#5631)- Overloaded functions types (
ContractOverloadedMethodInputs,ContractOverloadedMethodOutputs) was added (#5631)
Fixed
web3-eth-contract
- Emit past contract events based on
fromBlockwhen passed tocontract.events.someEventName(#5201) - Use different types for
ContractOptions->jsonInterfacesetter and getter (#5474) - An issue within the
Contractconstructor whereproviderwasn't being set when provided within theoptionsOrContextOrReturnFormatargument (#5669)
web3-types
- Make the
requestmethod ofEIP1193Providerclass, compatible with EIP 1193 (#5591)
web3-utils
- Use Uuid for the response id, to fix the issue "Responses get mixed up due to conflicting payload IDs" (#5373).
web3-validator
- Fix
isHexreturningfalsefor-123, fixisHexStrictreturningtruefor-0x, and fixisHexreturningtruefor empty strings `` (#5373).
web3-eth-abi
- Fix ContractMethodOutputParameters type to support output object types by index and string key. Also, it returns void if ABI doesn't have outputs and returns exactly one type if the output array has only one element. (#5631)
Removed
web3-eth-accounts
- These types were moved from
web3-eth-accountstoweb3-typespackage: Cipher, CipherOptions, ScryptParams, PBKDF2SHA256Params, KeyStore (#5581 )
v1.8.1
v4.0.1-alpha.1
Added
web3-core
- If the response error was
execution reverted, raiseContractExecutionErrorand pass the response error to it in order to be set asinnerError(this innerError will be decoded at web3-eth-contract if its ABI was provided according to EIP-838). (#5434) - Added a new configuration variable
enableExperimentalFeatures. (#5481) registerPluginmethod toWeb3Context(#5393)Web3PluginBaseexported abstract class (#5393)Web3EthPluginBaseexported abstract class (#5393)
web3-error
- Add optional
innerErrorproperty to the abstract classWeb3Error. ThisinnerErrorcould beError,Error[]orundefined. (#5435) (#5434) - The class
Web3ContractErroris moved to this package fromweb3-eth-contract. (#5434) - Added the error code
ERR_TX_SIGNINGand used it insideTransactionSigningError(#5462) - Added the error code
ERR_TX_GAS_MISMATCHand used it insideTransactionGasMismatchError(#5462) - Added
SignatureErrortoweb3-errors/src/errors/signature_errors.ts(moved fromweb3-eth/src/errors.ts) (#5462) - Added the errors' classes to
web3-errors/src/errors/transaction_errors.tsfromweb3-eth/src/errors.ts(#5462) - Added
TransactionBlockTimeoutErrorclass and its error codeERR_TX_BLOCK_TIMEOUT(#5294) ExistingPluginNamespaceErrorclass and it's error codeERR_EXISTING_PLUGIN_NAMESPACE(#5393)
web3-eth
web3-rpc-methodsdependency (#5441)- Added chain and hardfork validation for transaction and transaction.common object in
validateTransactionForSigning
web3-eth-abi
- If an error happens when decoding a value, preserve that exception at
innerErrorinside the error classAbiError. (#5435) - Add basic functionality that is used, by
web3-eth-contract, when decoding error data according to EIP-838. (#5434)
web3-eth-contract
- Decoding error data, using Error ABI if available, according to EIP-838. (#5434)
- The class
Web3ContractErroris moved from this package toweb3-error. (#5434)
web3-plugin-example
- Example plugin for wrapping contract methods to provide custom functionality (#5393)
- Example plugin for custom RPC methods using the
requestManager(#5393)
web3-utils
- Added and exported three reusable utility functions:
pollTillDefined,rejectIfTimeoutandrejectIfConditionAtIntervalwhich are useful when dealing with promises that involves polling, rejecting after timeout or rejecting if a condition was met when calling repeatably at every time intervals.
web3-eth-personal
web3-rpc-methodsdependency (#5441)
web3-eth-net
web3-rpc-methodsdependency (#5441)
web3-providers-ipc
- Show error message and return dummy promise if socket is not writable (#5294)
web3-rpc-methods
- web3-rpc-methods package added
web3-types
Changed
web3-core
- Default value for
APIgeneric forWeb3ContextObjectfromanytounknown(#5393) - Default value for
APIgeneric forWeb3ContextInitOptionsfromanytounknown(#5393) - Added validation when
defaultHardforkanddefaultCommon.hardforkare different in web3config - Added validation when
defaultChainanddefaultCommon.basechainare different in web3config - Added a new configuration variable
enableExperimentalFeatures. (#5481)
web3-error
- Moved
SignerErrorfromweb3-errors/src/errors/signature_errors.tstoweb3-errors/src/errors/transaction_errors.ts, and renamed it toTransactionSigningError(#5462) - Corrected the error code for
JSONRPC_ERR_UNAUTHORIZEDto be4100(#5462)
web3-eth
Web3EthExecutionAPIis now imported viaweb3-typesinstead ofweb3_eth_execution_api.ts(#5441)- Replace the imported methods from
rpc_methods.tswithethRpcMethodsimports fromweb3-rpc-methods(#5441) Web3NetAPIis now imported fromweb3-typesinstead ofweb3-net(#5441)- Moved
rpc_methodstests toweb3-rpc-methods(#5441) - Implemented the logic for
transactionBlockTimeout(#5294) - Use subscription at
rejectIfBlockTimeoutwhen the provider supports subscription. Implement this as an experimental feature (ifuseSubscriptionWhenCheckingBlockTimeoutatenableExperimentalFeaturesistrue). (#5481) - At some test cases, optimized some codes. (#5481)
web3-eth-accounts
signTransactionandprivateKeyToAccountwill throwTransactionSigningErrorinstead ofSignerErrornow (#5462)
web3-eth-ens
Web3NetAPIis now imported fromweb3-typesinstead ofweb3-net(#5441)
web3-eth-personal
- Import
EthPersonalAPIfromweb3-typesinstead of local import (#5441) - Replace the imported methods from
rcp_methods.tswithpersonalRpcMethodsimports fromweb3-rpc-methods(#5441) - Replace use of
EthPersonalAPIManagerwithWeb3RequestManager<EthPersonalAPI>(#5441)
web3-eth-net
Web3NetAPIis now imported fromweb3-typesinstead ofweb3_net_api.ts(#5441)- Replace the imported methods from
rpc_methods.tswithnetRpcMethodsimports fromweb3-rpc-methods(#5441)
web3-types
Web3APISpec,Web3APIMethod, andWeb3APIParamsnow supportsunknownAPIs (#5393)
Fixed
web3-error
- Corrected the error code for
JSONRPC_ERR_UNAUTHORIZEDto be4100(#5462)
web3-eth
- Fix
getBlockreturning empty transactions object onhydratedtrue (#5556) - setimmediate package to polyfill setImmediate for browsers (#5450)
web3-eth-contract
- According to the latest change in
web3-eth-abi, the decoded values of the large numbers, returned from function calls or events, are now available asBigInt. (#5435)
web3-eth-abi
- Return
BigIntinstead ofstringwhen decoding function parameters for large numbers, such asuint256. (#5435)
web3-types
Web3APISpec,Web3APIMethod, andWeb3APIParamsnow supportsunknownAPIs (#5393)
Removed
web3-eth
- Moved the errors' classes from
web3-eth/src/errors.tstoweb3-errors/src/errors/transaction_errors.ts(#5462)
web3-eth-personal
- Exported type
EthPersonalAPIManager,EthPersonalAPIis not exported viaweb3-types(#5441)
web3-eth-net
rpcMethodsexport, these methods are now exported viaweb3-rpc-methodsasnetRpcMethods(#5441)Web3NetAPIexport, now exported viaweb3-typesasWeb3NetAPI(#5441)
web3-validator
- Removed direct function
toJSON()inWeb3ValidatorErrorclass as its available via base class (#5435)
v1.8.1-rc.0
v1.8.0
Changed
- Updated
sha3andsha3Rawtype definition to acceptBuffer(#5357) - Removing legacy field in lerna.json (#5403)
- Correct
eth_sendSignedTransactioncode example (#5402)
Fixed
- Browser builds support polyfills (#5031) (#5053) (#4659) (#4767)
- Update node version on actions to fix breaking mosaic test (#5354)
- Start incrementing jsonrpc.id from random number (#5327)
web3-eth-contract'scallandsendmethods no longer mutateoptionsargument (#5394)- Improvement using provided gas options in web3-eth-accounts for eip-1559 transactions (#5012)