[02:25:55] <nedbat> i have a question about version specifiers in the latest pip: if I have a requirement "pkg <4.0", and pkg has a 4.0a1 release, and I install with --pre, will it install 4.0a1 ?
[02:36:28] <nedbat> with --pre, it installs 4.0a1, without --pre, it installs 3.7.1. Doesn't pep440 say it shouldn't install 4.0a1?
[02:37:27] <Alex_Gaynor> Ugh, I see the logic that led to 4.0a1 :-/
[02:37:38] <Alex_Gaynor> which sort of makes sense
[02:37:55] <nedbat> Alex_Gaynor: sort of, but pep440 says, "The exclusive ordered comparison < V MUST NOT match a pre-release of the given version, even if acceptance of pre-releases is enabled as described in the section below."
[02:38:14] <Alex_Gaynor> sounds like a bug then, not sure if pip technically implements pep440 at all yet
[02:46:33] <Alex_Gaynor> nedbat: have you tried with pip from master?
[02:46:35] <nedbat> Alex_Gaynor: i'll write a bug, but i don't understand some of the existing ones: https://github.com/pypa/pip/issues/1505 is this what I'm talking about?
[02:50:07] <dstufft> and it'll be in the next release
[02:50:19] <nedbat> ok, cool. when will that be do you think?
[02:50:33] <nedbat> we fixed the problem with "coverage<3.999"
[02:50:41] <nedbat> but it'd be nice to say "<4.0"
[02:50:58] <dstufft> the "pre-release" stuff right now is essentially done as a distinct step currently, we get a list of versions from PyPI, we filter out things that don't match setuptools style specifiers, then we filter out things which are pre-releases (unless the pre-release flag is there)
[02:51:13] <dstufft> not sure an exact date, it should hopefully be soon, PEP 440 is the only big thing I was waiting on
[02:52:39] <nedbat> today has been a wild adventure of finding a number of infelicities while trying to release coverage 4.0a1
[02:53:29] <nedbat> who knew that tox specified --pre by default?
[02:53:45] <Alex_Gaynor> yeah, that seems wrong to me
[02:56:31] <dstufft> nedbat: sorryt his is all not so obvious :(
[02:56:41] <dstufft> the hidden thing on PyPI is terrible and it's gone
[02:57:20] <nedbat> dstufft: not sure what you're apologizing for, but no worries, i've just been stewing on this all day...
[02:57:26] <dstufft> it basically determines whether you get a page like this: https://pypi.python.org/pypi/Django or like https://pypi.python.org/pypi/Flask if you have multiple versions uploaded
[02:57:36] <dstufft> Warehouse changes that so it's always like the second one
[02:58:30] <dstufft> setuptools will still install them bydefault
[02:58:44] <dstufft> even with the PEP 440 branch, (it effectively hardcodes --pre to on right now)
[02:59:02] <dstufft> mostly because I got really mad trying to add --pre support to easy_install and got frustrated and gave up
[02:59:50] <dstufft> that really only affects people who a) use easy_install instead of pip b) do ``setup.py install`` on something that depends on coverage or c) have coverage inside of a setup_requires
[03:00:03] <dstufft> for c) pip will fix that sooner or later so it's only a or b
[03:00:22] <dstufft> but nothing pip can do about a and b, that requires actually digging into setuptools and getting --pre support
[03:00:46] <nedbat> dstufft: so Warehouse will only ever show the last release?
[03:01:37] <dstufft> nedbat: look at the right bar, right above the pictures
[03:03:13] <dstufft> instead of having different behavior for the unversioned url based on if you have > 1 unhidden versions or not, the unversioned URL is just always the "latest" version (Although I need to adjust that stil so it's the latest non-prerelease, unless there are only pre-release available)
[03:07:42] <nedbat> dstufft: thanks, you've set my mind at ease about the pre-release versions. The guy who pointed it out to me was trying to convince me that it was doing the right thing, because math. or something.
[17:48:43] <[Tritium]> I am trying to set the `pip install --target ...` option from an environment variable, but it seams to be ignoreing $PIP_TARGET. I am using python 3.2, and calling pip as `pip3`. I am using pip 1.5.6. The problem it is encountering is that it is apparently still trying to install in a default location.