Development resources at your finger tips
Build with the coolest Web3 projects
Recurring funding for Open Source
Learn about Web3 & earn rewards
Show appreciation for each other
Meet fellow developers, designers, futurists and more. Collaborate and BUIDL awesome projects together.
Discover great web3 organizations, work on meaningful projects and build relationships with like minded people. Browse Tribes
Meet the top hunters and contributors from our community.
In partnership with Protocol Labs, we’re excited to welcome builders from everywhere to APOLLO, your mission control to engage with the builder…
We’re excited to publically announce that Matic Network is partnering with Gitcoin to launch the Build-n-Earn Program – assisting dApps t…
Gitcoin is GDPR complaint. Learn more in
Gitcoin's Terms & Conditions.
Check out the Issue Explorer
Looking to fund some work? You can submit a new Funded Issue here.
## What is wrong?
The library currently uses type hints, however they may be able to be tightened up.
In addition, [PEP561](https://www.python.org/dev/peps/pep-0561/) allows us to expose type hints from this library to other libraries which use it.
## Definition of done?
* Update `mypy` to the latest stable released version.
* Update the `mypy` run in CI to the following.
mypy --follow-imports=silent --warn-unused-ignores --ignore-missing-imports --no-strict-optional --check-untyped-defs --disallow-incomplete-defs --disallow-untyped-defs --disallow-any-generics -p eth_keys`
* Usage of `type: ignore` (silencing the type checker) is minimized and there's a reasonable explanation for its usage
* Update the `setup.py` to expose this data to other libraries as was done here: https://github.com/ethereum/eth-typing/pull/10
### Stretch goals
When this issue is done, stretch goals can be applied (and individually get funded) to tighten type support to qualify:
1. `mypy --strict --follow-imports=silent --ignore-missing-imports --no-strict-optional -p eth_keys`
Do what was done in https://github.com/ethereum/eth-typing/pull/10 to allow this data to be exposed when this library is installed as a package.