How to become a core developer

What it takes

When you have consistently contributed patches which meet quality standards without requiring extensive rewrites prior to being committed, you may qualify for commit privileges and become a core developer of Python. You must also work well with other core developers (and people in general) as you become an ambassador for the Python project.

Typically a core developer will offer you the chance to gain commit privilege. The person making the offer will become your mentor and watch your commits for a while to make sure you understand the development process. If other core developers agree that you should gain commit privileges you are then extended an official offer. How core developers come to that agreement are outlined in PEP 13.

Gaining commit privileges

After a candidate has demonstrated consistent contributions, commit privileges are granted through these steps:

  1. A core developer (submitter, usually the mentor) starts a poll in the Committers category on the Python Discourse.

    • open for 7 days

    • results shown upon close

  2. If the candidate receives at least two-thirds positive votes when the poll closes (as per PEP 13), the submitter emails the steering council with the candidate’s email address requesting that the council either accept or reject the proposed membership.

  3. Assuming the steering council does not object, a member of the council or delegate (approver) will email the candidate:

  4. Once the candidate has provided the pertinent details, the approver will:

    • Enable the various new privileges.

    • Remove the new committer from the triage team, if applicable.

    • Add their details to 🔒 python/voters.

    • Update the devguide to publicly list their team membership at Developer log.

    • Post an announcement in the Committers Discourse category. The past few announcements were in the form of a separate post on the already open topic with the poll.