Python 3.4a1 released

Een paar dagen terug is de eerste alpha versie van python 3.4 aangekondigd.

Naast talloze kleinere en minder kleine verbeteringen en uitbreidingen is de PEP435 enum support wel het interessantst. Hiermee kunnen enums gedefinieerd worden zonder dat daarvoor syntactische aanpassingen aan de taal nodig zijn. Afleiden van de Enum base class is voldoende:

>>> from enum import Enum
>>> class Color(Enum):
...     red = 1
...     green = 2
...     blue = 3

(meer details en voorbeelden zijn te vinden in PEP435 en op de blog van Chris Barker)

Dit is inmiddels de vijfde "minor" release van Python 3, al zijn deze Python 3.minor releases zelden echt klein te noemen. Is Python 3 hiermee dan eindelijk klaar om gebruikt te worden voor uw nieuwe projecten?

Dat hangt er van af. Nog lang niet alle modules zijn beschikbaar voor Python 3, maar de lijst met ondersteunde packages groeit wel. Een aantal grote packages zoals Django, SQLAlchemy, buildout, Flask, requests, etc zijn inmiddels wel compatible met Python 3. Maar Python 2.7 is ook nog steeds een veilige keuze; deze versie zal nog steeds de komende jaren ondersteund blijven en updates krijgen.

Met name Django is verleidelijk - dit complexe framework is sinds versie 1.5 compatible, en 1.6 komt inmiddels ook aan, dus dat zou een veilige keuze moeten zijn?

Django is echter erg afhankelijk van (maar ook populair door) het uitgebreide ecosysteem van 3rd party packages, en veel van deze packages zijn nog niet Python 3 compatible.

Ons advies? Probeer nieuwe code compatible voor Python 3 te ontwikkelen, voor zover dat realistisch haalbaar is, maar deploy de hele applicatie nog op basis van Python 2.7.

 

 

 

Last updated 7 augustus 2013 14:25 | python release open source python3

Geen reakties

Post a comment:

captcha