Won't be at either but I suspect if backtracking could be made to work so it buildout could be made to complete in the face of complex version definitions. I think that would be a huge win. Its so hard to explain why a buildout has failed and how to go about finding conflicting conditions and pinning versions to a begginers.
--
You received this message because you are subscribed to the Google Groups "Buildout Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to buildout-develop...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
but I suspect if backtracking could be made to work so it buildout could be made to complete in the face of complex version definitions. I think that would be a huge win. Its so hard to explain why a buildout has failed and how to go about finding conflicting conditions and pinning versions to a begginers.
On Wed, 18 Jan 2017, 9:49 PM Jim Fulton <j...@jimfulton.info> wrote:
IMO, buildout is worth preserving.I think what's mainly needed is:
- documentation that doesn't suck (mea culpa)
- Not doctests (but maybe with examples that are tested using manuel)
- Goal driven: focus on what user is trying to accomplish, not on what the implementation does.
- pip(ish) support
IMO, this should be done with an excellent recipe for building virtualenvs with it's features and usage driven by documentation that doesn't suck :).
It should honor [versions], index, etc, as zc.recipe.eggs does now.
Also, IMO, this shouldn't have anything to do with how buildout manages it's own recipes.I think it would be fun and useful to get together to address these needs.My focus would be on documentation but a major emphasis would be on a development story that's sane and sellable.I guess the major contributors to buildout these days are in Europe, so I'd con$ider :) EuroPython as an alternative to PyCon.
--
You received this message because you are subscribed to the Google Groups "Buildout Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to buildout-development+unsub...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Buildout Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to buildout-development+unsub...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Hi there,I won't make it to PyCon US, but I'm still pondering EuroPython.Spending some time on buildout sounds like a good idea. We're still relying on buildout in a good number of projects and I still prefer to use it over pip's requirements.txt as I'm missing exactly the pinning. Something that could be helpful is to allow multiple different pin sets if buildout manages different virtualenvs. (Which in turn could also enable running virtualenvs w/ different Python versions than the one that buildout uses). We're already managing around this with our own tooling in batou and simply run many different buildouts, but maybe this also makes sense to internalize.
I can imagine sprinting on buildout. Something that I've been working on with my utilities was improved self-bootstrapping. It's not perfect but it's been working more reliably than bootstrap.py did. As I'm using virtualenv/pip for that and as buildout supposedly will grow more abilities in that direction, maybe self-bootstrapping becomes feasable again ... This also probalby touches that one situation where running buildout within a virtualenv requires you to manage the initial install and setuptools versions "correctly" as depending on the system's virtualenv version you may endup with pre-installed setuptools versions that causes buildouts internal bootstrapping to enter an infinite loop trying to install setuptools.On another note, we're seeing more abilities to manage central Python installations on our systems (specifically NixOS) where we would be happy if buildout could leverage the system environment again.
And lastly, one thing that has always been bugging me is that buildout can't detect broken binary packages that need to be rebuild if the underlying system changes.
I can imagine sprinting on buildout. Something that I've been working on with my utilities was improved self-bootstrapping. It's not perfect but it's been working more reliably than bootstrap.py did. As I'm using virtualenv/pip for that and as buildout supposedly will grow more abilities in that direction, maybe self-bootstrapping becomes feasable again ... This also probalby touches that one situation where running buildout within a virtualenv requires you to manage the initial install and setuptools versions "correctly" as depending on the system's virtualenv version you may endup with pre-installed setuptools versions that causes buildouts internal bootstrapping to enter an infinite loop trying to install setuptools.On another note, we're seeing more abilities to manage central Python installations on our systems (specifically NixOS) where we would be happy if buildout could leverage the system environment again.Well, it can and always could. It all depends on the isolation you need/want. Also, I think it was more critical early on when setuptools was evolving rapidly. I've often gotten by using the system's Python over the last few years.
I'll note in passing, that containers make me much less averse to using a system Python because containers let me control the system. :)
And lastly, one thing that has always been bugging me is that buildout can't detect broken binary packages that need to be rebuild if the underlying system changes.That's an interesting point, and another reason to use containers.
[...]
I can imagine sprinting on buildout. Something that I've been working on with my utilities was improved self-bootstrapping. It's not perfect but it's been working more reliably than bootstrap.py did. As I'm using virtualenv/pip for that and as buildout supposedly will grow more abilities in that direction, maybe self-bootstrapping becomes feasable again ... This also probalby touches that one situation where running buildout within a virtualenv requires you to manage the initial install and setuptools versions "correctly" as depending on the system's virtualenv version you may endup with pre-installed setuptools versions that causes buildouts internal bootstrapping to enter an infinite loop trying to install setuptools.
Bummer.but I suspect if backtracking could be made to work so it buildout could be made to complete in the face of complex version definitions. I think that would be a huge win. Its so hard to explain why a buildout has failed and how to go about finding conflicting conditions and pinning versions to a begginers.
That's an interesting use case. My sense is that the change to leverage pip/packaging is that this would cease to be buildout's problem. :) But of course it would still be the user's problem and the challenge will will remain in the UI to help the user figure out WTF.
Jim
On Wed, 18 Jan 2017, 9:49 PM Jim Fulton <j...@jimfulton.info> wrote:
IMO, buildout is worth preserving.I think what's mainly needed is:
- documentation that doesn't suck (mea culpa)
- Not doctests (but maybe with examples that are tested using manuel)
- Goal driven: focus on what user is trying to accomplish, not on what the implementation does.
- pip(ish) support
IMO, this should be done with an excellent recipe for building virtualenvs with it's features and usage driven by documentation that doesn't suck :).
It should honor [versions], index, etc, as zc.recipe.eggs does now.
Also, IMO, this shouldn't have anything to do with how buildout manages it's own recipes.I think it would be fun and useful to get together to address these needs.My focus would be on documentation but a major emphasis would be on a development story that's sane and sellable.I guess the major contributors to buildout these days are in Europe, so I'd con$ider :) EuroPython as an alternative to PyCon.
--
You received this message because you are subscribed to the Google Groups "Buildout Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to buildout-develop...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Buildout Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to buildout-develop...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Buildout Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to buildout-develop...@googlegroups.com.
On Thu, 19 Jan 2017, 8:11 PM Jim Fulton <j...@jimfulton.info> wrote:Bummer.but I suspect if backtracking could be made to work so it buildout could be made to complete in the face of complex version definitions. I think that would be a huge win. Its so hard to explain why a buildout has failed and how to go about finding conflicting conditions and pinning versions to a begginers.
That's an interesting use case. My sense is that the change to leverage pip/packaging is that this would cease to be buildout's problem. :) But of course it would still be the user's problem and the challenge will will remain in the UI to help the user figure out WTF.If you have two recipes with the same dependency and the 2nd one has a more strict constraint then I think its buildouts problem since it is feasible (though inefficient) to make backtracking work by automatically uninstalling the 2nd recipe and reinstalling the 1st with the new constraint in mind. I'm not sure how pip would prevent that.
Jim--
--