Revision 4 as of 2009-03-19 17:58:29

Clear message

Drop new project ideas here, make sure to include a list of skills that'd be needed (C, Java, OpenGL, WSGI, etc) and a link to a mentor's contact info who can field questions about the project. Sign with your own email address (if different) in case you need to be contacted.

In most cases we'll add it to the list within an hour. We've made this page to avoid edit conflicts and because some people have had trouble editing the large table on the main ideas page.

Overhaul struct + PEP 3118

There are many open issues for the struct module, and a suggestion that many others fixes should happen. The problems include inconsistencies in input handling and backwards-compatibility code that should be gone from 3.x.

As PEP 3118 also requires a few changes in struct, finishing the memoryview object implementation and backporting it to 2.7 could be part of this project.

To tackle this, a student should know C and have some familiarity with the CPython codebase. The proposal should include an overview of open issues and, if possible, of problems in current code.

Mentors for this task should have a good understanding of the struct module, the buffer interface and PEP 3118.

Mentor Needed

Clean up and improve the socket module

The socket module is the foundation of many important parts of the stdlib. It has many open issues and RFEs, with many more being indirectly dependent on it. Major pain areas are cross-platform problems, shortcomings for a few use cases and some missing bits from the API (e.g. recvall(), sendmsg() and recvmsg()). If these can be solved quickly, going through the uses of the socket module in the stdlib to would make this project even more useful.

This project has some ugly cross-platform needs, but these can be handled by the student and the mentor together (maybe snakebite could help?). For students wanting to work on this, knowing C is a must, being familiar with CPython and the stdlib would be desirable. Having some prior knowledge of POSIX and Windows interfaces the socket module uses would be a nice perk.

Mentors should be able to help the student to test their code on many different platforms. Knowing the socket API in different platforms would be desirable.

Mentor Needed


Unable to edit the page? See the FrontPage for instructions.