<channel>pecl.php.net</channel>
<summary>Extended HTTP Support</summary>
<description><![CDATA[
-* Building absolute URLs
-* RFC compliant HTTP redirects
-* RFC compliant HTTP date handling
-* Parsing of HTTP headers and messages
-* Caching by "Last-Modified" and/or ETag
- (with 'on the fly' option for ETag generation from buffered output)
-* Sending data/files/streams with (multiple) ranges support
-* Negotiating user preferred language/charset
-* Convenient request functionality built upon libcurl
-* PHP5 classes: HttpUtil, HttpResponse (PHP-5.1), HttpRequest, HttpRequestPool, HttpMessage
+This HTTP extension aims to provide a convenient and powerful
+set of functionality for one of PHPs major applications.
+
+It eases handling of HTTP urls, dates, redirects, headers and
+messages, provides means for negotiation of clients preferred
+language and charset, as well as a convenient way to send any
+arbitrary data with caching and resuming capabilities.
+
+It provides powerful request functionality, if built with CURL
+support. Parallel requests are available for PHP-5 and greater.
+
+PHP-5 classes:
+HttpUtil, HttpMessage, HttpRequest, HttpRequestPool,
+HttpDeflateStream, HttpInflateStream
+
+PHP-5.1 classes:
+HttpResponse
]]></description>
<lead>
<name>Michael Wallner</name>
</lead>
<date>2005-00-00</date>
<version>
- <release>0.19.0</release>
- <api>0.19.0</api>
+ <release>0.21.0</release>
+ <api>0.21.0</api>
</version>
<stability>
<release>beta</release>
</stability>
<license>BSD, revised</license>
<notes><![CDATA[
-* Fixed bug in http_negotiate_*() when client sends spaces within accept headers
+! Encodings functionality requires libz version 1.2.0.4 or greater
+
++ Added HttpDeflateStream and HttpInflateStream classes
++ Added ob_deflatehandler and ob_inflatehandler
++ Added HttpRequest::getRawRequestMessage and ::getRawResponseMessage
++ Added 'resetcookies' request option (libcurl > 7.15)
+
+- Changed HttpRequest properties to be private
-- Removed support for ETag hashing through libmhash
+* Fixed a lot of memory corruptions within HttpRequest
-+ Added http_negotiate_content_type()
+Special thanks for this release go to Ilia Alshanetsky.
]]></notes>
<contents>
<dir name="/">
<file role="src" name="php_http_info_api.h"/>
<file role="src" name="php_http_message_api.h"/>
<file role="src" name="php_http_request_api.h"/>
+ <file role="src" name="php_http_request_body_api.h"/>
<file role="src" name="php_http_request_method_api.h"/>
<file role="src" name="php_http_request_pool_api.h"/>
<file role="src" name="php_http_send_api.h"/>
<file role="src" name="php_http_url_api.h"/>
<file role="src" name="php_http_util_object.h"/>
+ <file role="src" name="php_http_deflatestream_object.h"/>
+ <file role="src" name="php_http_inflatestream_object.h"/>
<file role="src" name="php_http_message_object.h"/>
<file role="src" name="php_http_request_object.h"/>
<file role="src" name="php_http_requestpool_object.h"/>
<file role="src" name="http_info_api.c"/>
<file role="src" name="http_message_api.c"/>
<file role="src" name="http_request_api.c"/>
+ <file role="src" name="http_request_body_api.c"/>
<file role="src" name="http_request_method_api.c"/>
<file role="src" name="http_request_pool_api.c"/>
<file role="src" name="http_send_api.c"/>
<file role="src" name="http_url_api.c"/>
<file role="src" name="http_util_object.c"/>
+ <file role="src" name="http_deflatestream_object.c"/>
+ <file role="src" name="http_inflatestream_object.c"/>
<file role="src" name="http_message_object.c"/>
<file role="src" name="http_request_object.c"/>
<file role="src" name="http_requestpool_object.c"/>
<file role="test" name="urls.txt"/>
<file role="test" name="skip.inc"/>
<file role="test" name="log.inc"/>
- <file role="test" name="abs_uri_001.phpt"/>
- <file role="test" name="abs_uri_002.phpt"/>
<file role="test" name="allowed_methods_001.phpt"/>
<file role="test" name="allowed_methods_001_logging.phpt"/>
<file role="test" name="allowed_methods_002.phpt"/>
<file role="test" name="allowed_methods_002_logging.phpt"/>
- <file role="test" name="build_uri_001.phpt"/>
+ <file role="test" name="build_url_001.phpt"/>
+ <file role="test" name="build_url_002.phpt"/>
+ <file role="test" name="build_url_003.phpt"/>
<file role="test" name="chunked_decode_001.phpt"/>
<file role="test" name="chunked_decode_002.phpt"/>
<file role="test" name="chunked_decode_003.phpt"/>
<file role="test" name="cloning_001.phpt"/>
<file role="test" name="date_001.phpt"/>
<file role="test" name="date_002.phpt"/>
+ <file role="test" name="encoding_objects_001.phpt"/>
<file role="test" name="encodings.phpt"/>
<file role="test" name="etag_mode_001.phpt"/>
<file role="test" name="etag_mode_002.phpt"/>
<file role="test" name="HttpRequest_001.phpt"/>
<file role="test" name="HttpRequest_002.phpt"/>
<file role="test" name="HttpRequest_003.phpt"/>
+ <file role="test" name="HttpRequest_004.phpt"/>
<file role="test" name="HttpRequestPool_001.phpt"/>
<file role="test" name="HttpRequestPool_002.phpt"/>
<file role="test" name="HttpRequestPool_003.phpt"/>
<file role="test" name="HttpRequestPool_004.phpt"/>
+ <file role="test" name="HttpRequestPool_005.phpt"/>
<file role="test" name="HttpResponse_001.phpt"/>
<file role="test" name="HttpResponse_002.phpt"/>
<file role="test" name="HttpResponse_003.phpt"/>
<file role="test" name="INI_001.phpt"/>
<file role="test" name="match_request_header_001.phpt"/>
<file role="test" name="negotiation_001.phpt"/>
+ <file role="test" name="ob_deflatehandler_001.phpt"/>
+ <file role="test" name="ob_inflatehandler_002.phpt"/>
<file role="test" name="parse_headers_001.phpt"/>
<file role="test" name="parse_message_001.phpt"/>
<file role="test" name="parse_message_002.phpt"/>
</pearinstaller>
</required>
<optional>
- <extension>
- <name>session</name>
- </extension>
+ <extension><name>session</name></extension>
+ <extension><name>hash</name></extension>
</optional>
</dependencies>
<providesextension>http</providesextension>
/>
<filelist>
<install as="functions.html" name="docs/functions.html"/>
+ <install as="examples/extract.php" name="docs/examples/extract.php"/>
+ <install as="examples/tutorial.txt" name="docs/examples/tutorial.txt"/>
</filelist>
</extsrcrelease>
<changelog />