CPython is the default, most widely used implementation of the Python programming language. It is mostly written in C, most of the modules are written in Python itself. In case you want to make the changes which will be used by all the Python programmers worldwide, this is the project to work for.
One can contact the core developers over IRC or using mailing lists. #python-dev (on freenode) is the channel for core developers, the core mentorship mailing list is the place to an email discussion. Remember that the developers are may not be in your timezone, so it might take time to get a reply from anyone.
Getting StartedThe best place to get started is the devguide. You will find all the instructions required to build your own CPython. Before contacting the mentors, it is better you start solving few bugs first.
IdeasWe're still waiting to find out which mentors are available for Core Python/CPython projects. In the meantime, you can discuss ideas on the core mentorship mailing list.
1. bugs.python.org improvementsProject description: The goal of this project is to improve the bug tracker used by CPython.
Skills: Python, HTML/CSS/JS, Roundup, DVCS.
Difficulty level: Intermediate.
Related Readings/Links: The details are still being discussed on the core-workflow ML.
Potential mentors: Ezio Melotti.
There are several different tasks that can be tackled.
Some features previously discussed on this ML and summarized at https://wiki.python.org/moin/TrackerDevelopmentPlanning
Some other miscellaneous features listed at https://wiki.python.org/moin/DesiredTrackerFeatures
Integration with BitBucket (and possibly GitHub) pull requests (might use https://pypi.python.org/pypi/vcs)
Mercurial extension to simplify tracker interaction (e.g. upload patches automatically, might be based on https://bitbucket.org/ncoghlan/cpydev/src/default/cpyhg.py?at=default - might be similar to https://github.com/openstack-infra/git-review)
Students can select a substantial subset of these tasks for their proposal. The actual tasks and the order can be discussed with the mentor.
2. Add a REST API to RoundupProject description: The goal of this project is to add a REST API to Roundup
Skills: Python, basic HTML/JS skills.
Difficulty level: Intermediate.
Related Readings/Links: http://issues.roundup-tracker.org/issue2550734 http://sourceforge.net/p/roundup/mailman/message/33589328/
Potential mentors: Hieu Nguyen.
For this project the student will design and develop a REST API for bugs.python.org. Even though this project is initially aimed to bugs.python.org, the plan is to eventually contribute the code upstream. This is what the student is expect to do during the project:
design the REST API (see also https://mail.python.org/pipermail/core-workflow/2015-March/000142.html)
implement it in our Roundup clone (https://hg.python.org/tracker/roundup/)
develop some basic tool that uses the API (improved stats page, dashboard)
Project description: The goal of this project is to improve the CPython test suite by using more unittest features.
Skills: Python, unittest.
Difficulty level: Intermediate.
Related Readings/Links: http://bugs.python.org/issue10967, https://hg.python.org/cpython/file/default/Lib/test/regrtest.py
Potential mentors: No mentor (you can put together a proposal and ask for one on the core mentorship ML).
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4