Python 3.x Porting

Ideas and Working plan : http://etherpad.osuosl.org/uzd2ntrTl5

Python3 support of our dependencies

Dependency

Python3 support

Pygments

yes

blinker

yes

docutils

yes

markdown

yes

pytest

yes

sphinx

yes

whoosh

yes

Babel

babel-py3k? babel3?

Jinja2

yes (now using same source, not 2to3)

Flask

not yet, maybe easy (depends on werkzeug, see flask sprint branch)

Werkzeug

not yet, difficult (see werkzeug sprint branch)

flatland

unknown

Emeraldtree

Ported to Python 3.3 with backward compatibility just testing is needed Python 2.7 >= 3.3

xstatic*

unknown (but small, so no problem)

Extras

Python3 support

sqlalchemy

yes

PIL

no (yes for pillow >= 2.0.0!)

python-ldap

see https://github.com/broiledmeat/python3-ldap

python-openid

see https://github.com/necaris/python3-openid

See also: https://python3wos.appspot.com/ and http://py3ksupport.appspot.com/ , moin_python3

The above list has some modules already been ported to python 3. But there are some important modules still left to be ported so that to prepare the prerequisite modules to be ported to python 3 that helps run moin2.

Work Schedule

Date

Work

8/04/13-10/04/13

moin2 test to port to python 3.3.1 with backwardth compatibility with python 2.7

11/04/13-12/04/13

understanding emeraldtree codebase port emeraldtree test to python 3.3.1 with backwardth compatiblity with python 2.7

12/04/13-14/04/13

Academic Project demo and Project Report submission for Semester 8th

15/04/13

Academic Project Demo , Viva and Presentation

16/04/13

Comprehensive viva , Worked on understanding the codebase of MOin2 and mailed BastianBlank for Emeraldtree Porting Planning

17/04/13

Ported Emerlad Tree to Python 3.x , Cleaned the Errors of the all the test cases of Moin2

18/04/13

Attended Brother's Marriage

19/04/13

Worked on six Module for Porting and saw some basic changes

20/04/13

Came to my Hometown and watched some videos of Programming Paradigm

21/04/13

Worked on Comments on code reviews and Fixed them

22/04/13

Cleaned up the error that came due to html_entities unable to import in Python 3.3, Saw Emerald Tree changeset python 2.7 >= 3.3 support

23/04/13

Cleaned up the Moin2 test and made it compatible python 2.7 >= 3.3 see codereview

24/04/13

Studied six module more to find the changes to be done over the comments after codereview , some new blog posts , Programming Paradigm

25/04/13

Python 3.x porting redux helped me (http://lucumr.pocoo.org/2013/5/21/porting-to-python-3-redux/), so that how porting would be carried on at Moin2.0

26/04/13

Again run and tested the Moin2.0 over my system , found out the errors , studied python docs about porting , PEP 414

27/04/13

The best choice of Porting is using six module. This module best support python 2.7 and python 3.3. This module has pointed out the general methods and Objects that could behave same in py2 and py3

Six Documentation

Porting Moin2 test cases to Python 3.x

code reviews: . https://codereview.appspot.com/9027045/; . https://codereview.appspot.com/9478044/; . https://codereview.appspot.com/9695043/;

Porting Emeraldtree test cases and Module to Python 3.x

code reviews: . https://codereview.appspot.com/9491043/; . https://codereview.appspot.com/9645043/ (this review not needed already ported) ;

MoinMoin: ChitrankDixit/python3porting (last edited 2013-05-27 05:22:09 by ChitrankDixit)