[Python-Dev] "setuptools has divided the Python community"

Kevin Teague kevin at bud.ca
Thu Mar 26 04:44:13 CET 2009


On Mar 25, 2009, at 5:25 AM, Antoine Pitrou wrote:

> Paul Moore <p.f.moore <at> gmail.com> writes:
>>
>> 3. Setuptools, unfortunately, has divided the Python distribution
>> community quite badly.
>
> Wait a little bit, and it's gonna be even worse, now that buildout  
> and pip seem
> to become popular. For example, the TurboGears people are  
> considering switching
> from setuptools to pip...
>
> Tarek is now doing a lot of very useful work on distutils (thanks  
> Tarek!), but
> I'm not sure it'll be enough to stop people from converting to  
> whatever of the
> many build/packaging systems which have been popping up recently.  
> Combined with
> the current trend that everything must be exploded into lots of  
> interdependent
> but separately packaged libraries (the paste/pylons syndrome... try  
> pulling
> something like TurboGears2 and see how many third-party packages it  
> installs), I
> fear this is going to generate a very painful user/developer  
> experience :-(
>


 From my perspective (the Python web community), setuptools has been a  
great uniter of community.

By making it easier to break-up large projects into smaller  
distributions, it's now reasonable to share more code between more  
developers. This is an important philosophy of TurboGears 2, in that  
they're bringing together different pieces of Python web parts and  
composing them into a single framework. I think it's great that when  
I'm working on a Zope-based project I can participate in packages  
produced by the non-Zope ecosystem. This builds much greater bridges  
across sub-communites than smaller barriers put up such as one project  
using pip and another using easy_install. Heck, even when only wanting  
to share code between a couple personal projects, the barrier is now  
low enough that it's reasonable to package up that code and share a  
distribution, when in the past the only way to share that code was  
nasty copy-n-paste.

Yes, there is pain in learning to use these tools, but it's mostly a  
documentation issue. Once you've learned the tools, it can be very  
easy to manage a very large amount of packages. Thanks to Buildout  
(luuuuuv the Buildout!) it's so much easier today to deploy a Zope- 
based application today than it was 5 years ago, even though a Zope- 
based application 5 years ago used a single monolithic Zope  
distribution and a Zope-based application today is composed of many,  
many smaller distributions. I'm very happy that I can so easily  
incorporate 3rd party libraries into my projects, it makes for a very  
pleasant developer experience :-)



More information about the Python-Dev mailing list