|
From: Ariane P. <ari...@gm...> - 2008-06-09 08:50:42
|
Hello, I am posting here on the Jython mailing list as my GSoC project is to make TurboGears 2 run on Jython and includes many different components. The TurboGears project has a different approach of status reports, which are not public, but Frank Wierzbicki asked me to post here on the list, so that the Jython community will be kept up to date, and I think that it is a good way for getting suggestions and new ideas. My mentor Philip Jenvey is a Jython developer and therefore it is a good place to post here on the list :) - btw TG2 should work on Jython at the end anyway... In the past week I have been working on two big packages: genshi - http://genshi.edgewall.org/ and paver - http://www.blueskyonmars.com/projects/paver/ I was also working on other parts, doing unittests and looking for improvements, e.g. the jython mako branch, which offers an _ast implementation and is a good example for future work on genshi (parsing code into AST), and also Pylons which is working on Jython now, but still needs some further improvements. Having a look at the unittest of those packages introduced a nice side effect - for example nose passes now all of its 260 tests on Jython and Jython is getting better from day to day. Here is a last unittest fix for nose: http://groups.google.com/group/nose-dev/browse_thread/thread/1835681dcf5964db formencode, which is used by twforms, depends on nose. The TurboGears developers have switched from setuptools to paver on tg2 trunk. As far as I know there is also the possibility that the TurboGears developers will adopt paver for all other packages developed by them instead of setuptools. I have been working on paver, using the 0.8 release, but will contact the paver developer and try to merge the fixes into upstream. Paver builds and installs now on Jython without failures and also many unittests pass and I will do additional work on them. I had to change a small part of the distutils on Jython trunk and I think that I will try to port a newer version, which has the missing features, to Jython. TurboGears 2 trunk uses paver-minilib.zip, which is subset of paver and is fully functional now on Jython. The work that I did for genshi is at the moment a big construction, because I had to look at xml.parsers.expat to know how the genshi code will behave and also to look at xml.sax to find the appropriate parts for rewriting the code. Some parts with xml.sax are at the moment just code snippets for testing. Having already collected more experience with both XML parsers will ease the coding later on. xml.parsers.expat is not only used by genshi and not available on Jython, but also used by: -babel -twforms, which depends on formencode -formencode -formencode in elementtree mode -elementtree -kid, used by turbokid -and others Porting genshi's expat to sax will make also the porting of other parts faster. Next week, I will work on: - finishing unittest fixes for simplejson, used by turbojson - finishing paver, fixes for unittest - trying to get paver changes upstream - implement some missing Python lib features for Jython (paver) - including / porting missing parts of distutils - completing the rewritement of xml.sax genshi parser - see for possibilities to include the new genshi parser code upstream (maybe genshi branch on their svn) - start to work on AST via compiler / parser module -> a good example is the mako Jython branch Ariane Paola -- Ariane Paola Gomes GPG key: F20E69CC Fingerprint: 506B DFFE 34A4 AA0B 4157 61D8 6D1B D69E F20E 69CC |