User:APaskulin (WMF)/Development policies
Development policies
edit{{Development policy}}
Development policies define standards of practice for developing and maintaining Wikimedia software. In contrast to development guidelines, policies describe what developers must do, while guidelines describe what developers generally should do. There can be no deviations from policies, while minor deviations from guidelines, like coding conventions, can often be allowed based on individual circumstances.
Scope
editThe scope of development policies includes all official software that serves Wikimedia users, including MediaWiki core, MediaWiki skins and extensions, official mobile apps, services, and other software running in production.[1]
Policies regarding documentation targeted at developers are in scope, including policies regarding source code documentation as well as documentation of system design. Documentation aimed at wiki users or wiki owners is not in scope.
The scope also does not include developer tools, software running on Wikimedia Cloud Services, or other non-production technologies. Nor does its scope include hardware, team practices, codes of conduct, or other social factors.
Development policies
editTitle | Subject | Status |
---|---|---|
Development policies | Creating and maintaining development policies | Active |
Wikimedia services policy | Developing and deploying services | Active |
Wikimedia Engineering Architecture Principles | Principles and requirements for all Wikimedia engineering projects | Active |
Support policy for PHP | Process for changes to PHP support in MediaWiki core and components | Active |
Stable interface policy | Process for defining the parts of MediaWiki core that are considered stable for use by other components | Active |
MediaWiki database policy | Requirements for MediaWiki database queries and schema changes | Active |
Gerrit/Privilege policy | Gerrit rights and responsibilities for MediaWiki core and components | Active |
Status
editA policy can have one of these statuses:
- Active
- Official policy in effect
- Proposed
- New policy in review
- Draft
- Work-in-progress policy
- Deprecated
- Inactive policy
- Superseded
- Inactive policy replaced by another policy
Questions
editTo ask a question about a policy, leave a comment on the policy’s talk page.
Minor edits
editAnyone can make minor edits to a policy to improve formatting, grammar, or clarity.
Changes and new policies
editTo propose a new policy or a change to an active policy, create a Phabricator task following the technical decision making process. Anyone can propose a policy change. Once finalized, policy changes must be announced through the wikitech-l mailing list.
Communications
editTo be notified about proposed policies and proposed changes to policies, follow #Development policies on Phabricator. To be notified about finalized changes and new policies, subscribe to the wikitech-l mailing list.
{{Development guidelines navigation}}