As noted in FR #65634, at present we don't send a Connection request header
when the protocol version is set to 1.1, which means that RFC-compliant Web
servers should respond with keep-alive connections. Since there's no way of
reusing the HTTP connection at present, this simply means that PHP will appear
to hang until the remote server hits its connection timeout, which may be quite
some time.
This commit sends a "Connection: close" header by default when HTTP 1.1 (or
later) is requested by the user via the context options. It can be overridden
by specifying a Connection header in the context options. It isn't possible to
disable sending of the Connection header, but given "Connection: keep-alive" is
the same as the default HTTP 1.1 behaviour, I don't see this as a significant
issue — users who want to opt in for that still can.
As a note, although I've removed an efree(protocol_version), this doesn't
result in a memory leak: protocol_version is freed in the out: block at the end
of the function anyway, and there are no returns between the removed efree()
and the later call. Yes, I ran the tests with valgrind to check that. ☺
Implements FR #65634 (HTTP wrapper is very slow with protocol_version 1.1).
* PHP-5.5:
- add test for imagecropauto
- (s)rgb distance works way better for now, re enable threshold
- disable threshold for now, will enable it again using CIEDE2000
- add todo for threshold
- clean and enable threshold
- add image crop support
Conflicts:
UPGRADING
Per https://wiki.php.net/rfc/mysql_deprecation, connecting to a MySQL database
via ext/mysql now generates an E_DEPRECATED error. This commit includes the
minimal EXPECTF updates required for the test suite to pass: it may be
preferable to refactor some of the tests to suppress deprecation errors in
situations where no other error is expected from mysql_[p]connect(), but I'm
not enough of a MySQL expert to want to get my hands that dirty in a long
standing test suite.
As a public service announcement on behalf of the documentation team, please
remember to update UPGRADING as well as NEWS when adding features to master or
an alpha branch. :)
* pull-request/132:
OK, bye bye JavaScript, let's just include credits before license
Nicer (JSLint-compliant!) credits reveal JavaScript
Removed now-unnecessary expose_php checks for logo
Fixed small misalignment in prev commit
Removed Logo GUIDs and replaced with Data URIs and div hidden with JS