diff --git a/newsfragments/2450.misc.rst b/newsfragments/2450.misc.rst new file mode 100644 index 0000000000..eaca4dda9e --- /dev/null +++ b/newsfragments/2450.misc.rst @@ -0,0 +1 @@ +Add ``chainId`` to tx params to ``TRANSACTION_PARAMS_ABI`` diff --git a/web3/_utils/rpc_abi.py b/web3/_utils/rpc_abi.py index 4ebf435919..bb55e89c9a 100644 --- a/web3/_utils/rpc_abi.py +++ b/web3/_utils/rpc_abi.py @@ -163,6 +163,7 @@ class RPC: 'nonce': 'uint', 'to': 'address', 'value': 'uint', + 'chainId': 'uint', } FILTER_PARAMS_ABIS = { diff --git a/web3/middleware/validation.py b/web3/middleware/validation.py index 23872858ef..852d921bdc 100644 --- a/web3/middleware/validation.py +++ b/web3/middleware/validation.py @@ -55,11 +55,12 @@ @curry def _validate_chain_id(web3_chain_id: int, chain_id: int) -> int: - if to_integer_if_hex(chain_id) == web3_chain_id: + chain_id_int = to_integer_if_hex(chain_id) + if chain_id_int == web3_chain_id: return chain_id else: raise ValidationError( - f"The transaction declared chain ID {chain_id!r}, " + f"The transaction declared chain ID {chain_id_int!r}, " f"but the connected node is on {web3_chain_id!r}" )