[RFC] HTTP/2 Server Push support in ext/curl
| From: | Davey Shafik | Date: | Wed, 18 Nov 2015 22:31:23 +0000 |
| Subject: | [RFC] HTTP/2 Server Push support in ext/curl | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-89275@lists.php.net to get a copy of this message | ||
Hey folks,
I'd like to introduce a new RFC for 7.1 that will add support for HTTP/2
Server Push to ext/curl.
This is exposing new features from libcurl to user land, which means they
must have the latest (in fact currently unreleased, due to a bugfix)
version of libcurl.
For those who are not aware, HTTP/2 support is growing rapidly, and is
already available in 60% of browsers, Apache 2 (via mod_h2), nginx, and
even IIS.
The RFC can be seen here: https://wiki.php.net/rfc/curl_http2_push
With the patch at:
https://github.com/php/php-src/compare/master...dshafik:curl-http2-push
The patch still needs some work, possibly a lot of work due to my
inexperience with C. Specifically, there are some memory leaks I've managed
to introduce with the headers array stuff (I'm pretty sure, lines
529-535[1]) and there is some duplicated code from interface.c (lines
454-523[2]) that I was unable to refactor out successfully to it's own
function. Plus, on the whole it seems incredibly untidy to me.
Feedback welcome!
- Davey
[1]
https://github.com/php/php-src/compare/master...dshafik:curl-http2-push#diff-ab7a9164033bd55887d45d0a6cb837eeR529
[2]
https://github.com/php/php-src/compare/master...dshafik:curl-http2-push#diff-ab7a9164033bd55887d45d0a6cb837eeR451