Re: [Distutils] setup_requires for dev environments

2015-03-24 Thread Robert Collins
On 17 March 2015 at 15:36, Robert Collins wrote: ... > So, the propsed plan going forward: > - now: >- I will put a minimal patch up for pip into the tracker and ask > for feedback here and there Feedback solicited! https://github.com/pypa/pip/pull/2603 The week delay was refactoring the g

Re: [Distutils] setup_requires for dev environments

2015-03-20 Thread Nick Coghlan
On 20 Mar 2015 09:07, "Ionel Cristian Mărieș" wrote: > > > On Thu, Mar 19, 2015 at 10:38 PM, Nick Coghlan wrote: >> >> I believe setuptools can already do this (as "setup-requirements.txt"), but it's a generated file that people tend not to check into source control. > > > ​Isn't that just some p

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Chris Barker
On Thu, Mar 19, 2015 at 9:45 AM, Tim Smith wrote: > A way of learning about setup_requires dependencies would be helpful for > homebrew-pypi-poet [1], which helps generate Homebrew formulae for > applications implemented in Python. > Indeed -- conda is similar -- it provides a "conda skelton pyp

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Ionel Cristian Mărieș
On Thu, Mar 19, 2015 at 10:38 PM, Nick Coghlan wrote: > I believe setuptools can already do this (as "setup-requirements.txt"), > but it's a generated file that people tend not to check into source control. ​Isn't that just some project's convention - they just read it up ​in setup.py? Setuptoo

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Chris Barker
On Thu, Mar 19, 2015 at 9:56 AM, Chris Barker wrote: > On Thu, Mar 19, 2015 at 9:26 AM, Ionel Cristian Mărieș > wrote: > >> The --record is for making a list of installed files. You don't need it >> if you don't use record.txt anywhere. >> > > thanks -- I"ll take that out... > Actually, I took

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Nick Coghlan
On 19 Mar 2015 23:33, "Leonardo Rochael Almeida" wrote: > > > On 18 March 2015 at 14:37, Daniel Holth wrote: >> >> [...] >> >> The behavior we're aiming for would be: >> >> "installer run setup.py" - installs things >> "python setup.py" - does not install things > > > Besides that, I'd add that w

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Tim Smith
Apologies: misattributed Leonardo Rochael Almeida 's comments to Daniel Holth when I was cutting and pasting from my digest. On Thu, Mar 19, 2015 at 9:45 AM, Tim Smith wrote: > On Thu, Mar 19, 2015 at 7:12 AM, Daniel Holth wrote: > >> So I'd like to suggest the following series of small improve

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Daniel Holth
The reason you should not have to run setup.py to dump out the setup-requires is that, in the what-people-tend-to-expect definition, setup.py cannot run without those requirements being installed first. There is a similar problem with putting setup-requires in the PEP 426 Metadata. As long as we h

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Tim Smith
On Thu, Mar 19, 2015 at 7:12 AM, Daniel Holth wrote: > So I'd like to suggest the following series of small improvements to both > pip and setuptools: > > * setuptools: `python setup.py setup_requires` dumps its setup_requires > keyword in 'requirements.txt' format > > It's is already in this fo

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Chris Barker
On Thu, Mar 19, 2015 at 9:26 AM, Ionel Cristian Mărieș wrote: > The --record is for making a list of installed files. You don't need it if > you don't use record.txt anywhere. > thanks -- I"ll take that out... This was a cut and paste form teh net after much frustration -- once I got somethign t

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Paul Moore
On 19 March 2015 at 16:46, Chris Barker wrote: > I guess I have no idea if there was a big problem with the architecture of > setuptools requiring a big shift -- all I see are problems with the API and > feature set.and by definition you can't change those and be backward > compatible... The

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Chris Barker
On Wed, Mar 18, 2015 at 8:43 AM, Paul Moore wrote: > > I suppose it's too late now, but the really painful parts of all this > > seem to be due to overly aggressive backward compatibility. We now > > have wheels, but also eggs, we now have pip, but also easy_install, > > etc. > > Agreed. But the

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Ionel Cristian Mărieș
The --record is for making a list of installed files. You don't need it if you don't use record.txt anywhere. As for --single-version-externally-managed, that's unrelated to your setup_requires pain - you probably already have the eggs around, so they aren't redownloaded. What --single-version-ext

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Chris Barker
On Thu, Mar 19, 2015 at 6:57 AM, Daniel Holth wrote: > If that's what you want then we could say the spec was to put the > requirements in setup_requires.txt, in the requirements.txt format, > which pip would eventually look for and install before running > setup.py > yes, that would be great --

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Chris Barker
On Thu, Mar 19, 2015 at 9:12 AM, Ionel Cristian Mărieș wrote: > ​Worth considering​, if you can afford it, to have a local patch that you > apply before building. Then you have all the necessary fixes (like remove > the setup_requires) in that patch file. > yup -- that's a option -- but a really

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Ionel Cristian Mărieș
On Thu, Mar 19, 2015 at 5:38 PM, Chris Barker wrote: > My use case at the moment is trying to build conda packages from other > peoples' Python packages - if they use setup_requires, etc, then I'm stuck > with it. ​Worth considering​, if you can afford it, to have a local patch that you apply b

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Chris Barker
On Thu, Mar 19, 2015 at 7:12 AM, Daniel Holth wrote: > ... except that there are plenty of reasons we wouldn't want the > requirements.txt format, mainly because pip shouldn't automatically > install concrete dependencies that contain git:// urls etc. is that format problem, or a pip feature is

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Chris Barker
On Wed, Mar 18, 2015 at 10:37 AM, Daniel Holth wrote: > The behavior we're aiming for would be: > > "installer run setup.py" - installs things > "python setup.py" - does not install things > yup. Which, now that I look at it, is not so different than: python setup.py build # does not isntall a

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Chris Barker
On Wed, Mar 18, 2015 at 9:02 AM, Ionel Cristian Mărieș wrote: > > On Wed, Mar 18, 2015 at 5:33 PM, Chris Barker - NOAA Federal < > chris.bar...@noaa.gov> wrote: > >> I don't want it downloading and installing dependencies when I go to >> build. That's an install- time task. >> > > Sounds to me li

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Daniel Holth
... except that there are plenty of reasons we wouldn't want the requirements.txt format, mainly because pip shouldn't automatically install concrete dependencies that contain git:// urls etc. On Thu, Mar 19, 2015 at 9:57 AM, Daniel Holth wrote: > If that's what you want then we could say the spe

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Daniel Holth
If that's what you want then we could say the spec was to put the requirements in setup_requires.txt, in the requirements.txt format, which pip would eventually look for and install before running setup.py On Thu, Mar 19, 2015 at 9:32 AM, Leonardo Rochael Almeida wrote: > > On 18 March 2015 at 14

Re: [Distutils] setup_requires for dev environments

2015-03-19 Thread Leonardo Rochael Almeida
On 18 March 2015 at 14:37, Daniel Holth wrote: > [...] > > The behavior we're aiming for would be: > > "installer run setup.py" - installs things > "python setup.py" - does not install things Besides that, I'd add that we're also looking for: "python setup.py" (by itself) should not raise Impor

Re: [Distutils] setup_requires for dev environments

2015-03-18 Thread Nick Coghlan
On 19 March 2015 at 02:49, Paul Moore wrote: > On 18 March 2015 at 16:02, Ionel Cristian Mărieș wrote: >> one certainly doesn't need to shoehorn a full blown build system into >> setup.py - there's make, invoke, shell scripts and plenty of other systems >> that can do that just fine. > > Just to

Re: [Distutils] setup_requires for dev environments

2015-03-18 Thread Ben Finney
Chris McDonough writes: > FWIW, this particular use case (retrieving the version by importing it > or a function that returns it after it reads a file or whatever), is > dodgy. It's way better that code that needs version info inside the > package consult pkg_resources or some similar system: > >

Re: [Distutils] setup_requires for dev environments

2015-03-18 Thread Wichert Akkerman
> On 18 Mar 2015, at 17:49, Paul Moore wrote: > > On 18 March 2015 at 16:02, Ionel Cristian Mărieș wrote: >> one certainly doesn't need to shoehorn a full blown build system into >> setup.py - there's make, invoke, shell scripts and plenty of other systems >> that can do that just fine. > > Ju

Re: [Distutils] setup_requires for dev environments

2015-03-18 Thread Daniel Holth
On Wed, Mar 18, 2015 at 12:02 PM, Ionel Cristian Mărieș wrote: > > On Wed, Mar 18, 2015 at 5:33 PM, Chris Barker - NOAA Federal > wrote: >> >> I don't want it downloading and installing dependencies when I go to >> build. That's an install- time task. > > > Sounds to me like you should not use se

Re: [Distutils] setup_requires for dev environments

2015-03-18 Thread Paul Moore
On 18 March 2015 at 16:02, Ionel Cristian Mărieș wrote: > one certainly doesn't need to shoehorn a full blown build system into > setup.py - there's make, invoke, shell scripts and plenty of other systems > that can do that just fine. Just to insert a little history here, before distutils (setup.

Re: [Distutils] setup_requires for dev environments

2015-03-18 Thread Ionel Cristian Mărieș
On Wed, Mar 18, 2015 at 5:33 PM, Chris Barker - NOAA Federal < chris.bar...@noaa.gov> wrote: > I don't want it downloading and installing dependencies when I go to > build. That's an install- time task. > Sounds to me like you should not use setup_requires then - if you don't like what it does.

Re: [Distutils] setup_requires for dev environments

2015-03-18 Thread Paul Moore
Just a couple of comments On 18 March 2015 at 15:33, Chris Barker - NOAA Federal wrote: > I suppose it's too late now, but the really painful parts of all this > seem to be due to overly aggressive backward compatibility. We now > have wheels, but also eggs, we now have pip, but also easy_install

Re: [Distutils] setup_requires for dev environments

2015-03-18 Thread Chris Barker - NOAA Federal
Folks, I'm having a hard time catching up with this, but maybe a few comments from someone well outside the trenches will be helpful. And note that one of use cases I'm now wrestling with is using another package manager (conda), and setuptools is currently a PITA in that context. >> you that "p

Re: [Distutils] setup_requires for dev environments

2015-03-18 Thread Chris McDonough
On 03/16/2015 02:53 PM, Daniel Holth wrote: No one should be asked to learn how to extend distutils, and in practice no one knows how. People have been begging for years for working setup_requires, far longer than I've been interested in it, and all they want to do is import fetch_version setup

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Daniel Holth
In other setup_requires old news, a couple of years ago I did an "autosetuptools" branch of pip which would automatically install setuptools (if it was not already installed) when installing sdists. In this case you could think of setuptools as an implicit setup_requires member. Setuptools would no

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Marcus Smith
> So you *can* import things inside of a setup.py today, you just have to I think it's time for the Packaging User Guide to try to cover "setup_requires"... ___ Distutils-SIG maillist - Distutils-SIG@python.org https://mail.python.org/mailman/listi

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Marcus Smith
> For instance, if the problem is "when setuptools does the install, then > things > get installed differently, with different options, SSL certs, proxies, etc" > then I think a better solution is that pip does terrible hacks in order to > forcibly take control of setup_requires from setuptools and

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Paul Moore
On 17 March 2015 at 13:17, Nick Coghlan wrote: > Agreed. This is where I think making pip d2to1 aware could be worthwhile - > if we can find a of making the emulation target for an alternate build > system be d2to1 rather than the whole of setuptools it may descope the > interoperability problem e

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Daniel Holth
On Tue, Mar 17, 2015 at 9:17 AM, Nick Coghlan wrote: > > On 17 Mar 2015 23:01, "Daniel Holth" wrote: >> >> So for me, metadata, while fine to have, is not the blocker for >> "generating wheels with some other build system". Having the other >> build system is the blocker. > > For me, it's not kno

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Nick Coghlan
On 17 Mar 2015 23:01, "Daniel Holth" wrote: > > So for me, metadata, while fine to have, is not the blocker for > "generating wheels with some other build system". Having the other > build system is the blocker. For me, it's not knowing what "done" looks like, even if a candidate alternative buil

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Daniel Holth
So for me, metadata, while fine to have, is not the blocker for "generating wheels with some other build system". Having the other build system is the blocker. Still Bento is a pretty great candidate. WAF is also promising. ___ Distutils-SIG maillist -

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Daniel Holth
The wheel spec itself is intentionally designed to be ignorant of the (setuptools) metadata; you don't have to read that to install the files where they belong. Wheels are also not too hard to generate without-setuptools. There's a wscript in the wheel source code that can generate a wheel of bdist

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Paul Moore
On 17 March 2015 at 12:34, Donald Stufft wrote: > There is no egg_info command inside of a Wheel, it’s currently looking > at foo.whl/foo.dist-info/METADATA for that. Doh, of course. I thought I'd checked that, must have been looking in the wrong place (it's not a bit of the code I'm that familia

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Donald Stufft
> On Mar 17, 2015, at 8:33 AM, Paul Moore wrote: > > On 17 March 2015 at 11:49, Donald Stufft wrote: >>> I'm still not clear what you expect pip to *do* with the metadata. >>> It's just data, there's no functionality specified in the PEP. >> >> What pip does now with metadata, Look at it for d

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Paul Moore
On 17 March 2015 at 11:49, Donald Stufft wrote: >> I'm still not clear what you expect pip to *do* with the metadata. >> It's just data, there's no functionality specified in the PEP. > > What pip does now with metadata, Look at it for dependency information when > installing the Wheel, show it wh

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Donald Stufft
> On Mar 17, 2015, at 7:43 AM, Paul Moore wrote: > > On 17 March 2015 at 11:38, Donald Stufft wrote: >>> OK, cool. So bdist_wheel to write a pydist.json into the wheel, and >>> then I guess wheel install (and pip) will just pick it up and dump it >>> in the dist-info folder because they do that

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Nick Coghlan
On 17 March 2015 at 21:05, Donald Stufft wrote: > >> On Mar 17, 2015, at 5:52 AM, Paul Moore wrote: >> While I understand that there are real reasons why PEP 426 needs more >> work before being finalised, is there no way that you (Nick and Donald >> mainly, but honestly anyone with a picture of w

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Paul Moore
On 17 March 2015 at 11:38, Donald Stufft wrote: >> OK, cool. So bdist_wheel to write a pydist.json into the wheel, and >> then I guess wheel install (and pip) will just pick it up and dump it >> in the dist-info folder because they do that anyway. Sounds easy >> enough. > > I would also modify pip

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Paul Moore
On 17 March 2015 at 11:30, Nick Coghlan wrote: > That's a fair request. Something I perhaps haven't been clear about is > that PEP 426 is *just* an interoperability spec - it defines the > interfaces between tools so they can share a common data model. I think that was pretty clear actually. The

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Donald Stufft
> On Mar 17, 2015, at 7:33 AM, Paul Moore wrote: > > On 17 March 2015 at 11:05, Donald Stufft wrote: >> I would just implement it inside of Wheel. You’d technically be working >> on two PEPs at once, but I think the bare bones Wheel PEP is pretty >> simple. “All the same things as the last PEP,

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Paul Moore
On 17 March 2015 at 11:05, Donald Stufft wrote: > I would just implement it inside of Wheel. You’d technically be working > on two PEPs at once, but I think the bare bones Wheel PEP is pretty > simple. “All the same things as the last PEP, except with pydist.json”. > More things could be added to

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Nick Coghlan
On 17 March 2015 at 19:52, Paul Moore wrote: > On 16 March 2015 at 23:24, Nick Coghlan wrote: >> However, now that I know folks are keen to help with that side, I can >> reprioritise getting the updates done so there's a better base to start >> working from. > > The thing I struggle with over PEP

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Donald Stufft
> On Mar 17, 2015, at 5:52 AM, Paul Moore wrote: > > On 16 March 2015 at 23:24, Nick Coghlan wrote: >> However, now that I know folks are keen to help with that side, I can >> reprioritise getting the updates done so there's a better base to start >> working from. > > The thing I struggle with

Re: [Distutils] setup_requires for dev environments

2015-03-17 Thread Paul Moore
On 16 March 2015 at 23:24, Nick Coghlan wrote: > However, now that I know folks are keen to help with that side, I can > reprioritise getting the updates done so there's a better base to start > working from. The thing I struggle with over PEP 426 is that as a data format definition, which explic

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Nick Coghlan
On 17 March 2015 at 09:24, Nick Coghlan wrote: > The main bottleneck where PEP 426 is concerned is me, and my current focus > is on Red Hat & Project Atomic (e.g. > http://connect.redhat.com/zones/containers, > https://github.com/projectatomic/adb-atomic-developer-bundle) and the PSF > (e.g. > htt

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Robert Collins
On 17 March 2015 at 12:39, Robert Collins wrote: >> I don’t think that’s going to work, because if you only make pip aware of it >> then you break ``python setup.py sdist``, if you make setuptools aware of it >> then you don’t need pip to be aware of it because we’ll get it for free from >> setup

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Robert Collins
On 17 March 2015 at 12:53, Daniel Holth wrote: > Robert: is it a requirement to you that "python setup.py ..." should > install setup_requires? For me I'd be quite happy if installing the > requirements was my own problem in the absence of an installer. > > I would like to start writing my setup.p

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Daniel Holth
Robert: is it a requirement to you that "python setup.py ..." should install setup_requires? For me I'd be quite happy if installing the requirements was my own problem in the absence of an installer. I would like to start writing my setup.py like this: setup.cfg: setup-requires = waf setup.py:

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Robert Collins
On 17 March 2015 at 12:32, Donald Stufft wrote: > > On Mar 16, 2015, at 7:03 PM, Nick Coghlan wrote: > > > On 17 Mar 2015 02:33, "Daniel Holth" wrote: >> >> Problem: Users would like to be able to import stuff in setup.py. This >> could be anything from a version fetcher to a replacement for >>

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 16, 2015, at 7:03 PM, Nick Coghlan wrote: > > > On 17 Mar 2015 02:33, "Daniel Holth" > wrote: > > > > Problem: Users would like to be able to import stuff in setup.py. This > > could be anything from a version fetcher to a replacement for > > distutils itself.

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 16, 2015, at 6:35 PM, Robert Collins wrote: > > On 17 March 2015 at 09:42, Donald Stufft wrote: >> > .. >> A, wait a minute. I think something might have just clicked here. >> >> You’re expecting/wanting the results of setup_requres to be installed >> into the environment itself

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Nick Coghlan
On 17 Mar 2015 04:33, "Paul Moore" wrote: > > On 16 March 2015 at 17:14, Donald Stufft wrote: > > The bulk of the effort of pushing the standards, pip, and PyPI through is done > > by a handful of people, and of those handful I believe that the largest share > > is done by myself. That's not to t

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Nick Coghlan
On 17 Mar 2015 02:33, "Daniel Holth" wrote: > > Problem: Users would like to be able to import stuff in setup.py. This > could be anything from a version fetcher to a replacement for > distutils itself. However, if setup.py is the only place to specify > these requirements there's a bit of a chick

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Robert Collins
On 17 March 2015 at 09:42, Donald Stufft wrote: > .. > A, wait a minute. I think something might have just clicked here. > > You’re expecting/wanting the results of setup_requres to be installed > into the environment itself and not just made available to the setup.py? > That’s not going to wo

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Daniel Holth
Yes setup_requires means those dependencies that are needed for setup.py itself to run. On Mon, Mar 16, 2015 at 4:42 PM, Donald Stufft wrote: > >> On Mar 16, 2015, at 4:04 PM, Robert Collins >> wrote: >> >> On 17 March 2015 at 04:06, Donald Stufft wrote: >> Thoughts? >>> >>> I've been thi

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 16, 2015, at 4:04 PM, Robert Collins wrote: > > On 17 March 2015 at 04:06, Donald Stufft wrote: > >>> Thoughts? >> >> I've been thinking about this proposal this morning, and my primary question >> is what exactly is the pain that is being caused right now, and how does this >> propo

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Robert Collins
On 17 March 2015 at 04:06, Donald Stufft wrote: >> Thoughts? > > I've been thinking about this proposal this morning, and my primary question > is what exactly is the pain that is being caused right now, and how does this > proposal help it? Is the pain that setuptools is doing the installation

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 16, 2015, at 3:32 PM, Daniel Holth wrote: > > On Mon, Mar 16, 2015 at 3:19 PM, Donald Stufft wrote: >> >>> On Mar 16, 2015, at 2:53 PM, Daniel Holth wrote: >>> >>> No one should be asked to learn how to extend distutils, and in >>> practice no one knows how. >> >> Some people know

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Daniel Holth
You ought to be able to get away with not supporting it in warehouse, we will surely be able to write legacy .egg-info to sdists indefinitely. On Mon, Mar 16, 2015 at 3:09 PM, Donald Stufft wrote: > >> On Mar 16, 2015, at 2:33 PM, Paul Moore wrote: >> >> On 16 March 2015 at 17:14, Donald Stufft

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Daniel Holth
On Mon, Mar 16, 2015 at 3:19 PM, Donald Stufft wrote: > >> On Mar 16, 2015, at 2:53 PM, Daniel Holth wrote: >> >> No one should be asked to learn how to extend distutils, and in >> practice no one knows how. > > Some people know how, pytest figured it out, pbr figured it out. There’s > some docum

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 16, 2015, at 2:53 PM, Daniel Holth wrote: > > No one should be asked to learn how to extend distutils, and in > practice no one knows how. Some people know how, pytest figured it out, pbr figured it out. There’s some documentation at https://pythonhosted.org/setuptools/setuptools.html

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 16, 2015, at 2:33 PM, Paul Moore wrote: > > On 16 March 2015 at 17:14, Donald Stufft wrote: >> The bulk of the effort of pushing the standards, pip, and PyPI through is >> done >> by a handful of people, and of those handful I believe that the largest share >> is done by myself. That'

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Daniel Holth
No one should be asked to learn how to extend distutils, and in practice no one knows how. People have been begging for years for working setup_requires, far longer than I've been interested in it, and all they want to do is import fetch_version setup(version=fetch_version(), ...) Then they will

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Paul Moore
On 16 March 2015 at 17:14, Donald Stufft wrote: > The bulk of the effort of pushing the standards, pip, and PyPI through is done > by a handful of people, and of those handful I believe that the largest share > is done by myself. That's not to toot my own horn or any such nonsense but to > simply

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 16, 2015, at 1:04 PM, Daniel Holth wrote: > > The problem with a no-stopgaps policy is that the non-stopgap solution > has to be incredible to ever be greater than the accrued debt of > ((current pain - reduced pain from stopgap) * all python users * years > until non-stopgap) - (mainte

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 16, 2015, at 12:32 PM, Daniel Holth wrote: > > Problem: Users would like to be able to import stuff in setup.py. This > could be anything from a version fetcher to a replacement for > distutils itself. However, if setup.py is the only place to specify > these requirements there's a bit

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Daniel Holth
The problem with a no-stopgaps policy is that the non-stopgap solution has to be incredible to ever be greater than the accrued debt of ((current pain - reduced pain from stopgap) * all python users * years until non-stopgap) - (maintenance/documentation hassle * years since stopgap implemented * e

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Steve Dower
Donald Stufft wrote: > So yea, what's the actual problem that this is attempting to solve? ISTM (whether this is the actual intent or not) that this would be handy to differentiate between the dependencies needed when installing from a wheel vs. an sdist. Daniel's example of setup_requires inclu

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Daniel Holth
Problem: Users would like to be able to import stuff in setup.py. This could be anything from a version fetcher to a replacement for distutils itself. However, if setup.py is the only place to specify these requirements there's a bit of a chicken and egg problem, unless they have unusually good set

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 16, 2015, at 11:24 AM, Daniel Holth wrote: > > We could support this syntax right now. It's so simple. Don't deride > it as a pseudo standard, turn it into an actual standard and praise it > as something practical that will not take years to implement. Then > after those years have pass

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Daniel Holth
We could support this syntax right now. It's so simple. Don't deride it as a pseudo standard, turn it into an actual standard and praise it as something practical that will not take years to implement. Then after those years have passed and the new PEP actually works and has a distutils replacement

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Donald Stufft
> On Mar 15, 2015, at 9:05 PM, Robert Collins wrote: > > PEP 426 addresses build requirements for distributions of Python code, > but doesn't directly help with development environments. > > It seems to me that if we help development environments, that would be > nice - and any explicit metadat

Re: [Distutils] setup_requires for dev environments

2015-03-16 Thread Nick Coghlan
On 16 March 2015 at 11:05, Robert Collins wrote: > PEP 426 addresses build requirements for distributions of Python code, > but doesn't directly help with development environments. It's supposed to, but updating the relevant section of the PEP has been lingering on my todo list for a while now. S

Re: [Distutils] setup_requires for dev environments

2015-03-15 Thread Ben Finney
Robert Collins writes: > For context, the main use I have for setup_requires these days is > projects with a version contained within the project, and for the use > of pbr in openstack (and some other git hosted) projects. […] > The openstack projects have a nice solution I think, which is that

[Distutils] setup_requires for dev environments

2015-03-15 Thread Robert Collins
PEP 426 addresses build requirements for distributions of Python code, but doesn't directly help with development environments. It seems to me that if we help development environments, that would be nice - and any explicit metadata there can obviously be reflected into PEP-426 data in future. For