thekid/rfc — Issue #186: RFC 0186: Drop sapi feature alltogether
Author: thekid
Created: 2011-10-09 15:40:13+00:00
State: open
Labels: draft, rfc

Scope of Change
====
The "sapi" feature will be dropped from the XP framework completely.

Rationale
====
The sapi feature was initially introduced to offer a way to extend the
XP framework's core code, provided by "lang.base.php", in a manner similar
to that file, eg. without having to encapsulate that code in a class.

Now, we think code should always be loaded as a class, which bring several
features like having an associated classloader.

Functionality
====
Functionality provided by one of the XP framework's sapi files will be
migrated to be provided by regular classes, preferrably backwards compatible.

Currently available sapis
----
* cgi
The cgi sapi will be migrated so its functionality is provided by the
scriptlet API, if required.

* cli
The cli sapi will be provided by the `xp` and `xpcli` executors.

* class
The class sapi has been deprecated by the `xpcli` executor and will be
dropped.

* synchronized
This sapi will be dropped, as there is no program reported to use it.

* strict
Functionality of the "strict" sapi has been incorporated in standard
XP unittest, by checking for an "unclean error stack". This sapi will
therefore be dropped.

Security considerations
====
n/a

Speed impact
====
n/a

Dependencies
====
- Deprecation in XP 5.8.0, removal in 5.9.0

Related documents
====

Comments
====