According to PEP 440 and PEP 426 and the pip install manual (if I read them correctly), I SHOULD be able to create pre-release versions of my libraries/wheels, and use them if-and-only-if I include the "--pre" flag.
Furthermore, I took it to mean that given the right installation options (--pre?) pre-release versions would fit within the standard numeric versioning scheme, such that 1.a1 and 1.dev1 would appear as 1.1, just as 1.1+extra_tag also appears as 1.1 (note: +extra_tag does not require the --pre flag to work)
None of this seems to work.
What I see is:
pip install ... wheelnameinstalls EVEN IF the uploaded version of the wheel is something likewheelname.1.dev6. The--predoesn't seem to make a difference, one way or the other.- Given a requirement file that has a stanza like
wheelname==1.6, even with the--preoption, if my wheel is versioned aswheelname.1.dev6,wheelname.1.a1, etc. it is not found. - Same issue for a stanza like
wheelname>=1 - The "+notation" is honored.
It was my understanding from reading PEP 440 and 426 that the "a", "b", "c" and "cr" midfixes were supposed to be available (i.e. 1.a1 == 1.1) as long as the --pre option was used (of course, --pre isn't explicitly specified by the PEPs themselves, but I assume). Same for the ".devN" suffixes.
Notes:
- I am using pip 9.0.1
--isolateddoes not make a difference (e.g. it is not an environment issue)Rather than use all the rigamarole to create a wheelhouse, I used a directory when creating/uploading my wheel. My approximate runlines are thus:
pip install wheelname --use-wheel --find-links=file:///tmp/wheelhouse [--pre]pip install -r requirements.txt --use-wheel --find-links=file:///tmp/wheelhouse [--pre]