Clean up dependencies
I needed this fix because I have the latest setuptools, which broke everything. You really don't have your dependencies under control (I don't blame you, packaging in Python is a mess).
The install_requires in setup.py should list the minimal packages needed to run it. So not setuptools, and not tox, and not pytest. These all belong in a requirements-dev.txt or similar.
You should consider using a better method of specifying dependencies and generating package locks. ~~pipenv is good at this~~ poetry is better, ~~but also does a lot of other things you might not need~~.
@BrendanChou Are you interested in these changes or cleanup of your dependency management in general?
I'd suggest you adopt something like poetry for dependency management and locking. I'd be willing to make the migration if it's of interest.