ethereum / eth-utils

Utility functions for working with ethereum related codebases.
https://eth-utils.readthedocs.io/en/latest/
MIT License
312 stars 148 forks source link

Provide better type hints for combomethod #236

Open darwintree opened 1 year ago

darwintree commented 1 year ago

What was wrong?

The decorator combomethod is widely used in web3.py, eth-account packages. However, the language server cannot infer the type of the arguments from function wrapped by combomethod.

How can it be fixed?

Use ParamSpec added in python3.10 could fix this problem. As we need to provide support for versions minor to 3.10, we can import ParamSpec from typing-extensions. Here is a good solution.