3192
Comment:
|
3910
|
Deletions are marked like this. | Additions are marked like this. |
Line 41: | Line 41: |
* 2010-06-25: Played with bytes strings conversion to get the revlog read. Figured out that bytes != str is a major source of headaches. Sent status update to the ML. ---- * 2010-06-28: Read the responses in the ML, discussed in IRC with some people on how to proceed. Started writing a 2to3 fixer to convert strings to bytes ("..." to b"..."). Removed some other DeprecationWarnings. To be honest, I believe the ones that are still left can't be helped (for the buffer warning I'm using the fake buffer defined in util.py). * 2010-06-29: Got the first version of the fixer working. Wrote a custo hg2to3.py script to wrap lib2to3. Have to improve the script to not convert docstrings and other unrelated stuff. |
Renato Cunha
Contact
Blog: http://valedotrovao.com
Email: <renato AT SPAMFREE renatocunha DOT com>
Homepage: http://renatocunha.com
IRC: trovao @ irc.freenode.net
About me
Currently pursuing a master's degree in Computer Science. Have been working with python for about four years, mostly in hobby projects. Have become a mercurial user at the end of 2009.
I also have some experience with Open Source software development, gained by contributing code and documentation patches to some projects I use and by working on dropline GNOME.
Idea for GSoC 2010
My application's text is located at http://bitbucket.org/trovao/gsoc-2010/src/tip/application.rst.
Implementation status
First of all, my patch queue is located at http://bitbucket.org/trovao/hg-py3k-patches and its corresponding feed is located at http://bitbucket.org/trovao/hg-py3k-patches/rss.
As of 2010-06-08 I've ported the core C modules to python 3. The decisions taken when porting it were based on the idea that hg operates on bytes, and, thus, the new modules operate on and return bytes objects.
Journal (status updates - dates in ISO format)
- 2010-06-14: Using 2to3 and some hand-editing, I managed to get "hg version" running in py3k. Need to recheck the generated patch and find a strategy to solve those trouble spots.
2010-06-15: Attended to GSoC meeting @ #mercurial; submitted some documentation improvements to py3k (http://bugs.python.org/issue9001 & http://bugs.python.org/issue9002).
- 2010-06-16: Worked on inotify extension py3k port. Figured out I may be developing RSI. :/
- 2010-06-17: Continued working on the inotify extension.
2010-06-18: Finished work on itotify's C extension and shelved it until 1.6 is released. Took a look at other projects' approaches in py3k porting (sqlalchemy & django)
2010-06-19: -- Weekend (even though I tried to work, it didn't quite work as expected) --
- 2010-06-20: -- Weekend (haven't even tried) --
- 2010-06-21: Wondered on how to help solving bugs for the upcoming 1.6 release. Been distracted all day trying to focus on writing a document to describe my approach to handle the "bytes vs. unicode" problem.
- 2010-06-22: Attended to GSoC meeting @ #mercurial;
2010-06-23: Implemented fixes to some py3k incompatibilities. Namely: tuple argument unpacking in churn.py and convert.py, removed the usage of the reduce function in the record extension, specifically defined an int division as such in revlog.py. More to come...
2010-06-24: Reviewed issue 2130 (I suppose it needs crew intervention) & helped some people at #mercurial. Got hg version to run without the need of HGPLAIN.
- 2010-06-25: Played with bytes strings conversion to get the revlog read. Figured out that bytes != str is a major source of headaches. Sent status update to the ML.
2010-06-28: Read the responses in the ML, discussed in IRC with some people on how to proceed. Started writing a 2to3 fixer to convert strings to bytes ("..." to b"..."). Removed some other DeprecationWarnings. To be honest, I believe the ones that are still left can't be helped (for the buffer warning I'm using the fake buffer defined in util.py).
- 2010-06-29: Got the first version of the fixer working. Wrote a custo hg2to3.py script to wrap lib2to3. Have to improve the script to not convert docstrings and other unrelated stuff.