jeudi 12 avril 2018

pip --editable gets overwritten regardless of the order

I have the following contents in my tox.ini file:

...
[testenv]
usedevelop = True
deps =
    --editable=file:///{toxinidir}/../some_dep
    --requirement=requirements.txt
...

now requirements.txt looks like this:

...
some_dep>=0.1.2

When tox creates a virtualenv it says:

py3-env create: /Users/someuser/PycharmProjects/some_project/.tox/py3-env
py3-env installdeps: --requirement=requirements.txt, --editable=file:////Users/someuser/PycharmProjects/some_project/../some_dep

And of course /Users/someuser/PycharmProjects/some_project/../some_dep exists.

Now the problem is, that I would expect to find an egg-link pointing to /Users/someuser/PycharmProjects/some_project/../some_dep but instead some_dep package gets installed from PyPI.

It seems that --editable was ignored or overwritten by contents of requirements.txt.

If I remove some_dep from requirements.txt I'm getting an expected behaviour: egg-link is present and everything works as expected but I can't modify my requirements.txt as this would complicate my deployment.

If I change ordering of --editable and --requirement lines in my tox.ini nothing changes: some_dep gets still installed from PyPI.

Is that an expected bahaviour? Is there something I can do to get my --editable parameter respected?

I'm using:

pip 9.0.3 from /Users/mnowotka/PycharmProjects/ygo-public-apis/venv/lib/python3.6/site-packages (python 3.6)

Aucun commentaire:

Enregistrer un commentaire