Last updated December 10, 2012.
The following criteria are used by core developers in reviewing and approving proposed changes to Drupal core:
- The changes support and enhance Drupal project aims.
- The proposed changes are current. New features should be filed against the most recent development version. Currently, Drupal 8 is open for new features. In keeping with Drupal's approach to backwards compatibility, new features are not candidates for backporting to stable releases.
Bug fixes are applied to newer versions first, and then may be backported to currently supported releases.
When submitting patches, it's best to write your patch for the appropriate branch. There may have been significant changes since the last release, so developing for the latest version means that your patch will be easiest to apply and merge in, and thus more likely to be used.
- The proposed change doesn't introduce any significant issues or risks. Specifically, issues that have been raised in the review process have been satisfactorily addressed.
- The changes are well coded. This means coding in accordance with the Drupal coding standards and the coding is intelligent and compact. Elegant solutions will have greater support than cumbersome ones that accomplish the same result.
- There is demonstrated demand and support for the change. Demand is indicated by comments on the drupal.org issues system or comments in forums or the drupal-dev email list.
- The change will be used by a substantial part of the installed Drupal base as opposed being relevant only to a small subset of Drupal users.
- The benefits of the change justify additional code and resources. Every addition to the code base increases the quantity of code that must be actively maintained, e.g., updated to reflect new design changes or documentation approaches. Also, added code increases the overall Drupal footprint through added procedure calls or database queries. Benefits of a change must outweigh these costs.