Python vs. Fedora and CentOS

J

John Nagle

The major Red Hat based Linux distros are still shipping with Python 2.4.
As a result, almost all hosting providers are running obsolete versions of
Python.

The big problem seems to be that "cPanel" and "yum" still use older versions
of Python, and those programs are more important to distro builders than Python
itself.

Is anybody trying to do something about this?

John Nagle
 
M

Mike Fedyk

I've got Fedora 10 here with 2.5, and 11 at the office with 2.6.

And Fedora 13 that has 2.6 and 3.1.

And whatever slows down the upgrade treadmill is good IMO. People
should not have to install the latest python just to use your app.
 
J

John Nagle

Philip said:
Fedora has been shipping with Python 2.6 since F11 release in June of
2009, and Python > 2.4 since F7 released in May 2007.

http://distrowatch.com/table.php?distribution=fedora

The "enterprise ready" versions are much further behind.

http://distrowatch.com/table.php?distribution=centos
CentOS 5.5 (May 2010) - Python: 2.4.3

http://distrowatch.com/table.php?distribution=redhat
RHEL 5.5 (March 2010) - Python 2.4.3
RHEL 6-Beta - Python 2.6.2

However, if 2.6.2 is going into RHEL, the others will follow, and
that's probably the production Python on servers for the next few years.

John Nagle
 
D

D'Arcy J.M. Cain

The major Red Hat based Linux distros are still shipping with Python 2.4.

Is anybody trying to do something about this?

Other than not running Linux on our hosting server? My ISP
(http://www.Vex.Net) runs FreeBSD. Linux is for the desktop.
 
B

Benjamin Kaplan

And since they're "using legacy stuff that works" from 3 years ago (no
one upgrades major versions of software in a minor release- hence Win
XP SP3 still coming with IE 6), it's no wonder that they're still on
2.4.
 
P

Philip Semanchuk

I am not sure of Fedora, CentOs 5.x ships with Python 2.5 . The
version of python depends a lot on everything else that is packed
into the system and uses python. e.g. GUI based tools, system
scripts etc.

Hi Jason,
CentOS is based on RHEL SRPMs. How could it ship a more advanced
version of Python than RHEL?

I have CentOS 5.4 installed, and it only offers Python 2.4.3.

And distrowatch.org backs this up -- the latest Python available for
Centos 5.x is 2.4:
http://distrowatch.com/table.php?distribution=centos

Did you perhaps install Python 2.5 on your own by compiling the source
tarball?


bye
Philip
 
J

John Nagle

Philip said:
Hi Jason,
CentOS is based on RHEL SRPMs. How could it ship a more advanced version
of Python than RHEL?

I have CentOS 5.4 installed, and it only offers Python 2.4.3.

And distrowatch.org backs this up -- the latest Python available for
Centos 5.x is 2.4:
http://distrowatch.com/table.php?distribution=centos

Shared hosting services mostly run CentOS or RHEL; there's a trend away
from running Fedora Core. So if you want to do anything in Python that
is intended to run on shared hosting, you have to target Python 2.4.

I have a dedicated server for a big site; there I can build
and install later Python versions. That's not the problem.
It's the little sites, ones not big enough to need their own dedicated
server or virtual machine, where it's difficult to run Python.

The current RHEL beta has Python 2.6, and that should be out this
year. Hosting providers should start cutting over to it in 2011.
RHEL and CentOS have a 7-year life cycle. So we can expect mainstream
availability of Python 2.6 from 2011 to 2018.

John Nagle
 
A

Adam Tauno Williams

The major Red Hat based Linux distros are still shipping with Python 2.4.
As a result, almost all hosting providers are running obsolete versions of
Python.
The big problem seems to be that "cPanel" and "yum" still use older versions
of Python, and those programs are more important to distro builders than Python
itself.
Is anybody trying to do something about this?

Yes, we install Python 2.6 on CentOS and run a production app on it - no
problems.

rpm -Uvh
http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/ius-release-1-4.ius.el5.noarch.rpm

yum -y install python26 python26-setuptools

<http://sourceforge.net/apps/trac/coils/wiki/ProvisioningCentOS5>
 
M

Michael Torrie

There is however never been an issue to locate different version of python
in your system as you deem fit without problems.
So I dont understand why your concern.

Actually, replacing python on RHEL is a major endeavor. Almost all Red
Hat utilities are written in python and depend on the specific system
version of python that they shipped. Thus if you want to upgrade python
you're going to break 80% of the system.

Sure you can install Python from source alongside the system python, but
that's a maintenance nightmare for system administrators. I administer
some 30 RHEL instances, and compiling from source just isn't a good
option here. As for third-party RPMs, that's all fine and well as long
as you don't need any support from Red Hat. RH can only support
software they ship and certify. As for me, I don't need RH to support
my custom RPMs, so I think that's probably a fair compromise. It would
be nice to have a source (that's kept up to date security-wise) of
python packages that can be installed alongside RH system ones. Maybe
call it python26 or python28 or python31 and stick it in the EPEL
repository. I am supposing that if anyone wanted to do this, the EPEL
folks would be happy to let that person be the package maintainer.
 
M

Michael Torrie

Yes, we install Python 2.6 on CentOS and run a production app on it - no
problems.

rpm -Uvh
http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/ius-release-1-4.ius.el5.noarch.rpm

yum -y install python26 python26-setuptools

Thanks for posting this link. Very useful and interesting.

The only problem I have is how do I tell what third-party repositories
are to be trusted in my production systems? And even more important,
which repositories are actually going to keep up to date on security
updates in the long run? It's hard to know.
 
A

Adam Tauno Williams

Actually, replacing python on RHEL is a major endeavor.

Then don't do it. Just install Python 2.6. Who cares what version of
Python the system utilities use?
Almost all Red
Hat utilities are written in python and depend on the specific system
version of python that they shipped. Thus if you want to upgrade python
you're going to break 80% of the system.

Sure you can install Python from source alongside the system python, but
that's a maintenance nightmare for system administrators.

No, it is not. It is trivial. The packages don't overlap at all.

You run python2.6, easy_install-2.6, etc... and the app merrily runs.
I administer
some 30 RHEL instances, and compiling from source just isn't a good
option here. As for third-party RPMs, that's all fine and well as long
as you don't need any support from Red Hat. RH can only support
software they ship and certify.

In my experience RedHat supports their system - *not* the software you
run on it. So they don't care either way.
As for me, I don't need RH to support
my custom RPMs, so I think that's probably a fair compromise. It would
be nice to have a source (that's kept up to date security-wise) of
python packages that can be installed alongside RH system ones. Maybe
call it python26 or python28 or python31 and stick it in the EPEL
repository. I am supposing that if anyone wanted to do this, the EPEL
folks would be happy to let that person be the package maintainer.

rpm -Uvh
http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/ius-release-1-4.ius.el5.noarch.rpm
yum -y install python26 python26-setuptools
 
A

Adam Tauno Williams

Thanks for posting this link. Very useful and interesting.
The only problem I have is how do I tell what third-party repositories
are to be trusted in my production systems? And even more important,
which repositories are actually going to keep up to date on security
updates in the long run? It's hard to know.

I don't know about "third-party repositories", but IUS is solid.
They've been around since 2006.

<http://iuscommunity.org/about/>
 
J

John Nagle

Michael said:
Actually, replacing python on RHEL is a major endeavor. Almost all Red
Hat utilities are written in python and depend on the specific system
version of python that they shipped. Thus if you want to upgrade python
you're going to break 80% of the system.

Sure you can install Python from source alongside the system python, but
that's a maintenance nightmare for system administrators.

There's something to be said for having all versions of Python installed
as "python2.4", "python2.6", "python3.1", etc., with the name "python"
simply being a link to the favored version. Maybe that should be
the default. The Python Windows installers already work that way; they
create "\python26", etc. directories. The Linux installers, by
default, want to install as "python".

Add-on RPMs should be set up for versioned install. Then you can
safely install alternate versions. I gather that "iuscommunity.org"
distributions do something like this.

John Nagle
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,996
Messages
2,570,238
Members
46,826
Latest member
robinsontor

Latest Threads

Top