Distutils/Extensions/DefendAgainstFruit

This wiki is in the process of being archived due to lack of usage and the resources necessary to serve it — predominately to bots, crawlers, and LLM companies. Edits are discouraged.
Pages are preserved as they were at the time of archival. For current information, please visit python.org.
If a change to this archive is absolutely needed, requests can be made via the infrastructure@python.org mailing list.

Vision

Defend Against Fruit is focused on providing a pragmatic, continuous deployment style build system for Python. Current Python build systems do not properly account for the needs of effective continuous deployment. This package extends the Python tooling to add the missing pieces.

With an eye to agile development principles and fast-feedback, we want a build system which satisfies the following goals:

  • Every SCM change-set committed should result in a potentially shippable release candidate.
  • When a defect is introduced, we want to immediately detect and isolate the offending SCM change-set. This is true even if the defect was introduced into a library we depend upon.
  • Library management should be so easy as to never impede code changes, even in multi-component architecture.

For in-depth documentation with lots of pretty diagrams, take a look at the wiki.

The majority of Defend Against Fruit has been co-developed by James Carpenter and Matthew Tardiff, but many others provided considerable assistance.

For more details, please see the Authors and Contributors wiki page.