Python Implementations - Development

Development

Python's development is conducted largely through the Python Enhancement Proposal (PEP) process. The PEP process is the primary mechanism for proposing major new features, for collecting community input on an issue, and for documenting the design decisions that have gone into Python. Outstanding PEPs are reviewed and commented upon by the Python community and by Van Rossum, the Python project's Benevolent Dictator for Life (leader / language architect).

Enhancement of the language goes along with development of the CPython reference implementation. The mailing list python-dev is the primary forum for discussion about the language's development; specific issues are discussed in the Roundup bug tracker maintained at python.org. Development takes place on a self-hosted source code repository running Mercurial.

CPython's public releases come in three types, distinguished by which part of the version number is incremented:

  • Backwards-incompatible versions, where code is expected to break and must be manually ported. The first part of the version number is incremented. These releases happen infrequently—for example, version 3.0 was released 8 years after 2.0.
  • Major or "feature" releases, which are largely compatible but introduce new features. The second part of the version number is incremented. These releases are scheduled to occur roughly every 18 months, and each major version is supported by bugfixes for several years after its release.
  • Bugfix releases, which introduce no new features but fix bugs. The third and final part of the version number is incremented. These releases are made whenever a sufficient number of bugs have been fixed upstream since the last release, or roughly every 3 months. Security vulnerabilities are also patched in bugfix releases.

A number of alpha, beta, and release-candidates are also released as previews and for testing before the final release is made. Although there is a rough schedule for each release, this is often pushed back if the code is not ready. The development team monitor the state of the code by running the large unit test suite during development, and using the BuildBot continuous integration system.

The community of Python developers has also contributed over 25,000 software modules to the Python Package Index (called pypi), the official repository of third-party libraries for python.

The major academic conference on Python is named PyCon. There are special mentoring programmes like the Pyladies.

Read more about this topic:  Python Implementations

Famous quotes containing the word development:

    As a final instance of the force of limitations in the development of concentration, I must mention that beautiful creature, Helen Keller, whom I have known for these many years. I am filled with wonder of her knowledge, acquired because shut out from all distraction. If I could have been deaf, dumb, and blind I also might have arrived at something.
    Mark Twain [Samuel Langhorne Clemens] (1835–1910)

    Theories of child development and guidelines for parents are not cast in stone. They are constantly changing and adapting to new information and new pressures. There is no “right” way, just as there are no magic incantations that will always painlessly resolve a child’s problems.
    Lawrence Kutner (20th century)

    John B. Watson, the most influential child-rearing expert [of the 1920s], warned that doting mothers could retard the development of children,... Demonstrations of affection were therefore limited. “If you must, kiss them once on the forehead when they say goodnight. Shake hands with them in the morning.”
    Sylvia Ann Hewitt (20th century)