[Distutils] PEP-426 environment markers [was: Re: Support for condition to include or exclude a buildout sections based on a Python expression]
dholth at gmail.com
Wed Jan 30 17:37:04 CET 2013
One more thing: sys.platform != 'win32' is how you write "not windows"
On Wed, Jan 30, 2013 at 10:13 AM, Daniel Holth <dholth at gmail.com> wrote:
> On Wed, Jan 30, 2013 at 9:58 AM, Jim Fulton <jim at zope.com> wrote:
>> On Wed, Jan 30, 2013 at 9:46 AM, Daniel Holth <dholth at gmail.com> wrote:
>> > My markerlib implements the PEP. https://bitbucket.org/dholth/markerlib
>> > The parsing is simpler than you might expect. There is no monkey
>> > It is a (non-API) part of distribute since about last August.
>> But we're not implementing the PEP. The PEP is only tangentially
>> related to this use case. I'd be happy to be PEP informed, but not if
>> it makes things awkward.
>> It's much easier to say "these are python expressions with the
>> following variables available" than to say "you can use the
>> expressions described in PEP 426 plus additional variables", where,
>> BTW, you can't say ``not windows``, which is probably one of the 2
>> most common expressions you'd want to use. Note that many or most
>> buildout users would have no reason to be familiar with the PEP.
>> This isn't a criticism of the PEP. The PEP was developed for
>> some use case that's different than this one. Well, I'm guessing
>> because the PEP doesn't actually state the problems it's addressing.
> The PEP is a little weird, especially the inconsistent _ versus .
> separators. Markerlib is a little more permissive than the spec.
> Variable names can contain . when you are using eval().
> The ast module is really cool. It can be used to implement powerful
> limited evaluation with very little code (but only in Python 2.6+).
> Happy building.
> Daniel Holth
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Distutils-SIG