[pypy-dev] Stdlib porting

Carl Friedrich Bolz cfbolz at gmx.de
Wed Aug 6 20:57:36 CEST 2008

Hi Bruno (ccing pypy-dev)!

Bruno Gola wrote:
> After having some problems I finished PEP 328 and I'm starting to work
> on stdlib now.
> However, there is one test that's still failing and I can't fix it :(.
> It's in interpreter/test/test_nestedscope.py (lambda_in_genexpr), any
> hints?

No clue yet, will take a look.

> About the stdlib, do you have any suggestion about how/where to begin?
> I'm looking at http://docs.python.org/whatsnew/modules.html but it
> seems that most of the changes will not affect my work (as most of the
> modules are written in pure python).
> My plans initially are:
>  - copy the stdlib from CPython 2.5.2
>  - apply the changes from modified-2.4.1

Yes, exactly. You should add a new directory lib-python/2.5.2 and import
CPython's stdlib there. Then you need to carefully look at the changes
in modified-2.4.1 and check how they need to be applied to the relevant
2.5.2 module.

>  - rewrite any new module written in C*

This one has a much lower priority than getting the pure-Python modules
to a sensible state.

> * well, taking a better look, it seems that the new modules are
> wsgiref, xml.etree package, hashlib (all in python), ctypes and
> sqlite3 (in C, but it seems too that there are some work already done
> on those two modules, am I right?).

sqlite3 and ctypes should be done already. Some work on hashlib was
started, afair. It is in the lib dir, I think?

> Of course tests are in my plan as well.

They'd better be :-). I guess part of the porting work should really be
to check that the stdlib tests keep passing, which is quite important
because they also check the other 2.5 features that you implemented.

> Sorry for not being online on IRC today while working, I'm behind a
> proxy and it isn't a friendly proxy :-)

You know that you can use other ports to connect to freenode? I think
even 8000 works, which most procies let through.


Carl Friedrich

More information about the Pypy-dev mailing list