[Zope-dev] Re: ploneout - Or how using zc.buildout for a common
Zope2 project might look like
Ian Bicking
ianb at colorstudy.com
Mon Jan 29 15:13:03 EST 2007
Jim Fulton wrote:
> Ian Bicking wrote:
>> Martin Aspeli wrote:
>>> whit wrote:
>>>
>>>> actually, in my current workplace, workingenv is the standard way to
>>>> set up one's dev environment. but in the context of the previous
>>>> statement, familar is perhaps a better word.
>>>
>>> I'm still not clear how widely used workingenv is? Is it "officially
>>> endorsed" anywhere else?
>>
>> It steps more lightly than buildout does.
>
> What does that mean?
It implements less and relies more on what other tools already do.
>> It's also mostly equivalent in mechanism to virtual-python, which is
>> used quite widely. Both use setuptools conventions more closely than
>> buildout does. It would be nice if I could say "then you get access
>> to all the setuptools-related management tools", except there are
>> almost none :( But if they *did* exist you'd get access to them ;)
>
> I suggest that workingenv and buildout are both such tools.
>
>> Build stuff seems surprisingly contentious. The debate around
>> setuptools itself has always been far more difficult than it should
>> be; there's a lot of stop energy. So the Python community as a whole
>> is moving very slowly on this stuff.
>
> I suggest that, other than contention, this is somewhat healthy.
> People with different goals will often need different tools and
> make different tradeoffs.
Sure, but I'd also like if there was a clear story for people doing this
sort of stuff. I hate the difficulty describing how to do this general
stuff, especially when describing it to people who don't even know what
their goals are and just need *one* good solution rather than a choice
of solutions. Which is to say, I'd rather we try to figure out...
something, rather than just chock it up to different goals and go our
separate ways. I haven't yet figured out what that something is, and
probably that's the hard part.
Maybe part of it is a clear and simple scaling from something fairly ad
hoc (like a workingenv that you've manually installed stuff into) into
something more formalized (like a buildout). Casual and beginning users
work best with something they can directly touch and inspect. In a more
formalized system it's better to have a central place that described
intention and the full system -- the casual user probably hasn't figured
out their intention or the full system until well after they've
completed their task.
Of course, some of buildout's scope is outside of workingenv's -- like
building non-Python libraries, and setting up specific application
instances. I think it's fine if non-Python libraries require a more
advanced setup, but application instances are something I'd like to have
a better story for. (Indirectly I'm still trying to figure out the best
way to create application instances for PasteDeploy apps too -- I have
some stuff in there, but I'm not terribly happy with it, and I haven't
figured out what instance creation should be attached to.)
--
Ian Bicking | ianb at colorstudy.com | http://blog.ianbicking.org
More information about the Zope-Dev
mailing list