ethpm / py-ethpm

This library is deprecated. ethPM python tooling is now located in web3.py
MIT License
24 stars 13 forks source link

Move `web3[tester]` splinter to `extras_require[test]` #140

Open njgheorghita opened 5 years ago

njgheorghita commented 5 years ago

See the conversation here

ghost commented 5 years ago

If someone install web3 version 5 with pip install web3==5.0.0b2, he ends up with ethpm==0.1.4a19.

Requiring web3 with pkg_resources fails:

..stlines/protocol/contract-deploy-tools (git)-[master] % python
Python 3.6.7 (default, Oct 22 2018, 11:32:17) 
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pkg_resources; pkg_resources.require("web3")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/bbralf/trustlines/venv/lib/python3.6/site-packages/pkg_resources/__init__.py", line 900, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/home/bbralf/trustlines/venv/lib/python3.6/site-packages/pkg_resources/__init__.py", line 786, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'pytest-ethereum<1.0.0,>=0.1.3a6; extra == "tester"' distribution was not found and is required by web3
>>> 

Removing [tester] from the Requires-Dist: web3[tester] (<6,>=5.0.0b1) line in .../site-packages/ethpm-0.1.4a19.dist-info/METADATA makes the above pkg_resources.require succeed.

I do think this is a serious issue that needs to be fixed. It basically breaks every script using setuptools console_scripts with web3 as a dependency.