Skip to content

Commit

Permalink
release 4.4.0 (#6709)
Browse files Browse the repository at this point in the history
* release process

* update changelog

* debug

* add eslint

* update tests

* update node ver

* debug

* update balance

* update

* update address

* fix lint

* fix test error

* update addresses

* update lint

* update estimate_gas values

* fix error

* update address
  • Loading branch information
Alex authored Jan 17, 2024
1 parent 5161642 commit 7b97011
Show file tree
Hide file tree
Showing 18 changed files with 92 additions and 63 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/e2e_network_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
INFURA_SEPOLIA_HTTP: ${{ secrets.INFURA_SEPOLIA_HTTP }}
INFURA_MAINNET_HTTP: ${{ secrets.INFURA_MAINNET_HTTP }}
MODE: ${{ matrix.mode }}
TEST_ACCOUNT_ADDRESS: ${{ fromJSON('{"sepolia":"0x0000000000000000000000000000000000000000","mainnet":"0x0000000000000000000000000000000000000000"}')[matrix.network] }}
TEST_ACCOUNT_ADDRESS: ${{ fromJSON('{"sepolia":"0xa127C5E6a7E3600Ac34A9a9928E52521677e7211","mainnet":"0x98AF911164f9d4E0f5983ed114949c3Bfe3ADc9d"}')[matrix.network] }}
ALLOWED_SEND_TRANSACTION: ${{ secrets.E2E_TESTS_ALLOWED_SEND_TRANSACTION }}
TEST_ACCOUNT_PRIVATE_KEY: ${{ secrets.TEST_ACCOUNT_PRIVATE_KEY }}
strategy:
Expand Down
41 changes: 27 additions & 14 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2289,37 +2289,50 @@ If there are any bugs, improvements, optimizations or any new feature proposal f

- Fix unnecessary array copy when pack encoding (#6553)

## [Unreleased]
## [4.4.0]

### Added

#### web3


#### web3-eth

- Catch `TransactionPollingTimeoutError` was added to send transaction events (#6623)

#### web3-utils

- `SocketProvider` now contains public function `getPendingRequestQueueSize`, `getSentRequestsQueueSize` and `clearQueues` (#6479)
- Added `safeDisconnect` as a `SocketProvider` method to disconnect only when request queue size and send request queue size is 0 (#6479)
- Add `isContractInitOptions` method (#6555)

### Changed

#### web3-core
#### web3-eth-abi

- Use `AbiError` instead of `Error` for errors at web3-eth-abi (#6641).

#### web3-eth-contract

- Allow the `deploy` function to accept parameters, even when no ABI was provided to the `Contract`(#6635)

#### web3

- Dependencies updated

### Fixed

#### web3-rpc-methods
#### web3-eth-abi

- Fix web3-types import #6590 (#6589)
- Fixed an issue with detecting Uint8Array (#6486)

#### web3-eth-accounts

- Send Transaction config used to be ignored if the passed `common` did not have a `copy()` and the `chainId` was not provided (#6663)
- Fixed an issue with detecting Uint8Array (#6486)

#### web3-eth-contract

- Fix and error that happen when trying to get past events by calling `contract.getPastEvents` or `contract.events.allEvents()`, if there is no matching events. (#6647)
- Fixed: The Contract is not using the context wallet passed if context was passed at constructor. (#6661)

#### web3-utils

- Fix unnecessary array copy when pack encoding (#6553)
- Fixed an issue with detecting Uint8Array (#6486)

#### web3-validator

- Fixed an issue with detecting Uint8Array (#6486)

## [Unreleased]
4 changes: 3 additions & 1 deletion packages/web3-eth-abi/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ Documentation:

- Bug fix of `ERR_UNSUPPORTED_DIR_IMPORT` in ABI (#6535)

## [Unreleased]
## [4.2.0]

### Changed

Expand All @@ -163,3 +163,5 @@ Documentation:
### Fixed

- Fixed an issue with detecting Uint8Array (#6486)

## [Unreleased]
10 changes: 5 additions & 5 deletions packages/web3-eth-abi/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "web3-eth-abi",
"version": "4.1.4",
"version": "4.2.0",
"description": "Web3 module encode and decode EVM in/output.",
"main": "./lib/commonjs/index.js",
"module": "./lib/esm/index.js",
Expand Down Expand Up @@ -43,10 +43,10 @@
},
"dependencies": {
"abitype": "0.7.1",
"web3-errors": "^1.1.3",
"web3-types": "^1.3.0",
"web3-utils": "^4.0.7",
"web3-validator": "^2.0.3"
"web3-errors": "^1.1.4",
"web3-types": "^1.3.1",
"web3-utils": "^4.1.1",
"web3-validator": "^2.0.4"
},
"devDependencies": {
"@humeris/espresso-shot": "^4.0.0",
Expand Down
5 changes: 4 additions & 1 deletion packages/web3-eth-accounts/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,9 +149,12 @@ Documentation:

- Fixed `recover` function, `v` will be normalized to value 0,1 (#6344)

## [Unreleased]
## [4.1.1]

### Fixed

- Send Transaction config used to be ignored if the passed `common` did not have a `copy()` and the `chainId` was not provided (#6663)
- Fixed an issue with detecting Uint8Array (#6486)

## [Unreleased]

10 changes: 5 additions & 5 deletions packages/web3-eth-accounts/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "web3-eth-accounts",
"version": "4.1.0",
"version": "4.1.1",
"description": "Package for managing Ethereum accounts and signing",
"main": "./lib/commonjs/index.js",
"module": "./lib/esm/index.js",
Expand Down Expand Up @@ -61,9 +61,9 @@
"@ethereumjs/rlp": "^4.0.1",
"crc-32": "^1.2.2",
"ethereum-cryptography": "^2.0.0",
"web3-errors": "^1.1.3",
"web3-types": "^1.3.0",
"web3-utils": "^4.0.7",
"web3-validator": "^2.0.3"
"web3-errors": "^1.1.4",
"web3-types": "^1.3.1",
"web3-utils": "^4.1.1",
"web3-validator": "^2.0.4"
}
}
4 changes: 3 additions & 1 deletion packages/web3-eth-contract/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -353,7 +353,7 @@ Documentation:

- By default, contracts will fill `data` instead of `input` within method calls (#6622)

## [Unreleased]
## [4.2.0]

### Changed

Expand All @@ -363,3 +363,5 @@ Documentation:

- Fix and error that happen when trying to get past events by calling `contract.getPastEvents` or `contract.events.allEvents()`, if there is no matching events. (#6647)
- Fixed: The Contract is not using the context wallet passed if context was passed at constructor. (#6661)

## [Unreleased]
12 changes: 6 additions & 6 deletions packages/web3-eth-contract/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "web3-eth-contract",
"version": "4.1.4",
"version": "4.2.0",
"description": "Web3 module to interact with Ethereum smart contracts.",
"main": "./lib/commonjs/index.js",
"module": "./lib/esm/index.js",
Expand Down Expand Up @@ -47,11 +47,11 @@
"dependencies": {
"web3-core": "^4.3.2",
"web3-errors": "^1.1.4",
"web3-eth": "^4.3.1",
"web3-eth-abi": "^4.1.4",
"web3-eth": "^4.4.0",
"web3-eth-abi": "^4.2.0",
"web3-types": "^1.3.1",
"web3-utils": "^4.1.0",
"web3-validator": "^2.0.3"
"web3-utils": "^4.1.1",
"web3-validator": "^2.0.4"
},
"devDependencies": {
"@humeris/espresso-shot": "^4.0.0",
Expand All @@ -67,7 +67,7 @@
"prettier": "^2.7.1",
"ts-jest": "^29.1.1",
"typescript": "^4.7.4",
"web3-eth-accounts": "^4.1.0",
"web3-eth-accounts": "^4.1.1",
"web3-providers-ws": "^4.0.7"
}
}
4 changes: 3 additions & 1 deletion packages/web3-eth/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -213,8 +213,10 @@ Documentation:

- Dependencies updated

## [Unreleased]
## [4.4.0]

### Added

- Catch `TransactionPollingTimeoutError` was added to send transaction events (#6623)

## [Unreleased]
18 changes: 9 additions & 9 deletions packages/web3-eth/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "web3-eth",
"version": "4.3.1",
"version": "4.4.0",
"description": "Web3 module to interact with the Ethereum blockchain and smart contracts.",
"main": "./lib/commonjs/index.js",
"module": "./lib/esm/index.js",
Expand Down Expand Up @@ -63,15 +63,15 @@
},
"dependencies": {
"setimmediate": "^1.0.5",
"web3-core": "^4.3.0",
"web3-errors": "^1.1.3",
"web3-eth-abi": "^4.1.4",
"web3-eth-accounts": "^4.1.0",
"web3-core": "^4.3.2",
"web3-errors": "^1.1.4",
"web3-eth-abi": "^4.2.0",
"web3-eth-accounts": "^4.1.1",
"web3-net": "^4.0.7",
"web3-providers-ws": "^4.0.7",
"web3-rpc-methods": "^1.1.3",
"web3-types": "^1.3.0",
"web3-utils": "^4.0.7",
"web3-validator": "^2.0.3"
"web3-rpc-methods": "^1.1.4",
"web3-types": "^1.3.1",
"web3-utils": "^4.1.1",
"web3-validator": "^2.0.4"
}
}
4 changes: 3 additions & 1 deletion packages/web3-utils/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -181,8 +181,10 @@ Documentation:

- Fix unnecessary array copy when pack encoding (#6553)

## [Unreleased]
## [4.1.1]

### Fixed

- Fixed an issue with detecting Uint8Array (#6486)

## [Unreleased]
4 changes: 2 additions & 2 deletions packages/web3-utils/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "web3-utils",
"sideEffects": false,
"version": "4.1.0",
"version": "4.1.1",
"description": "Collection of utility functions used in web3.js.",
"main": "./lib/commonjs/index.js",
"module": "./lib/esm/index.js",
Expand Down Expand Up @@ -66,6 +66,6 @@
"ethereum-cryptography": "^2.0.0",
"web3-errors": "^1.1.4",
"web3-types": "^1.3.1",
"web3-validator": "^2.0.3"
"web3-validator": "^2.0.4"
}
}
4 changes: 3 additions & 1 deletion packages/web3-validator/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -156,8 +156,10 @@ Documentation:
- Validator will now properly handle all valid numeric type sizes: intN / uintN where 8 < = N < = 256 and N % 8 == 0 (#6434)
- Will now throw SchemaFormatError when unsupported format is passed to `convertToZod` method (#6434)

## [Unreleased]
## [2.0.4]

### Fixed

- Fixed an issue with detecting Uint8Array (#6486)

## [Unreleased]
6 changes: 3 additions & 3 deletions packages/web3-validator/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "web3-validator",
"version": "2.0.3",
"version": "2.0.4",
"description": "JSON-Schema compatible validator for web3",
"main": "./lib/commonjs/index.js",
"module": "./lib/esm/index.js",
Expand Down Expand Up @@ -47,8 +47,8 @@
"dependencies": {
"ethereum-cryptography": "^2.0.0",
"util": "^0.12.5",
"web3-errors": "^1.1.3",
"web3-types": "^1.3.0",
"web3-errors": "^1.1.4",
"web3-types": "^1.3.1",
"zod": "^3.21.4"
},
"devDependencies": {
Expand Down
5 changes: 4 additions & 1 deletion packages/web3/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,5 +183,8 @@ Documentation:

- Dependencies updated

## [Unreleased]
## [4.4.0]

- Dependencies updated ( details are in root changelog )

## [Unreleased]
14 changes: 7 additions & 7 deletions packages/web3/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "web3",
"version": "4.3.0",
"version": "4.4.0",
"description": "Ethereum JavaScript API",
"main": "./lib/commonjs/index.js",
"module": "./lib/esm/index.js",
Expand Down Expand Up @@ -88,10 +88,10 @@
"dependencies": {
"web3-core": "^4.3.2",
"web3-errors": "^1.1.4",
"web3-eth": "^4.3.1",
"web3-eth-abi": "^4.1.4",
"web3-eth-accounts": "^4.1.0",
"web3-eth-contract": "^4.1.4",
"web3-eth": "^4.4.0",
"web3-eth-abi": "^4.2.0",
"web3-eth-accounts": "^4.1.1",
"web3-eth-contract": "^4.2.0",
"web3-eth-ens": "^4.0.8",
"web3-eth-iban": "^4.0.7",
"web3-eth-personal": "^4.0.8",
Expand All @@ -100,7 +100,7 @@
"web3-providers-ws": "^4.0.7",
"web3-rpc-methods": "^1.1.4",
"web3-types": "^1.3.1",
"web3-utils": "^4.1.0",
"web3-validator": "^2.0.3"
"web3-utils": "^4.1.1",
"web3-validator": "^2.0.4"
}
}
2 changes: 1 addition & 1 deletion packages/web3/src/version.ts
Original file line number Diff line number Diff line change
@@ -1 +1 @@
/* eslint-disable header/header */ export const Web3PkgInfo = { version: '4.3.0' };
/* eslint-disable header/header */ export const Web3PkgInfo = { version: '4.4.0' };
6 changes: 3 additions & 3 deletions packages/web3/test/e2e/estimate_gas.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ along with web3.js. If not, see <http://www.gnu.org/licenses/>.
import { toHex } from 'web3-utils';

import Web3, { FMT_BYTES, FMT_NUMBER, Transaction } from '../../src';
import { getSystemE2ETestProvider, getE2ETestAccountAddress } from './e2e_utils';
import { getSystemE2ETestProvider } from './e2e_utils';
import { closeOpenConnection, getSystemTestBackend } from '../shared_fixtures/system_tests_utils';
import { toAllVariants } from '../shared_fixtures/utils';
import { mainnetBlockData } from './fixtures/mainnet';
Expand All @@ -27,13 +27,13 @@ describe(`${getSystemTestBackend()} tests - estimateGas`, () => {
const provider = getSystemE2ETestProvider();
const blockData = getSystemTestBackend() === 'sepolia' ? sepoliaBlockData : mainnetBlockData;
const simpleEthTransaction: Transaction = {
from: getE2ETestAccountAddress(),
from: '0x0000000000000000000000000000000000000000',
to: '0x0000000000000000000000000000000000000000',
value: '0x1',
};
const expectedSimpleEthTransactionGas = 21000;
const contractDeploymentTransaction: Transaction = {
from: getE2ETestAccountAddress(),
from: '0x0000000000000000000000000000000000000000',
data: '0x60806040523480156200001157600080fd5b5060405162000a6a38038062000a6a8339818101604052810190620000379190620002a4565b80600090805190602001906200004f92919062000057565b505062000359565b828054620000659062000324565b90600052602060002090601f016020900481019282620000895760008555620000d5565b82601f10620000a457805160ff1916838001178555620000d5565b82800160010185558215620000d5579182015b82811115620000d4578251825591602001919060010190620000b7565b5b509050620000e49190620000e8565b5090565b5b8082111562000103576000816000905550600101620000e9565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620001708262000125565b810181811067ffffffffffffffff8211171562000192576200019162000136565b5b80604052505050565b6000620001a762000107565b9050620001b5828262000165565b919050565b600067ffffffffffffffff821115620001d857620001d762000136565b5b620001e38262000125565b9050602081019050919050565b60005b8381101562000210578082015181840152602081019050620001f3565b8381111562000220576000848401525b50505050565b60006200023d6200023784620001ba565b6200019b565b9050828152602081018484840111156200025c576200025b62000120565b5b62000269848285620001f0565b509392505050565b600082601f8301126200028957620002886200011b565b5b81516200029b84826020860162000226565b91505092915050565b600060208284031215620002bd57620002bc62000111565b5b600082015167ffffffffffffffff811115620002de57620002dd62000116565b5b620002ec8482850162000271565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200033d57607f821691505b602082108103620003535762000352620002f5565b5b50919050565b61070180620003696000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a41368621461003b578063cfae32171461006c575b600080fd5b6100556004803603810190610050919061043f565b61008a565b60405161006392919061052b565b60405180910390f35b6100746101b0565b604051610081919061055b565b60405180910390f35b600060607f0d363f2fba46ab11b6db8da0125b0d5484787c44e265b48810735998bab12b756000846040516100c0929190610672565b60405180910390a182600090805190602001906100de929190610242565b507f7d7846723bda52976e0286c6efffee937ee9f76817a867ec70531ad29fb1fc0e600060405161010f91906106a9565b60405180910390a160016000808054610127906105ac565b80601f0160208091040260200160405190810160405280929190818152602001828054610153906105ac565b80156101a05780601f10610175576101008083540402835291602001916101a0565b820191906000526020600020905b81548152906001019060200180831161018357829003601f168201915b5050505050905091509150915091565b6060600080546101bf906105ac565b80601f01602080910402602001604051908101604052809291908181526020018280546101eb906105ac565b80156102385780601f1061020d57610100808354040283529160200191610238565b820191906000526020600020905b81548152906001019060200180831161021b57829003601f168201915b5050505050905090565b82805461024e906105ac565b90600052602060002090601f01602090048101928261027057600085556102b7565b82601f1061028957805160ff19168380011785556102b7565b828001600101855582156102b7579182015b828111156102b657825182559160200191906001019061029b565b5b5090506102c491906102c8565b5090565b5b808211156102e15760008160009055506001016102c9565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61034c82610303565b810181811067ffffffffffffffff8211171561036b5761036a610314565b5b80604052505050565b600061037e6102e5565b905061038a8282610343565b919050565b600067ffffffffffffffff8211156103aa576103a9610314565b5b6103b382610303565b9050602081019050919050565b82818337600083830152505050565b60006103e26103dd8461038f565b610374565b9050828152602081018484840111156103fe576103fd6102fe565b5b6104098482856103c0565b509392505050565b600082601f830112610426576104256102f9565b5b81356104368482602086016103cf565b91505092915050565b600060208284031215610455576104546102ef565b5b600082013567ffffffffffffffff811115610473576104726102f4565b5b61047f84828501610411565b91505092915050565b60008115159050919050565b61049d81610488565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b838110156104dd5780820151818401526020810190506104c2565b838111156104ec576000848401525b50505050565b60006104fd826104a3565b61050781856104ae565b93506105178185602086016104bf565b61052081610303565b840191505092915050565b60006040820190506105406000830185610494565b818103602083015261055281846104f2565b90509392505050565b6000602082019050818103600083015261057581846104f2565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806105c457607f821691505b6020821081036105d7576105d661057d565b5b50919050565b60008190508160005260206000209050919050565b600081546105ff816105ac565b61060981866104ae565b94506001821660008114610624576001811461063657610669565b60ff1983168652602086019350610669565b61063f856105dd565b60005b8381101561066157815481890152600182019150602081019050610642565b808801955050505b50505092915050565b6000604082019050818103600083015261068c81856105f2565b905081810360208301526106a081846104f2565b90509392505050565b600060208201905081810360008301526106c381846105f2565b90509291505056fea2646970667358221220fe0f28c9f8ef0a13a95934b974e7bc2ca6762b40a5b93ccd6ca2038f454bf52764736f6c634300080e003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000017736f6c79656e7420677265656e2069732070656f706c65000000000000000000',
};
const expectedContractDeploymentTransactionGas =
Expand Down

1 comment on commit 7b97011

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark

Benchmark suite Current: 7b97011 Previous: 6c075db Ratio
processingTx 9331 ops/sec (±4.58%) 9301 ops/sec (±4.81%) 1.00
processingContractDeploy 40199 ops/sec (±7.06%) 39129 ops/sec (±7.62%) 0.97
processingContractMethodSend 19919 ops/sec (±5.15%) 19443 ops/sec (±5.19%) 0.98
processingContractMethodCall 39118 ops/sec (±6.87%) 38971 ops/sec (±6.34%) 1.00
abiEncode 46231 ops/sec (±6.60%) 44252 ops/sec (±6.92%) 0.96
abiDecode 31039 ops/sec (±7.46%) 30419 ops/sec (±8.89%) 0.98
sign 1683 ops/sec (±0.76%) 1656 ops/sec (±4.08%) 0.98
verify 376 ops/sec (±2.57%) 373 ops/sec (±0.78%) 0.99

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.