Changelog History
Page 5
-
v1.6.0 Changes
September 13, 2017โ Added
- Nothing.
๐ Changed
zendframework/zend-diactoros#270 changes the behavior of
Laminas\Diactoros\Server
: it no longer creates an output buffer.zendframework/zend-diactoros#270 changes the behavior of the two SAPI emitters in two backwards-incompatible ways:
- They no longer auto-inject a
Content-Length
header. If you need this functionality, mezzio/mezzio-helpers 4.1+ provides it viaMezzio\Helper\ContentLengthMiddleware
. - They no longer flush the output buffer. Instead, if headers have been sent,
or the output buffer exists and has a non-zero length, the emitters raise an
exception, as mixed PSR-7/output buffer content creates a blocking issue.
If you are emitting content via
echo
,print
,var_dump
, etc., or not catching PHP errors or exceptions, you will need to either fix your application to always work with a PSR-7 response, or provide your own emitters that allow mixed output mechanisms.
- They no longer auto-inject a
๐ Deprecated
- Nothing.
โ Removed
- Nothing.
๐ Fixed
- Nothing.
-
v1.5.0 Changes
August 22, 2017โ Added
๐ zendframework/zend-diactoros#205 adds support for PHP 7.2.
zendframework/zend-diactoros#250 adds a new API to
JsonResponse
to avoid the need for decoding the response body in order to make changes to the underlying content. New methods include:getPayload()
: retrieve the unencoded payload.withPayload($data)
: create a new instance with the given data.getEncodingOptions()
: retrieve the flags to use when encoding the payload to JSON.withEncodingOptions(int $encodingOptions)
: create a new instance that uses the provided flags when encoding the payload to JSON.
๐ Changed
zendframework/zend-diactoros#249 changes the behavior of the various
Uri::with*()
methods slightly: if the value represents no change, these methods will return the same instance instead of a new one.zendframework/zend-diactoros#248 changes the behavior of
Uri::getUserInfo()
slightly: it now (correctly) returns the percent-encoded values for the user and/or password, per RFC 3986 Section 3.2.1.withUserInfo()
will percent-encode values, using a mechanism that prevents double-encoding.zendframework/zend-diactoros#243 changes the exception messages thrown by
UploadedFile::getStream()
andmoveTo()
when an upload error exists to include details about the upload error.zendframework/zend-diactoros#233 adds a new argument to
SapiStreamEmitter::emit
,$maxBufferLevel
between the$response
and$maxBufferLength
arguments. This was done because theServer::listen()
method passes only the response and$maxBufferLevel
to emitters; previously, this often meant that streams were being chunked 2 bytes at a time versus the expected default of 8kb.
If you were calling the
SapiStreamEmitter::emit()
method manually previously, you will need to update your code.๐ Deprecated
- Nothing.
โ Removed
- zendframework/zend-diactoros#205 and zendframework/zend-diactoros#243 remove support for PHP versions prior to 5.6 as well as HHVM.
๐ Fixed
- ๐ zendframework/zend-diactoros#248 fixes how the
Uri
class provides user-info within the URI authority; the value is now correctly percent-encoded , per RFC 3986 Section 3.2.1.
-
v1.4.1 Changes
August 17, 2017โ Added
- Nothing.
๐ Deprecated
- Nothing.
โ Removed
- ๐ zendframework/zend-diactoros#260 removes support for HHVM, as tests have failed against it for some time.
๐ Fixed
๐ zendframework/zend-diactoros#247 fixes the
Stream
andRelativeStream
__toString()
method implementations to check if the streamisSeekable()
before attempting torewind()
it, ensuring that the method does not raise exceptions (PHP does not allow exceptions in that method). In particular, this fixes an issue when using AWS S3 streams.zendframework/zend-diactoros#252 provides a fix to the
SapiEmitterTrait
to ensure that anySet-Cookie
headers in the response instance do not override those set by PHP when a session is created and/or regenerated.zendframework/zend-diactoros#257 provides a fix for the
PhpInputStream::read()
method to ensure string content that evaluates as empty (including0
) is still cached.โก๏ธ zendframework/zend-diactoros#258 updates the
Uri::filterPath()
method to allow parens within a URI path, per RFC 3986 section 3.3 (parens are within the character set "sub-delims").
-
v1.4.0 Changes
April 06, 2017โ Added
zendframework/zend-diactoros#219 adds two new classes,
Laminas\Diactoros\Request\ArraySerializer
andLaminas\Diactoros\Response\ArraySerializer
. Each exposes the static methodstoArray()
andfromArray()
, allowing de/serialization of messages from and to arrays.zendframework/zend-diactoros#236 adds two new constants to the
Response
class:MIN_STATUS_CODE_VALUE
andMAX_STATUS_CODE_VALUE
.
๐ Changes
- zendframework/zend-diactoros#240 changes the
behavior of
ServerRequestFactory::fromGlobals()
when no$cookies
argument is present. Previously, it would use$_COOKIES
; now, if aCookie
header is present, it will parse and use that to populate the instance instead.
This change allows utilizing cookies that contain period characters (
.
) in their names (PHP's built-in cookie handling renames these to replace.
with_
, which can lead to synchronization issues with clients).- zendframework/zend-diactoros#235 changes the
behavior of
Uri::__toString()
to better follow proscribed behavior in PSR-7. In particular, prior to this release, if a scheme was missing but an authority was present, the class was incorrectly returning a value that did not include a//
prefix. As of this release, it now does this correctly.
๐ Deprecated
- Nothing.
โ Removed
- Nothing.
๐ Fixed
- Nothing.
-
v1.3.11 Changes
April 06, 2017โ Added
- Nothing.
๐ Changes
- zendframework/zend-diactoros#241 changes the
constraint by which the package provides
psr/http-message-implementation
to simply1.0
instead of~1.0.0
, to follow how other implementations provide PSR-7.
๐ Deprecated
- Nothing.
โ Removed
- Nothing.
๐ Fixed
zendframework/zend-diactoros#161 adds additional validations to header names and values to ensure no malformed values are provided.
๐ zendframework/zend-diactoros#234 fixes a number of reason phrases in the
Response
instance, and adds automation from the canonical IANA sources to ensure any new phrases added are correct.
-
v1.3.10 Changes
January 23, 2017โ Added
- Nothing.
๐ Deprecated
- Nothing.
โ Removed
- Nothing.
๐ Fixed
- ๐ zendframework/zend-diactoros#226 fixed an
issue with the
SapiStreamEmitter
causing the response body to be cast to(string)
and also be read as a readable stream, potentially producing double output.
-
v1.3.9 Changes
January 17, 2017โ Added
- Nothing.
๐ Deprecated
- Nothing.
โ Removed
- Nothing.
๐ Fixed
- zendframework/zend-diactoros#223
zendframework/zend-diactoros#224 fixed an issue
with the
SapiStreamEmitter
consuming too much memory when producing output for readable bodies.
-
v1.3.8 Changes
January 05, 2017โ Added
- Nothing.
๐ Deprecated
- Nothing.
โ Removed
- Nothing.
๐ Fixed
- ๐ zendframework/zend-diactoros#222 fixes the
SapiStreamEmitter
's handling of theContent-Range
header to properly only emit a range of bytes if the header value is in the formbytes {first-last}/length
. This allows using other range units, such asitems
, without incorrectly emitting truncated content.
-
v1.3.7 Changes
October 11, 2016โ Added
- zendframework/zend-diactoros#208 adds several
missing response codes to
Laminas\Diactoros\Response
, including:- 226 ('IM used')
- 308 ('Permanent Redirect')
- 444 ('Connection Closed Without Response')
- 499 ('Client Closed Request')
- 510 ('Not Extended')
- 599 ('Network Connect Timeout Error')
- ๐ zendframework/zend-diactoros#211 adds support
for UTF-8 characters in query strings handled by
Laminas\Diactoros\Uri
.
๐ Deprecated
- Nothing.
โ Removed
- Nothing.
๐ Fixed
- Nothing.
- zendframework/zend-diactoros#208 adds several
missing response codes to
-
v1.3.6 Changes
September 07, 2016โ Added
- zendframework/zend-diactoros#170 prepared documentation for publication at https://docs.laminas.dev/laminas-diactoros/
- ๐ zendframework/zend-diactoros#165 adds support
for Apache
REDIRECT_HTTP_*
header detection in theServerRequestFactory
. - ๐ zendframework/zend-diactoros#166 adds support for UTF-8 characters in URI paths.
- โ zendframework/zend-diactoros#204 adds testing against PHP 7.1 release-candidate builds.
๐ Deprecated
- Nothing.
โ Removed
- Nothing.
๐ Fixed
- ๐ zendframework/zend-diactoros#186 fixes a typo
in a variable name within the
SapiStreamEmitter
. - โก๏ธ zendframework/zend-diactoros#200 updates the
SapiStreamEmitter
to implement a check forisSeekable()
prior to attempts to rewind; this allows it to work with non-seekable streams such as theCallbackStream
. - zendframework/zend-diactoros#169 ensures that
response serialization always provides a
\r\n\r\n
sequence following the headers, even when no message body is present, to ensure it conforms with RFC 7230. - โก๏ธ zendframework/zend-diactoros#175 updates the
Request
class to set theHost
header from the URI host if no header is already present. (Ensures conformity with PSR-7 specification.) - โก๏ธ zendframework/zend-diactoros#197 updates the
Uri
class to ensure that string serialization does not include a colon after the host name if no port is present in the instance.