PHP RFC: Policy Repository


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.


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.

Do we want all the policies in one place in a Git repository?
Real name yes no
alcaeus (alcaeus)  
ashnazg (ashnazg)  
beberlei (beberlei)  
bukka (bukka)  
crell (crell)  
derick (derick)  
devnexen (devnexen)  
geekcom (geekcom)  
girgias (girgias)  
heiglandreas (heiglandreas)  
ilutov (ilutov)  
jimw (jimw)  
kocsismate (kocsismate)  
marandall (marandall)  
mbeccati (mbeccati)  
nicolasgrekas (nicolasgrekas)  
nielsdos (nielsdos)  
petk (petk)  
pierrick (pierrick)  
ramsey (ramsey)  
saki (saki)  
santiagolizardo (santiagolizardo)  
sebastian (sebastian)  
sergey (sergey)  
stas (stas)  
svpernova09 (svpernova09)  
theodorejb (theodorejb)  
thorstenr (thorstenr)  
timwolla (timwolla)  
trowski (trowski)  
weierophinney (weierophinney)  
Final result: 31 0
This poll has been closed.

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

RFC Votes

Support Timelines

Naming Things


Links to external references, discussions or RFCs

rfc/policy-repository.txt · Last modified: 2024/01/30 17:36 by derick