reubano / csv2ofx

A Python library and command line tool for converting csv to ofx and qif files
MIT License
199 stars 113 forks source link

[dev] Dependency conflicts flake8 vs mccabe (python-3.8) #78

Closed sphakka closed 2 years ago

sphakka commented 3 years ago

It looks like the dev environment/procedure needs a refresh, because it gets a bit complicated to set it up (python3.8 on Gentoo): (notice --no-site-packages is no longer there and the venv is automatically activated)

$ cd csv2ofx
$ mkvirtualenv  csv2ofx-p3_8
$ python setup.py  develop
Traceback (most recent call last):
  File "setup.py", line 10, in <module>
    import pkutils
ModuleNotFoundError: No module named 'pkutils'
$ pip install pkutils
$ python setup.py  develop
...
error: chardet 4.0.0 is installed but chardet<4.0.0,>=3.0.4 is required by {'meza'}
$ pip install chardet==3.0.4
meza 0.41.1 requires beautifulsoup4<5.0.0,>=4.6.0, which is not installed.
meza 0.41.1 requires PyYAML<4.0.0,>=3.12, which is not installed.

Ouch, trying going on

$ pip install -r dev-requirements.txt
...
ERROR: Cannot install -r dev-requirements.txt (line 4) and mccabe<0.7.0 and >=0.6.1 because these package versions have conflicting dependencies.

The conflict is caused by:
    The user requested mccabe<0.7.0 and >=0.6.1
    flake8 2.6.2 depends on mccabe<0.6 and >=0.2.1
    The user requested mccabe<0.7.0 and >=0.6.1
    flake8 2.6.1 depends on mccabe<0.6 and >=0.2.1
    The user requested mccabe<0.7.0 and >=0.6.1
    flake8 2.6.0 depends on mccabe<0.6 and >=0.2.1
    The user requested mccabe<0.7.0 and >=0.6.1
    flake8 2.5.5 depends on mccabe<0.5 and >=0.2.1
    The user requested mccabe<0.7.0 and >=0.6.1
    flake8 2.5.4 depends on mccabe<0.5 and >=0.2.1
    The user requested mccabe<0.7.0 and >=0.6.1
    flake8 2.5.3 depends on mccabe<0.5 and >=0.2.1
    The user requested mccabe<0.7.0 and >=0.6.1
    flake8 2.5.2 depends on mccabe<0.5 and >=0.2.1
    The user requested mccabe<0.7.0 and >=0.6.1
    flake8 2.5.1 depends on mccabe<0.4 and >=0.2.1

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies

Now what?

sphakka commented 3 years ago

BTW, I see the same even on Travis CI for my PR: https://travis-ci.org/github/reubano/csv2ofx/jobs/754011168. Is it my branch, or something fishy at master?

reubano commented 3 years ago

It's an issue on master.