PHP RFC: Removal of dead SAPIs
- Version: 0.5
- Date: 2014-01-24
- Author: Anatol Belski, ab@php.net
- Status: Abandoned is favour of https://wiki.php.net/rfc/removal_of_dead_sapis_and_exts
- First Published at: http://wiki.php.net/rfc/removal_of_dead_sapis
Introduction
Currently PHP contains many SAPIs to the servers either completely unavailable or unsupported for a long time. The corresponding list
Dead SAPIs:
- aolserver
- apache
- apache_hooks
- caudium
- continuity
- isapi
- milter
- phttpd
- pi3web
- roxen
- thttpd
- tux
- webjames
- apache2filter - not really dead, but currently broken
Maintained SAPIs:
- apache2handler
- cli
- cgi
- embed
- fpm
- litespeed
- nsapi
- phpdbg
Things required to be done for the final decisions:
- research the author names
- articulate the exact state of each dead SAPI
- articulate the exact state and availability of the corresponding server
- if possible and makes sense, check if the SAPIs compiles, even with very ancient but latest release of the server
- check if there are packages supported by distros
- notify the authors about a possible removal of the corresponding SAPI, wait for their response and include it for the final decision
This RFC crosses with https://wiki.php.net/rfc/size_t_and_int64 as removal of the dead SAPIs will exlude the need of their porting.
Proposal
Dead SAPIs should be removed.
Backward Incompatible Changes
As the dead SAPIs are already dead, no BC breach is expected.
Proposed PHP Version(s)
7
SAPIs Impacted
Dead SAPI list in the description.
Impact to Existing Extensions
None.
php.ini Defaults
php.ini will have to be checked to remove the unavailable config options, if any.
Open Issues
None.
Unaffected PHP Functionality
None.
Future Scope
Should an SAPI come back, the corresponding code is available in the git history.
Proposed Voting Choices
Remove dead SAPIs: yes/no
Patches and Tests
Links to any external patches and tests go here.
If there is no patch, make it clear who will create a patch, or whether a volunteer to help with implementation is needed.
Make it clear if the patch is intended to be the final patch, or is just a prototype.
Implementation
After the project is implemented, this section should contain
- the version(s) it was merged to
- a link to the git commit(s)
- a link to the PHP manual entry for the feature
References
Links to external references, discussions or RFCs
Rejected Features
Keep this updated with features that were discussed on the mail lists.