Contributing to Python
Welcome! This page contains instructions for prospective OPW and Google Summer of Code interns, as well as anyone else interested in contributing to Python.
Part 1: environment setup
Goal #1: install an IRC client
IRC is a real-time chat protocol that open source projects often use to talk about the project and as a medium for users and developers to help each other.
Please follow the instructions below for your operating system to install IRC and join the #pyladies IRC channel on Freenode:
Many of the tools of open source development are primarily used via the command line. Let's get some practice with navigating the computer from the command line.
Goal #3: Get familiar with the Python bug tracker
Python tracks bugs and features at http://bugs.python.org/.
First, please create an account on http://bugs.python.org/.
Next, please familiarize yourself with how Python uses its bug tracker by exploring and finding answers to the following questions:
- What is the oldest open Python ticket?
- How many open issues need a patch?
- How many "critical"-level open issues are there?
Goal #4: practice using version control
Mercurial is the distributed version control system Python uses to manages changes to its code.
If you have not used Mercurial before, please go through this tutorial: http://hginit.com/
Goal #5: practice creating patches
Code changes are represented in a concise and standard format called a "diff". patch is a utility which applies a "diff" to someone else's copy of the code.
If you have not used diff and patch before, please go through the diff and patch training mission at:
Part II: contributing to Python
Goal #1: join the mailing list
Join the Python core-mentorship mailing list and introduce yourself: https://mail.python.org/mailman/listinfo/core-mentorship.
Goal #2: read the developer guide
Read the Python developer guide: http://docs.python.org/devguide/
Goal #3: submit a Python patch
Submit a patch for a Python bug.
Goal #4: start working on your application
Let the core mentorship mailing list know that you've submitted your patch and are ready to work on your application. We'll craft an application together for a project that fits your background and interests and what you want to learn this summer!