Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation fails due to conflicting idna version #39

Closed
NeolithEra opened this issue Aug 5, 2019 · 4 comments
Closed

Installation fails due to conflicting idna version #39

NeolithEra opened this issue Aug 5, 2019 · 4 comments

Comments

@NeolithEra
Copy link

Hi, users are unable to run derrick due to dependency conflict with idna package.

As shown in the following full dependency graph of derrick, derrick requires idna>=2.6,while requests==2.20.0 requires idna>=2.5,<2.8.

According to pip’s “first found wins” installation strategy, idna==2.8 is the actually installed version.
However, idna==2.8 does not satisfy idna>=2.5,<2.8.

Dependency tree---------

derrick-master
| +-chardet(version range:==3.0.4)
| +-docopt(version range:>=0.6.2)
| +-idna(version range:>=2.6)
| +-jinja2(version range:>=2.10.1)
| | +-MarkupSafe(version range:>=0.23)
| +-MarkupSafe(version range:>=1.0)
| +-nose(version range:>=1.3)
| +-pkginfo(version range:>=1.4.1)
| +-prompt-toolkit(version range:==1.0.15)
| | +-six(version range:>=1.9.0)
| | +-wcwidth(version range:*)
| +-pychalk(version range:==1.1.0)
| | +-six(version range:*)
| +-Pygments(version range:>=2.2.0)
| | +-coverage(version range:*)
| | +-nose(version range:*)
| | +-pyflakes(version range:*)
| | +-pylint(version range:*)
| | +-tox(version range:*)
| +-requests(version range:==2.20.0)
| | +-certifi(version range:>=2017.4.17)
| | +-chardet(version range:<3.1.0,>=3.0.2)
| | +-idna(version range:>=2.5,<2.8)
| | +-urllib3(version range:>=1.21.1,<1.25)
| +-requests-toolbelt(version range:==0.8.0)
| | +-requests(version range:>=2.0.1,<3.0.0)
| | | +-certifi(version range:>=2017.4.17)
| | | +-chardet(version range:<3.1.0,>=3.0.2)
| | | +-idna(version range:>=2.5,<2.8)
| | | +-urllib3(version range:>=1.21.1,<1.25)
| +-setuptools-git(version range:==1.2)
| +-simplejson(version range:>=3.11.1)
| +-six(version range:>=1.11.0)
| +-tqdm(version range:>=4.9.12)
| +-urllib3(version range:>=1.23)
| +-wcwidth(version range:>=0.1.7)
| +-whaaaaat(version range:>=0.5.2)
| | +-prompt-toolkit(version range:>=1.0.14)
| | | +-six(version range:>=1.9.0)
| | | +-wcwidth(version range:*)
| | +-pygments(version range:>=2.2.0)
| | | +-coverage(version range:*)
| | | +-nose(version range:*)
| | | +-pyflakes(version range:*)
| | | +-pylint(version range:*)
| | | +-tox(version range:*)
| | +-regex(version range:>=2016.11.21)

Thanks for your help.
Best,
Neolith

@NeolithEra
Copy link
Author

Solution

  1. Fix your direct dependency to be idna>=2.5,<2.8.

I have checked this revision will not affect your downstream projects now.

  1. Upgrade requests to 2.22.0,to remove this conflict.

  2. Delete your direct dependency idna and use the idna transitively introduced by requests.

Which solution do you prefer, 1, 2 or 3?

@ringtail Please let me know your choice. I can submit a PR to solve this issue.

@ringtail
Copy link
Member

ringtail commented Aug 6, 2019

@NeolithEra I would like to choose 1 or 2. Could you submit a PR? Thanks a lot ! ☺

@ringtail
Copy link
Member

#42

@ringtail
Copy link
Member

Bug Fixed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants