X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=http.md;h=d5924f1df943b20e156816a9e273fb20102b3935;hb=263db0c682de276ab6d4c9bacb57ed5ca3ec374a;hp=22fbc93cb2c7d67d6a5317bb7d5eb9a98bde37c3;hpb=49b76c67f90dc0a371e492836b30fefa13979e9d;p=mdref%2Fmdref-http diff --git a/http.md b/http.md index 22fbc93..d5924f1 100644 --- a/http.md +++ b/http.md @@ -1,7 +1,5 @@ # pecl/http v2 -> **Note:** This documentation is work-in-progress. - ## About: Extended HTTP support. Again. @@ -9,7 +7,6 @@ Extended HTTP support. Again. * Introduces the http namespace. * PHP stream based message bodies. * Encapsulated env request/response. -* Versatile error handling. * Modular client support. ## Installation: @@ -20,6 +17,50 @@ This extension is hosted at [PECL](http://pecl.php.net) and can be installed wit ## Dependencies: +pecl/http depends on a number of system libraries and PHP extensions for special features. + +#### Required system libraries: + +The following system libraries are required to build this extension: + +=zlib= + Provides gzip/zlib/deflate encoding. + Minimum version: 1.2.0.4 + Install on Debian: `apt-get install zlib1g-dev` + + +#### Optional system libraries: + +The following system libraries are optional and provide additional features: + +=libidn= + Provides IDNA support in URLs. + Minimum version: none + Install on Debian: `apt-get install libidn11-dev` + +=libidn2= + Provides IDNA support in URLs (fallback if libidn is not available). + Minimum version: none + Install on Debian: `apt-get install libidn2-0-dev` + +=libicu= + Provides IDNA support in URLs (fallback if libidn is not available). + Minimum version: none + Install on Debian: `apt-get install libicu-dev` + +=libcurl= + Provides HTTP request functionality. + Minimum version: 7.18.2 + Install on Debian: `apt-get install libcurl4-openssl-dev` + Note: There are usually different styles of SSL support for libcurl available, so you can replace 'openssl' in the above command f.e. with 'nss' or 'gnutls'. + +=libevent= + Eventloop support for the HTTP client. + Minimum version: none + Install on Debian: `apt-get install libevent-dev` + +### PHP extensions: + This extension unconditionally depends on the pre-loaded presence of the following PHP extensions: * raphf @@ -27,18 +68,32 @@ This extension unconditionally depends on the pre-loaded presence of the followi * spl -If configured ```--with-http-shared-deps``` (default) it requires on the pre-loaded presence of the following extensions, as long as they where available at build time: +If configured ```--with-http-shared-deps``` (default) it depends on the pre-loaded presence of the following extensions, as long as they were available at build time: * hash * iconv -* json +* json (only until < 2.4.0) + +Please ensure that all extension on which pecl/http depends, are loaded before it, e.g in your `php.ini`: + + ; obligatory deps + extension = raphf.so + extension = propro.so + + ; if shared deps were enabled + extension = hash.so + extension = iconv.so + extension = json.so + + ; finally load pecl/http + extension = http.so ## Conflicts: -pecl/http-v2 conflicts with thw following extensions: +pecl/http-v2 conflicts with the following extensions: * http-v1 -* event +* event (only until <= 2.0.3) ## INI Directives: @@ -57,3 +112,11 @@ The http extension registers the ```http.*``` namespace for its stream filters. Decode a stream encoded with deflate/zlib/gzip encoding. * http.deflate Encode a stream with deflate/zlib/gzip encoding. + +## Changelog: + +Version | Change +--------|------- +2.0.4 | Dropped the pecl/event conflict. +2.4.0 | Dropped the ext/json dependency. +2.4.2 | Added libidn2 and libicu as fallback for IDNA support.