Re: [Distutils] moving things forward

2016-05-05 Thread Greg Ewing
Chris Barker wrote: This is python packaging, I'm still trying to see why you'd need to read the config without python available. Even if python is available, you might not want to run arbitrary code just to install a package. If a config file can contain executable code, then it can contain

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Daniel Holth
>From my point of view mandatory build isolation will make building thinks slow and bad, besides being totally unrelated to the idea of a working bootstrap requirements feature. On Thu, May 5, 2016 at 9:37 PM Robert Collins wrote: > On 5 May 2016 at 21:47, Nathaniel

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Robert Collins
On 5 May 2016 at 21:47, Nathaniel Smith wrote: > On Wed, May 4, 2016 at 11:57 PM, Robert Collins ... >>> I don't think I've ever seen a package that had accurate >>> setup_requires (outside the trivial case of packages where >>> setup_requires=[] is accurate). Scientific packages

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Daniel Holth
Clearly it should spin up a Gentoo VM from scratch each time. No half measures. On Thu, May 5, 2016, 19:32 Nathaniel Smith wrote: > On Thu, May 5, 2016 at 3:18 PM, Chris Barker > wrote: > > On Thu, May 5, 2016 at 2:10 AM, Nathaniel Smith

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Nathaniel Smith
On Thu, May 5, 2016 at 3:18 PM, Chris Barker wrote: > On Thu, May 5, 2016 at 2:10 AM, Nathaniel Smith wrote: >> >> ...The main thing I want to point out though, is that all of these >> problems you're raising are complications caused entirely by wanting >>

Re: [Distutils] moving things forward

2016-05-05 Thread Chris Barker
On Thu, May 5, 2016 at 3:21 PM, Greg Ewing wrote: > Chris Barker wrote: > > OK -- that's more or less my thought -- if it's python that gets run, >> then you've got your config generator built in -- why not? >> > > The difference is that the config generator only

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Chris Barker
Last post! sorry to have not kept up last night > to call the new feature setup_requires but some prefer to eliminate > > uncertainty by calling it bootstrap_requires. > > The main advantage of a new feature name is that when someone searches > the internet for "python bootstrap_requires",

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Chris Barker
On Thu, May 5, 2016 at 2:47 AM, Nathaniel Smith wrote: > > When you introduce isolation, the build will only have the standard > > library + whatever is declared as a dep: and pyqt5 has no source on > > PyPI. > so build isolation isolates you from arbitrary system libs? now you

Re: [Distutils] moving things forward

2016-05-05 Thread Greg Ewing
Chris Barker wrote: OK -- that's more or less my thought -- if it's python that gets run, then you've got your config generator built in -- why not? The difference is that the config generator only gets run once, when the config info needs to get produced. If the config file itself is

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Chris Barker
On Thu, May 5, 2016 at 2:10 AM, Nathaniel Smith wrote: > ...The main thing I want to point out though, is that all of these > problems you're raising are complications caused entirely by wanting > to avoid build isolation in the name of simplicity. If each package > gets its own

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Chris Barker
On Wed, May 4, 2016 at 11:57 PM, Robert Collins wrote: > > No. Old pip new package will break, new pip old package is entirely safe > AFAICT. That's the goal, yes? So I think we need to get less obsessed with backward compatibility: pip will retain (for along time)

Re: [Distutils] moving things forward

2016-05-05 Thread Alex Grönholm
OK, so which setup() arguments do we want to leave out of the static metadata? 05.05.2016, 23:53, Daniel Holth kirjoitti: This is a recurring point of confusion. setup.py is not ever going away. In general it is necessary for you to be able to write software to build your software, and there

Re: [Distutils] moving things forward

2016-05-05 Thread Daniel Holth
C extensions, py-modules, ... On Thu, May 5, 2016, 17:05 Alex Grönholm wrote: > OK, so which setup() arguments do we want to leave out of the static > metadata? > > > 05.05.2016, 23:53, Daniel Holth kirjoitti: > > This is a recurring point of confusion. setup.py is not

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Chris Barker
We've spent a huge amount of effort on reaching the point where pretty > much everything *can* be made pip installable. Heck, *PyQt5*, which is > my personal benchmark for a probably-totally-unpackageable package, > announced last week that they now have binary wheels on pypi for all > of

Re: [Distutils] moving things forward

2016-05-05 Thread Daniel Holth
This is a recurring point of confusion. setup.py is not ever going away. In general it is necessary for you to be able to write software to build your software, and there is no intention to take that feature away. People repeatedly come to the conclusion that static metadata means the entire

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Chris Barker
On Wed, May 4, 2016 at 8:09 PM, Nick Coghlan wrote: > I know I'm one of the folks that has historically been dubious of the > "just use setup.cfg" idea, due to the assorted problems with the > ini-style format not extending particularly well to tree-structured > data (beyond

Re: [Distutils] moving things forward

2016-05-05 Thread Alex Grönholm
I think it would be best to gather a few extreme examples of setup.py files from real world projects and figure out if they can be implemented in a declarative fashion. That at least would help us identify the pain points. For starters, gevent's setup.py looks like it needs a fair bit of

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Chris Barker
On Wed, May 4, 2016 at 7:45 PM, Nick Coghlan wrote: > This configuration vs customisation distinction is probably worth > spelling out for folks without a formal software engineering or > computer science background, so: > fair enough -- good to be clear on the terms. >

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Chris Barker
On Wed, May 4, 2016 at 3:28 PM, Paul Moore wrote: > On 4 May 2016 at 23:11, Chris Barker wrote: > > so it could be purely declarative, but users could also put code in > there to > > customize the configuration on the fly, too. > > That basically

Re: [Distutils] Calling for a volunteer to help admin PyPI

2016-05-05 Thread Donald Stufft
> On May 4, 2016, at 8:28 PM, Richard Jones wrote: > > The *ahem* "tools" available aren't the best, and will require privileged > access to a system to do some of this work I should really do something about this. Would you be able to give me a prioritized list of

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Paul Moore
On 5 May 2016 at 13:36, Daniel Holth wrote: > Here's the kind of thing that you should expect. Someone will write > > setup.cfg: > > [bootstrap_requires] > pbr > > pip installs pbr in a directory that is added to PYTHONPATH for that build. Ah, so we don't install into the

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Nick Coghlan
On 5 May 2016 at 22:36, Daniel Holth wrote: > Pedantic note > > setup_requires is a setuptools parameter used to install packages after > setup() is called. Even though very many people expect or want those > packages to be installed before setup.py executes. I think it is

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Daniel Holth
Here's the kind of thing that you should expect. Someone will write setup.cfg: [bootstrap_requires] pbr pip installs pbr in a directory that is added to PYTHONPATH for that build. The package builds. And there was much rejoicing. The big gain from this simple feature is that people will be

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Paul Moore
On 5 May 2016 at 10:10, Nathaniel Smith wrote: > ...The main thing I want to point out though, is that all of these > problems you're raising are complications caused entirely by wanting > to avoid build isolation in the name of simplicity. If each package > gets its own isolated

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Nick Coghlan
On 5 May 2016 at 19:47, Nathaniel Smith wrote: > The reason I'm being so intense about this is that AFAICT these are all true: > > Premise 1: Without build isolation enabled by default, then in > practice everyone will putter along putting up with broken builds all > the time.

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Nick Coghlan
On 5 May 2016 at 14:22, Nathaniel Smith wrote: > On Wed, May 4, 2016 at 6:28 AM, Nick Coghlan wrote: >> On 4 May 2016 at 23:00, Daniel Holth wrote: >>> +1 It would be great to start with a real setup_requires and probably would >>> not

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Nathaniel Smith
On Wed, May 4, 2016 at 11:57 PM, Robert Collins wrote: > On 5 May 2016 at 18:32, Nathaniel Smith wrote: >> On Wed, May 4, 2016 at 10:42 PM, Robert Collins >>... >>> Yes, things will break: anyone using this will need a new pip, by >>> definition. Not

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Nathaniel Smith
On Thu, May 5, 2016 at 2:02 AM, Paul Moore wrote: > On 5 May 2016 at 07:57, Robert Collins wrote: >> We've a history in this group of biting off too much and things not >> getting executed. We're *still* in the final phases of deploying >> PEP-508,

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Paul Moore
On 5 May 2016 at 07:57, Robert Collins wrote: > We've a history in this group of biting off too much and things not > getting executed. We're *still* in the final phases of deploying > PEP-508, and it was conceptually trivial. I'm not arguing that we > shouldn't make

Re: [Distutils] Things that are not pip-installable (was Re: moving things forward) shouldn't)

2016-05-05 Thread Nathaniel Smith
On Thu, May 5, 2016 at 1:00 AM, Marius Gedminas wrote: > On Wed, May 04, 2016 at 11:32:33PM -0700, Nathaniel Smith wrote: >> What are these things that aren't pip-installable and why isn't the >> solution to fix that? > > Things that are not pip-installable that I've personally

Re: [Distutils] moving things forward

2016-05-05 Thread Paul Moore
On 5 May 2016 at 00:58, Ethan Furman wrote: > Somebody will have to distill that PEP, I have only an small inkling of what > it's trying to say. The relevant point for this discussion is "you can request that particular packages are installed before the build step for your

[Distutils] Things that are not pip-installable (was Re: moving things forward) shouldn't)

2016-05-05 Thread Marius Gedminas
On Wed, May 04, 2016 at 11:32:33PM -0700, Nathaniel Smith wrote: > What are these things that aren't pip-installable and why isn't the > solution to fix that? Things that are not pip-installable that I've personally missed include: - pygame (there are a bunch of tickets in their bug tracker, and

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Robert Collins
On 5 May 2016 at 18:32, Nathaniel Smith wrote: > On Wed, May 4, 2016 at 10:42 PM, Robert Collins >... >> Yes, things will break: anyone using this will need a new pip, by >> definition. Not everyone will be willing to wait 10 years before using >> it :). > > Just to clarify (since

Re: [Distutils] moving things forward (was: wheel including files it shouldn't)

2016-05-05 Thread Nathaniel Smith
On Wed, May 4, 2016 at 10:42 PM, Robert Collins wrote: > On 5 May 2016 at 16:22, Nathaniel Smith wrote: > ... >> I'm sympathetic to the general approach, but on net I think I prefer a >> slightly different proposal. >> >> Downsides to just standardizing