Closed cburgdorf closed 6 years ago
I guess before we release this, we should probably first fix related issues in Trinity
https://github.com/ethereum/py-evm/issues/1272#issuecomment-420569582
Heads up @njgheorghita and @davesque you should probably check for issues in eth-pm that will result from this.
Just pull this branch locally and then to pip install -e /path/to/eth-typing/on/my/machine
to figure out what parts are affected.
Lets just do a full major version bump.
Ah yes. :+1: I don't think I can do this.
What was wrong?
The
eth_typing
module was born to codify stronger type guarantees for things that previously could only expressed broadly.Example: An API should only accept things of type
Hash32
instead of anybytes
.This worked fine for when we had this module as part of the
Trinity
code base. However, some of these types naturally spread across multiple code bases and hence we created a standalone repository (this one).Unfortunately before PEP561 using type information from 3rd party libraries was pretty much useless and the only way to work around it was to setup stubs and make
mypy
aware of them.Since we didn't have any stubs for
eth-typing
, ironically our effort to limit something as broadly defined asbytes
now becameAny
(without us noticing since we don't have such strictmypy
checks enabled for Trinity yet).How was it fixed?
Configure package to distribute type information to be picked up by mypy in packages using
eth-typing
.Cute Animal Picture