py-evm icon indicating copy to clipboard operation
py-evm copied to clipboard

Transition to a namespace package architecture

Open skellet0r opened this issue 1 year ago • 1 comments

What is wrong?

py-evm hogs the eth namespace, preventing other packages seeking to utilize it as well (skellet0r/eth-stdlib#1).

How can it be fixed

Rename the eth directory to evm, and place it inside of the eth namespace.

Ex.

├── src
│   └── eth
│       └── evm
│           ├── db
│           └── estimators.py
│           └── ...
│           └── __init__.py

This would be a breaking change, and downstream users, would merely have to change any imports of 'eth' to 'eth.evm', a simple grok. This is fine since py-evm has yet to even reach v1.0.0, and it's breaking changes are expected/condoned.

https://packaging.python.org/en/latest/guides/packaging-namespace-packages/

related: #1849

skellet0r avatar Sep 15 '22 17:09 skellet0r

Hey @skellet0r. I'd be on board with this for sure. I think as soon as we get some of the bigger changes in, we can refactor this structure before the next release.

fselmo avatar Sep 15 '22 17:09 fselmo