This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] Suggestion: drop python 2.3 support for xen-3.5

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] Suggestion: drop python 2.3 support for xen-3.5
From: Andreas Florath <xen@xxxxxxxxxxxx>
Date: Tue, 18 Aug 2009 19:47:14 +0200
Delivery-date: Tue, 18 Aug 2009 12:47:16 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla-Thunderbird (X11/20090707)

I suggest dropping python 2.3 support for xen-3.5.

Major Reason:
o Functionality / Libraries are missing:
  Example: for a new feature I'm working on a 'working' base64
  encoding and decoding is needed.  The one which comes with
  python 2.3 is not usable.  There is the possibility to copy
  over the 2.4ff implementation into the Xen source tree or
  to implement this functionality (again).  IMHO both ways
  are not sensible.

Additional minor ones:
o Syntactic sugar is missing; e.g.:
  @staticmethod must be expressed by
  'function_name = staticmethod(function_name)'
  The first makes the code more readable.
o 'try: except: finally:' construct is missing in python 2.3
  This can be rewritten using 'try: { try: except: } finally:' but this is
  not really nice.

o Only very old distributions use python versions less than 2.4.
  And IMHO those old versions will never update to xen-3.5.  Typically
  the enterprise distributions (like RHEL or SLES) will stay at the
  same (major) version for each package during the life cycle of the
  distribution's release.
  [For me it looks that only a very few people running old systems with
  xen-3.5. I exchanged some EMails with Isaku Yamahata and
  KUWAMURA Shin'ya (from FUJITSU) - and even those told me that they
  are planing to update in near future or even started to update.]

I read an earlier discussion about this [1], but things are getting more
difficult to use only python 2.3 functionality...

Additionally it makes sense (and IMHO it is important) to have a kind
of roadmap which python version is supported in which release of Xen.
At some point it must be decided, how to deal with python 3. AFAIK
there is a smooth migration path to 3.X from 2.6 only - not
from 2.4 or 2.5

So a support matrix might look like:

Xen | Supported Python Versions
3.4 | 2.3 2.4 2.5 2.6
3.5 | 2.4 2.5 2.6
3.6 | 2.5 2.6
3.7 | 2.6 3.1
4.0 | 3.1 3.2

(Of course starting with Xen 3.6 this is only for illustration.)

Kind regards


[1] http://lists.xensource.com/archives/html/xen-devel/2009-05/msg01331.html

Xen-devel mailing list