PHP RFC: Policy Repository
- Version: 0.9
- Date: 2023-12-04
- Author: Derick Rethans derick@php.net
- Status: Implemented
- First Published at: http://wiki.php.net/rfc/policy-repository
Introduction
Currently, policies in regard to RFC Voting, the Release Process, security classification, and naming guidelines are all recorded in different places. In RFCs, through amending RFCs (think “Abolish Short Votes”), etc. This makes it sometimes hard to find out what is expected, and how things are supposed to be.
Proposal
This proposal suggests to set up a new Git repository to collect all the policies that we have.
Similarly, the canonical security classification will move from https://github.com/php/php-src/blob/master/SECURITY.md to the new repository, with the former only explaining how to file security issues instead.
To amend a policy a Pull Request must be raised against this repository. An RFC with considerations and arguments, as we have for all changes, are then created to approve the Pull Request. The text of the policy change rests solely in the Pull Request, with the RFC providing explanatory notes.
Changes to the policy repository should only be made through a new RFC, unless it is for fixing spelling mistakes or grammar.
Proposed PHP Version(s)
As this is not for a specific PHP version, it is not targeting one either.
Backwards Compatibility Breaks
None in code, but PHP RFC: Release cycle update needs to be partially redone to work with this new policy repository.
Future Scope
Once (and if) this RFC is accepted, a first new step would be to rephrase the text so that it reads like a policy document, instead of an RFC. The wording is currently exactly as in the used RFCs, without modification.
Integrate https://github.com/php/php-src/blob/master/CODING_STANDARDS.md into the coding-standards policy file.
Both of these will be implemented through a separate PR to the policy repository. After comment integration, an RFC will be created to confirm these changes.
Voting Choices
2/3rds majority required. Voting runs until January 22nd, 2024, 08:00 UTC.
Patches and Tests
A preliminary repository has been set up at https://github.com/php/policies
It currently contains information from the following documents:
Releases and Security
- Release Process: https://wiki.php.net/rfc/releaseprocess
- Security Issue Classification: https://wiki.php.net/rfc/security-classification
RFC Votes
- Voting on PHP features: https://wiki.php.net/rfc/voting
- Abolish Short Votes: https://wiki.php.net/rfc/abolish-short-votes
- Abolish Narrow Margins: https://wiki.php.net/rfc/abolish-narrow-margins
Support Timelines
- PHP 5 Support Timeline: https://wiki.php.net/rfc/php56timeline
- Define PHP 5.3 End of Life: https://wiki.php.net/rfc/php53eol
- Name of Next Release of PHP: https://wiki.php.net/rfc/php6
- PHP 7.0 timeline: https://wiki.php.net/rfc/php7timeline
- Cleaning Up Unmaintained Extensions: https://wiki.php.net/rfc/umaintained_extensions
Naming Things
- Namespaces in bundled PHP extensions: https://wiki.php.net/rfc/namespaces_in_bundled_extensions
- Class Naming: https://wiki.php.net/rfc/class-naming
References
Links to external references, discussions or RFCs