[Distutils] [pyconuk] "Python Package Management Sucks"

Michael ms at cerenity.org
Wed Sep 24 14:31:27 CEST 2008

On Wednesday 24 September 2008 01:24:51 Jim Fulton wrote:
> >  Setuptools and PyPI are light years behind CPAN in regards to  
> > creating a usable, reliable method of package deployment.
> Behind, yes. Light years? I don't think so.

People have been complaining about python package management for the entire 
time I've used python. Now, I'm not old timer for python only 6 and a bit 
years or so - after having rejected it originally 10 years ago, but people 
have definitely been complaining for 6 years at least.

Now before that I'd been writing perl code for many years, and they'd had this 
system stolen from the TeX community (CTAN) which they'd called CPAN and that 
had been actively useful to everyone in the Perl community from the first 
time I came across perl (which was 10 years ago).

Now, with python there's the general ethos:
   There should be one-- and preferably only one --obvious way to do it.

And with perl there's the general ethos:
   There's more than one way to do it

Anyone who's written extensive amounts of code in both languages will know 
that the latter ethos does cause major problems in practice.

However for packaging, with python the rule is
   * "There's more than one way to do it"

And for perl the rule is:
   * Use CPAN

I've always found this difference amusing, and never said much about this
because one of my earliest experiences of the python "community" was seeing
a poor perl developer at Europython in 2005 ripped to shreds by (someone I 
would expect nicer behaviour from) for merely suggesting "hey, the perl 
people actually have figured this out and have one obvious way to do it".

Now, personally, given that CPAN (which I think borrowed the idea from CTAN - 
I think - I definitely heard of CTAN first) has worked very happily for the 
perl community for the past 10 years (the time I've used perl for), and given 
that the python community still has problems (pyinstall being the latest in 
the saga), maybe the time has come to recognise that perl maybe isn't "light 
years" ahead on this, but actually is a decade ahead at least.

After all, the question:
   * What do I use to package my code

*IS* a discussion point for python.

For Perl, it's a FAQ with the answer being "CPAN".

Sure, CPAN has had (and probably still has occasionally) problems, and it is 
far from perfect but at least the perl people DO have one obvious way to do 

Heck, in python its a discussion so old that people become INCREDIBLY ratty
about it, and so on that note since I'll probably get flamed to hell and back 
for the above (given what happened at Europython a few years back), I'll back 
out quietly now.



More information about the Distutils-SIG mailing list