Re: [Distutils] Best way to handle packaging a project that only applies to certain versions of Python

2016-08-30 Thread Brett Cannon
All of this seems like too much worry for a project that only applies to
Python 2.6 and earlier or Python 3.0. :) Thanks for the suggestions
everyone, but I'm just going to let the folks stuck on legacy versions deal
with the lack of wheels.

On Mon, 29 Aug 2016 at 23:21 Thomas Kluyver  wrote:

> There is also the 'python requires' metadata, which can now be provided
> via setuptools, but I think pip 8.2 needs to be released before that is
> respected.
>
>
> On Tue, Aug 30, 2016, at 01:08 AM, Daniel Holth wrote:
>
> Let's say you have different code for python 3.3 and python 3.4+. Tag one
> wheel py33-none-any and the second py34-none-any. The second wheel is
> preferred on python 3.4 and above, but ignored by 3.3. The py3 tag wouldn't
> work well here.
>
> Order of preference on 3.5 is: ('py35', 'none', 'any'), ('py3', 'none',
> 'any'), ('py34', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none',
> 'any'), ('py31', 'none', 'any'), ('py30', 'none', 'any')
>
> Enscons would let you control the wheel tag directly but doesn't yet let
> you build multiple wheels with a single invocation.
>
> On Mon, Aug 29, 2016, 19:46 Donald Stufft  wrote:
>
>
> On Aug 29, 2016, at 7:34 PM, Brett Cannon  wrote:
>
> Someone has asked that I do a new release of importlib that includes a
> LICENSE file on PyPI: https://pypi.org/project/importlib/. Historically I
> have had the setup.py simply not include any Python code when built on
> versions of Python that include importlib in the stdlib itself:
> https://github.com/brettcannon/importlib/blob/master/setup.py .
>
> But now I would like to do a wheel. Is there some way I'm not thinking of
> to have a wheel that will leave out code or not install itself if a certain
> version of Python is used? Or will the user have to specify a proper Python
> requirement in their requirements.txt to get that kind of experience?
> ___
> Distutils-SIG maillist  -  Distutils-SIG@python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
>
>
> If your setup.py produces different output on different versions of
> Python, you’ll need multiple wheels.
>
> —
>
> Donald Stufft
> ___
> Distutils-SIG maillist  - Distutils-SIG@python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
>
> *___*
> Distutils-SIG maillist  - Distutils-SIG@python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
>
> ___
> Distutils-SIG maillist  -  Distutils-SIG@python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
>
___
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig


Re: [Distutils] Best way to handle packaging a project that only applies to certain versions of Python

2016-08-30 Thread Thomas Kluyver
There is also the 'python requires' metadata, which can now be provided
via setuptools, but I think pip 8.2 needs to be released before that is
respected.


On Tue, Aug 30, 2016, at 01:08 AM, Daniel Holth wrote:
> Let's say you have different code for python 3.3 and python 3.4+. Tag
> one wheel py33-none-any and the second py34-none-any. The second wheel
> is preferred on python 3.4 and above, but ignored by 3.3. The py3 tag
> wouldn't work well here.
> Order of preference on 3.5 is: ('py35', 'none', 'any'), ('py3',
> 'none', 'any'), ('py34', 'none', 'any'), ('py33', 'none', 'any'),
> ('py32', 'none', 'any'), ('py31', 'none', 'any'), ('py30',
> 'none', 'any')
> Enscons would let you control the wheel tag directly but doesn't yet
> let you build multiple wheels with a single invocation.
>
> On Mon, Aug 29, 2016, 19:46 Donald Stufft  wrote:
>>
>>> On Aug 29, 2016, at 7:34 PM, Brett Cannon  wrote:
>>>
>>> Someone has asked that I do a new release of importlib that includes
>>> a LICENSE file on PyPI: https://pypi.org/project/importlib/.
>>> Historically I have had the setup.py simply not include any Python
>>> code when built on versions of Python that include importlib in the
>>> stdlib itself:
>>> https://github.com/brettcannon/importlib/blob/master/setup.py .
>>>
>>> But now I would like to do a wheel. Is there some way I'm not
>>> thinking of to have a wheel that will leave out code or not install
>>> itself if a certain version of Python is used? Or will the user have
>>> to specify a proper Python requirement in their requirements.txt to
>>> get that kind of experience?
>>> ___
>>> Distutils-SIG maillist  -  Distutils-SIG@python.org
>>> https://mail.python.org/mailman/listinfo/distutils-sig
>>
>> If your setup.py produces different output on different versions of
>> Python, you’ll need multiple wheels.
>>
>> —
>>
>> Donald Stufft
>> ___
>>  Distutils-SIG maillist  - Distutils-SIG@python.org
>> https://mail.python.org/mailman/listinfo/distutils-sig
> _
> Distutils-SIG maillist  - Distutils-SIG@python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
___
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig


Re: [Distutils] Best way to handle packaging a project that only applies to certain versions of Python

2016-08-29 Thread Daniel Holth
Let's say you have different code for python 3.3 and python 3.4+. Tag one
wheel py33-none-any and the second py34-none-any. The second wheel is
preferred on python 3.4 and above, but ignored by 3.3. The py3 tag wouldn't
work well here.

Order of preference on 3.5 is: ('py35', 'none', 'any'), ('py3', 'none',
'any'), ('py34', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none',
'any'), ('py31', 'none', 'any'), ('py30', 'none', 'any')

Enscons would let you control the wheel tag directly but doesn't yet let
you build multiple wheels with a single invocation.

On Mon, Aug 29, 2016, 19:46 Donald Stufft  wrote:

>
> On Aug 29, 2016, at 7:34 PM, Brett Cannon  wrote:
>
> Someone has asked that I do a new release of importlib that includes a
> LICENSE file on PyPI: https://pypi.org/project/importlib/. Historically I
> have had the setup.py simply not include any Python code when built on
> versions of Python that include importlib in the stdlib itself:
> https://github.com/brettcannon/importlib/blob/master/setup.py .
>
> But now I would like to do a wheel. Is there some way I'm not thinking of
> to have a wheel that will leave out code or not install itself if a certain
> version of Python is used? Or will the user have to specify a proper Python
> requirement in their requirements.txt to get that kind of experience?
> ___
> Distutils-SIG maillist  -  Distutils-SIG@python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
>
>
> If your setup.py produces different output on different versions of
> Python, you’ll need multiple wheels.
>
> —
>
> Donald Stufft
> ___
> Distutils-SIG maillist  -  Distutils-SIG@python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
>
___
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig


Re: [Distutils] Best way to handle packaging a project that only applies to certain versions of Python

2016-08-29 Thread Donald Stufft

> On Aug 29, 2016, at 7:34 PM, Brett Cannon  wrote:
> 
> Someone has asked that I do a new release of importlib that includes a 
> LICENSE file on PyPI: https://pypi.org/project/importlib/ 
> . Historically I have had the setup.py 
> simply not include any Python code when built on versions of Python that 
> include importlib in the stdlib itself: 
> https://github.com/brettcannon/importlib/blob/master/setup.py 
>  .
> 
> But now I would like to do a wheel. Is there some way I'm not thinking of to 
> have a wheel that will leave out code or not install itself if a certain 
> version of Python is used? Or will the user have to specify a proper Python 
> requirement in their requirements.txt to get that kind of experience?
> ___
> Distutils-SIG maillist  -  Distutils-SIG@python.org
> https://mail.python.org/mailman/listinfo/distutils-sig


If your setup.py produces different output on different versions of Python, 
you’ll need multiple wheels.

—
Donald Stufft



___
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig


[Distutils] Best way to handle packaging a project that only applies to certain versions of Python

2016-08-29 Thread Brett Cannon
Someone has asked that I do a new release of importlib that includes a
LICENSE file on PyPI: https://pypi.org/project/importlib/. Historically I
have had the setup.py simply not include any Python code when built on
versions of Python that include importlib in the stdlib itself:
https://github.com/brettcannon/importlib/blob/master/setup.py .

But now I would like to do a wheel. Is there some way I'm not thinking of
to have a wheel that will leave out code or not install itself if a certain
version of Python is used? Or will the user have to specify a proper Python
requirement in their requirements.txt to get that kind of experience?
___
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig