Apitax / Scriptax

Scriptax is a general purpose, automation first language used to quickly script together automation.
GNU General Public License v3.0
2 stars 0 forks source link

Installation fails due to conflicting apitaxcore version #66

Open NeolithEra opened 4 years ago

NeolithEra commented 4 years ago

Hi, users are unable to run scriptax due to dependency conflict with apitaxcore package. As shown in the following full dependency graph of scriptax, scriptax requires apitaxcore ==3.0.9,while commandtax requires apitaxcore ==3.0.6.

According to pip’s “first found wins” installation strategy, apitaxcore 3.0.9 is the actually installed version. However, apitaxcore 3.0.9 does not satisfy ==3.0.6.

Dependency tree-----------

scriptax 4.0.1
| +- antlr4-python3-runtime(install version:4.7.2 version range:*)
| | +- typing ; python-version(install version: version range:<3.5)
| +- apitaxcore(install version:3.0.9 version range:==3.0.9)
| | +- python-dateutil(install version:2.6.0 version range:==2.6.0)
| | | +- six(install version:1.13.0 version range:*)
| | +- requests(install version:2.22.0 version range:*)
| | | +- certifi(install version:2019.11.28 version range:>=2017.4.17)
| | | +- chardet(install version:3.0.4 version range:<3.1.0,>=3.0.2)
| | | +- idna(install version:2.8 version range:>=2.5,<2.9)
| | | +- urllib3(install version:1.25.7 version range:<1.26,>=1.21.1)
| | +- typing(install version:3.5.2.2 version range:==3.5.2.2)
| | +- xmltodict(install version:0.12.0 version range:*)
| +- commandtax(install version:0.0.8 version range:==0.0.8)
| | +- apitaxcore(install version:3.0.6 version range:==3.0.6)
| | | +- python-dateutil(install version:2.6.0 version range:==2.6.0)
| | | +- requests(install version:2.22.0 version range:*)
| | | +- typing(install version:3.5.2.2 version range:==3.5.2.2)
| | | +- xmltodict(install version:0.12.0 version range:*)
| | +- click(install version:7.0 version range:*)
| +- pydantic(install version:1.2 version range:*)
| +- pytest(install version:5.3.2 version range:*) 

Thanks for your help. Best, Neolith

NeolithEra commented 4 years ago

Suggested Solution

  1. Fix your direct dependency to be apitaxcore==3.0.6. I have checked this revision will not affect your downstream projects now.
  2. Remove your direct dependency apitaxcore, and use apitaxcore transitively introduced by commandtax.
  3. Ask your upstream project commandtax to loose the version range of apitaxcore.

@ShawnClake Which solution do you prefer, 1, 2 or 3? Please let me know your choice. I can submit a PR to solve this issue.