- The
Ivory\HttpAdapter\GuzzleHttpAdapter
has been renamed toIvory\HttpAdapter\Guzzle3HttpAdapter
and its name has been renamed fromguzzle
toguzzle3
. - The
Ivory\HttpAdapter\GuzzleHttpHttpAdapter
has been renamed toIvory\HttpAdapter\Guzzle5HttpAdapter
and its name has been renamed fromguzzle_http
toguzzle5
. - The
Ivory\HttpAdapter\Guzzle4HttpAdapter
is now an alias of thz Guzzle 5 http adapter. Its name isguzzle4
. - The
Ivory\HttpAdapter\HttpAdapterFactory::GUZZLE
constant has been renamed toGUZZLE3
. - The
Ivory\HttpAdapter\HttpAdapterFactory::GUZZLE_HTTP
constant has been renamed toGUZZLE4
andGUZZLE5
. - The phly/http has been replaced by zendframework/zend-diactoros.
- The
Ivory\HttpAdapter\Message\Stream\AbstractStream
,Ivory\HttpAdapter\Message\Stream\GuzzleStream
andIvory\HttpAdapter\Message\Stream\GuzzleHttpStream
have been removed. - The CakePHP 2.x support has been dropped in favor of the 3.x one.
PreRequest
event renamed toRequestCreated
.PostRequest
event renamed toRequestSent
.Exception
event renamed toRequestErrored
.MultiPreRequest
event renamed toMultiRequestCreated
.MultiPostRequest
event renamed toMultiRequestSent
.MultiException
event renamed toMultiRequestErrored
.- Event subscribers are now immutable.
- The lowest PHP version supported has been bumped to 5.4.8+ due to the usage of
phly/http
. - The
psr/http-message
has been bumped from0.5
to0.9
with plenty of BC breaks. - The
Ivory\HttpAdapter\Message
namespace has been rewritten in order to matchphly/http
andpsr/http-message
. - The
Ivory\HttpAdapter\AbstractHttpAdapterTemplate
has been removed in favor of theIvory\HttpAdapter\HttpAdapterTrait
. - The event dispatcher has been moved to a decorator. So, it has been removed from the configuration and all the
event related code is not part of the
Ivory\HttpAdapter\AbstractHttpAdapter
anymore but part of theIvory\HttpAdapter\EventDispatcherHttpAdapter
. - The event model which populated informations into requests or responses now returns the new requests or responses created due to the immutability of these classes.
- The event http adapter setter has been removed in order to make the http adapter immutable.
- The
Ivory\HttpAdapter\AbstractHttpAdapter::doSendInternalRequest
andIvory\HttpAdapter\AbstractHttpAdapter::doSendInternalRequests
has been renamed respectively tosendInternalRequest
andsendInternalRequests
which were the methods previously reserved for the event dispatching. - The internal request raw datas has been dropped in favor of the body already available through the extended request.
- The
Ivory\HttpAdapter\Message\Stream\AbstractStream::doRewind
has been introduced in order to matchpsr/http-message
. - The
Ivory\HttpAdapter\Message\Stream\ResourceStream
andIvory\HttpAdapter\Message\Stream\StringStream
have been removed. You should now rely on thephly/http
stream. - The
Ivory\HttpAdapter\Message\MessageFactory::clone*
methods have been removed (not used anymore) and thereasonPhrase
parameter of theIvory\HttpAdapter\Message\MessageFactory::createResponse
has been removed too (not needed anymore). - The
Ivory\HttpAdapter\Extractor\ReasonPhraseExtractor
has been removed (not used anymore). - The
Ivory\HttpAdapter\Normalizer\MethodNormalizer
andIvory\HttpAdapter\Normalizer\UrlNormalizer
have been removed (not used anymore). - All
url
have been renamed touri
(including properties and methods) in order to matchpsr/http-message
.
- The
Ivory\HttpAdapter\Event
namespace has been rewrite and so, it is plenty of BC breaks... Basically, lot of logic stored in event subscribers have been moved to dedicated classes so, it works pretty the same way but not exactly... If you're using them, it will be really easy to migrate your app so, please read the new documentation related to events. - The
symfony/event-dispatcher
is now optional. Accordingly, theIvory\HttpAdapter\Configuration::$eventDispatcher
has been made optional too and thehasEventSubscriber
method has been introduced. - The
Ivory\HttpAdapter\AbstractHttpAdapter::doSend
has been renamed todoSendInternalRequest
. - The
Ivory\HttpAdapter\AbstractHttpAdapter::createResponse
has been removed. You should rely onIvory\HttpAdapter\Message\MessageFactory::createResponse
instead. - The
Ivory\HttpAdapter\HttpAdapterInterface::sendInternalRequest
has been removed. You should rely onIvory\HttpAdapter\HttpAdapterInterface::sendRequest
instead. - All protected properties and methods have been updated to private except for entry points. This is mostly motivated for enforcing the encapsulation and easing backward compatibility.
-
The
Ivory\HttpAdapter\Guzzle3HttpAdapter
has been renamed toIvory\HttpAdapter\GuzzleHttpAdapter
and its name has been renamed to fromguzzle3
toguzzle
as well. -
The
Ivory\HttpAdapter\Guzzle4HttpAdapter
has been renamed toIvory\HttpAdapter\GuzzleHttpHttpAdapter
, its name has been renamed to fromguzzle4
toguzzle_http
and it now supports Guzzle 5. -
The
Ivory\HttpAdapter\Message\Stream\Guzzle3Stream
has been renamed toIvory\HttpAdapter\Message\Stream\GuzzleStream
. -
The
Ivory\HttpAdapter\Message\Stream\Guzzle4Stream
has been renamed toIvory\HttpAdapter\Message\Stream\GuzzleHttpStream
and it now supports Guzzle 5.
- The PSR HTTP message dependency has break the backward compatibility. See https://github.com/php-fig/http-message/compare/0.3.0...0.4.0
- The PSR HTTP message dependency has break the backward compatibility. See https://github.com/php-fig/http-message/compare/0.2.0...0.3.0
-
The PSR HTTP message dependency has break the backward compatibility. See https://github.com/php-fig/http-message/compare/0.1.0...0.2.0
-
The
Ivory\HttpAdapter\Message\Stream\AbstractStream
has two new abstract methods (doAttach
anddoGetMetadata
) which have been added in order to reflect the PSR HTTP message changes. -
The
Ivory\HttpAdapter\HttpAdapterException::resourceIsNotValid
has been renamed tostreamIsNotValid
and it now takes the stream as first parameter, the wrapper as second parameter and the expected stream as third parameter. -
The
Ivory\HttpAdapter\Message\Stream\ResourceSteam::$isReadable
,Ivory\HttpAdapter\Message\Stream\ResourceSteam::$isWritable
,Ivory\HttpAdapter\Message\Stream\ResourceSteam::$isSeekable
andIvory\HttpAdapter\Message\Stream\ResourceSteam::$isLocal
properties have been removed as it does not bring any values and are only used internally. -
The
Ivory\HttpAdapter\Message\Stream\ResourceSteam::$modes
structure has been simplified. -
The
Ivory\HttpAdapter\Message\Stream\ResourceSteam::isLocal
,Ivory\HttpAdapter\Message\Stream\ResourceSteam::buildCache
andIvory\HttpAdapter\Message\Stream\ResourceSteam::clearCache
methods have been removed.