Breaking: #70056 - Http-related options and HttpRequest class removed¶
See forge#70056
Description¶
The following PHP classes have been removed:
\TYPO3\
CMS\ Core\ Http\ Http Request \TYPO3\
CMS\ Core\ Http\ Observer\ Download
The following configuration options have been removed:
$GLOBALS
[TYPO3_ CONF_ VARS] [SYS] [curl Use] $GLOBALS
[TYPO3_ CONF_ VARS] [SYS] [curl Proxy NTLM] $GLOBALS
[TYPO3_ CONF_ VARS] [SYS] [curl Proxy Server] $GLOBALS
[TYPO3_ CONF_ VARS] [SYS] [curl Proxy Tunnel] $GLOBALS
[TYPO3_ CONF_ VARS] [SYS] [curl Proxy User Pass] $GLOBALS
[TYPO3_ CONF_ VARS] [SYS] [curl Timeout] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [adapter] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [protocol_ version] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [follow_ redirects] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [max_ redirects] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [strict_ redirects] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [proxy_ host] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [proxy_ port] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [proxy_ user] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [proxy_ password] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [proxy_ auth_ scheme] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [ssl_ verify_ peer] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [ssl_ verify_ host] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [ssl_ cafile] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [ssl_ capath] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [ssl_ local_ cert] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [ssl_ passphrase] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [user Agent]
The following properties have been renamed:
$GLOBALS
is now called[TYPO3_ CONF_ VARS] [HTTP] [user Agent] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [headers] [User- Agent] $GLOBALS
is now called[TYPO3_ CONF_ VARS] [HTTP] [protocol_ version] $GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [version] - All proxy-related options are unified within
$GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [proxy] - All redirect-related options (HTTP/follow_redirects, HTTP/max_redirects, HTTP/strict_redirects) are unified within
$GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [allow_ redirects] - All options related to SSL private keys (HTTP/ssl_local_cert, HTTP/ssl_passphrase) are merged into
$GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [ssl_ key] - All options related to verify SSL peers are merged into
$GLOBALS
[TYPO3_ CONF_ VARS] [HTTP] [verify]
Additionally, the dependency to the PEAR Package "Http_Request2" (composer package name pear/
) has
been removed in favor of the PHP library Guzzle.
Impact¶
Calling the mentioned classes above will result in a fatal PHP error.
Using the options in custom PHP code will result in unexpected behavior as the options are non-existent and empty.
Using PHP code that depends on the removed PEAR library "Http_Request2" will result in unexpected behaviour and possibly a fatal PHP error.
Affected Installations¶
All 3rd party extensions calling the mentioned classes directly or using the configuration options directly, as well as installations depending on the PEAR library "Http_Request2".
Migration¶
For PHP code previously using the Http
and Download
classes a new object-oriented PSR-7-based approach is
introduced, see the Guzzle Feature integration documentation for more details. A new PHP class
TYPO3\
which generates PSR-7 compliant request objects helps in simplifying the
migration process.
All still necessary options will be migrated to new options within $GLOBALS
when the install tool is run.
In special cases, the options $GLOBALS
, $GLOBALS
and $GLOBALS
need to migrated manually to the newly available options.