Python requirements poll (closed)
Moin up to 1.8 requires at least Python 2.3 and thus works on most systems out there, because 2.3 is rather old and about every installation is 2.3 or newer.
We would like to raise the requirement to require Python 2.4 for Moin 1.9 or 2.0 (probably not before 2009), but we need to collect some info first how many people would get into trouble if we do that.
Note: Python requirement was raised to >= 2.4 for upcoming MoinMoin 1.9 release. Moin 1.9 is mostly about moving to a WSGI based core. WSGI is a Python standard that is much more recent than Python 2.3 is (and the "werkzeug" WSGI framework we use requires Python 2.4), so Moin 1.9 might not be useful anyway if you have to run Python 2.3 (for that case, please simply stay with moin 1.8.x until you can upgrade to Python 2.4 at least).
Linux
Desktop Linux
All distributions ship 2.4 since quite some time and even 2.5 currently. Release cycles and support cycles are shorter, so it should be no problem requiring 2.4.
Server Linux
Please add infos about Linux distributions typically used on servers / at hosters:
Debian Sarge: Python 2.3.x (but not supported any more by debian security see here)
- Debian Etch: Python 2.4.4
- Debian Lenny: Python 2.5.2
- Ubuntu 6.06 LTS: 2.4.2
- 7.10: 2.5
- 8.04 LTS: Python 2.5.x
- 8.10: Python 2.5.2
RHEL/CentOS 4: 2.3.4
- Full Updates (including hardware updates) to May 15, 2008
- Maintenance (security) Updates to Feb 29, 2012
- How widespread is RHEL/CentOS 4?
- RHEL/CentOS 5: 2.4.3
SuSE SLES9: Python 2.3.3
- support until Sept. 2009?
- how widespread is it?
- SuSE SLES10: Python 2.4.2
- rPath Linux 1: Python 2.4.1
Mac OS X
Regard both (Leopard & Tiger) versions, since Leopard is regarded not switch-worthy by some users.
- 10.6 Snow leopard ships with 2.6.1
- 10.5 Leopard ships with 2.5.1
- 10.4 Tiger ships with 2.3.5
- 10.3 and earlier is dead. Even most Mac developers have long-since dropped support.
Python.org offers an easy click-install packages for Mac users who want to update.
Windows
There are various ways to run python on windows:
- Python.org offers an easy click-install packages for Windows users.
ActivePython: versions 2.5.2.2 and 2.4.5.14
movable python: many python versions, up to 2.5
Solaris
http://blastwave.org/ Python 2.5.x
BSD
- FreeBSD 5.x, 6.x, 7.x: Python Versions 2.3 (2.3.7), 2.4 (2.4.5) and 2.5 (2.5.2) are available via the ports-system. Upgrading is mostly painless.
OpenBSD 4.4: Python 2.5.2 package & python 2.6.x port
Popular hosts
If you use some popular web / python hosting (not a root server or other server managed by yourself), please add infos about what the hoster offers:
- hoster name: python 2.x.x
webfaction.com: python 2.5 RedHat 3.4.6-3 (but you can easily install your own python in your home dir.)
- goneo.de: python 2.5.2 (FreeBSD 7, at least the version without shell access)
- viaverio.com: python 2.4.3 FreeBSD 4.7
- sourceforge.net: python 2.3.4 (the web server runs an ancient unsupported Fedora Core 2, and basically it's too slow for dynamic pages, but thought I mention it)
- nearlyfreespeech.net: python 2.4.4, python 2.5.2 (FreeBSD)
- pair.com: python 2.5
- dreamhost.com: python 2.3.5
Discussion
Timing
moin 1.8 releases will happen until some time in 2009 (maintenance releases with security fixes).
So SLES9 won't be a big problem, because it will run out of support anyway about the same time as moin 1.8 will get its last maintenance releases.
RHEL4 / CentOS4 might be a bigger problem as it will get updates until 2012. Maybe we need some comments from its users here. There is always the possibility of either running a older moin version (and not upgrading it) or installing a more recent Python to /usr/local/ or /opt.
Comments
If you use xapian search and mod_python with Python2.3 there is a bug from mod_python. So it's recommendable to use at least python 2.4
For Mac OS X, I prefer to build my own version of Python for use with MoinMoin. Specifically, I build Python without Mac OS X Framework support. This allows me to "sandbox" my MoinMoin runtime (Python and everything). I use prefixes like "/webworks/wiki". For other Python projects, such as Trac, I do that same thing, but prefix such as "/webworks/trac". I really don't like to touch the default Mac OS X python install at all. -- BenAllums
Given that there is few people really contributing to the development of Moinmoin, I would say it is better not to keep too much compatibility backwards. -- PeterGurk
MoinMoin appears to be one of the more popular wikis-- any notion of how many installs there are on RHEL4 / CentOS4? If 2.3 compatibility does go away then perhaps it would be beneficial to provide a how-to to a) install the needed Python pieces to /usr/local/ or /opt, and b) run MoinMoin against the alternate Python installation. -- Siemster
I have a Centos4 server running with a moinmoin installation. But EPEL (one of the primary sources for RHEL/Centos Packages) is still at version 1.5.9-1. I think it's OK to make python 2.4 mandatory for moinmoin starting in 2009. Centos 4 users are a very conservative when it comes to new versions anyway and will stick to an older version anyway. JensKuehnel
I have a CentOS 4 server running with MoinMoin. I would not mind if newer versions require a higher Python version. Though I would appreciate if there was a version which is compatible and still receives security updates until 2010 or so. RobertSchouwenburg
The problem with some longer support for some 2.3 compatible version is which.
- 1.8 is still 2.3 compatible - but do you run 1.8 on centos4?
Yes, I do - RobertSchouwenburg
- 1.9 is planned to be maybe the last 2.3 compatible release - but it will be based on WSGI and WSGI is rather new technology (does centos 4 for example have apache2/mod_wsgi?). Flup might support running moin wsgi with fastcgi and python 2.3 maybe.
- No, mod_wsgi is not part of CentOS 4. This would make 1.8 the natural cut-off point for most CentOS/RHEL 4 users.
- 1.8 is still 2.3 compatible - but do you run 1.8 on centos4?
I don't think it's too unreasonable to require a later version of Python. Especially something more recent than Python 2.3. The Internet is a fast-moving world, and it seems from the above list that every platform offers an easy path to upgrading to later versions. - RickVanderveer
I'd say go for it. 2.4 is available on all the versions I use and know. Personally I'd even say go for 2.5 -- but that's probably quite impractical for the majority of users. +1 for 2.4 -- MartinMarcher