diff --git a/src/ape/types/__init__.py b/src/ape/types/__init__.py index 260ae348ba..e4656c22e0 100644 --- a/src/ape/types/__init__.py +++ b/src/ape/types/__init__.py @@ -68,11 +68,10 @@ cases. """ - HexInt = Annotated[ int, BeforeValidator( - lambda v, info: v if v is None else ManagerAccessMixin.conversion_manager.convert(v, int) + lambda v, info: None if v is None else ManagerAccessMixin.conversion_manager.convert(v, int) ), ] """ diff --git a/src/ape_ethereum/ecosystem.py b/src/ape_ethereum/ecosystem.py index 65d06fc406..5371441c29 100644 --- a/src/ape_ethereum/ecosystem.py +++ b/src/ape_ethereum/ecosystem.py @@ -599,7 +599,9 @@ def decode_block(self, data: dict) -> BlockAPI: if "transaction_ids" in data: data["transactions"] = data.pop("transaction_ids") if "total_difficulty" in data: - data["totalDifficulty"] = data.pop("total_difficulty") + data["totalDifficulty"] = data.pop("total_difficulty") or 0 + elif "totalDifficulty" in data: + data["totalDifficulty"] = data.pop("totalDifficulty") or 0 if "base_fee" in data: data["baseFeePerGas"] = data.pop("base_fee") elif "baseFee" in data: