- The
Ivory\HttpAdapter\GuzzleHttpAdapterhas been renamed toIvory\HttpAdapter\Guzzle3HttpAdapterand its name has been renamed fromguzzletoguzzle3. - The
Ivory\HttpAdapter\GuzzleHttpHttpAdapterhas been renamed toIvory\HttpAdapter\Guzzle5HttpAdapterand its name has been renamed fromguzzle_httptoguzzle5. - The
Ivory\HttpAdapter\Guzzle4HttpAdapteris now an alias of thz Guzzle 5 http adapter. Its name isguzzle4. - The
Ivory\HttpAdapter\HttpAdapterFactory::GUZZLEconstant has been renamed toGUZZLE3. - The
Ivory\HttpAdapter\HttpAdapterFactory::GUZZLE_HTTPconstant has been renamed toGUZZLE4andGUZZLE5. - The phly/http has been replaced by zendframework/zend-diactoros.
- The
Ivory\HttpAdapter\Message\Stream\AbstractStream,Ivory\HttpAdapter\Message\Stream\GuzzleStreamandIvory\HttpAdapter\Message\Stream\GuzzleHttpStreamhave been removed. - The CakePHP 2.x support has been dropped in favor of the 3.x one.
PreRequestevent renamed toRequestCreated.PostRequestevent renamed toRequestSent.Exceptionevent renamed toRequestErrored.MultiPreRequestevent renamed toMultiRequestCreated.MultiPostRequestevent renamed toMultiRequestSent.MultiExceptionevent 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-messagehas been bumped from0.5to0.9with plenty of BC breaks. - The
Ivory\HttpAdapter\Messagenamespace has been rewritten in order to matchphly/httpandpsr/http-message. - The
Ivory\HttpAdapter\AbstractHttpAdapterTemplatehas 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\AbstractHttpAdapteranymore 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::doSendInternalRequestandIvory\HttpAdapter\AbstractHttpAdapter::doSendInternalRequestshas been renamed respectively tosendInternalRequestandsendInternalRequestswhich 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::doRewindhas been introduced in order to matchpsr/http-message. - The
Ivory\HttpAdapter\Message\Stream\ResourceStreamandIvory\HttpAdapter\Message\Stream\StringStreamhave been removed. You should now rely on thephly/httpstream. - The
Ivory\HttpAdapter\Message\MessageFactory::clone*methods have been removed (not used anymore) and thereasonPhraseparameter of theIvory\HttpAdapter\Message\MessageFactory::createResponsehas been removed too (not needed anymore). - The
Ivory\HttpAdapter\Extractor\ReasonPhraseExtractorhas been removed (not used anymore). - The
Ivory\HttpAdapter\Normalizer\MethodNormalizerandIvory\HttpAdapter\Normalizer\UrlNormalizerhave been removed (not used anymore). - All
urlhave been renamed touri(including properties and methods) in order to matchpsr/http-message.
- The
Ivory\HttpAdapter\Eventnamespace 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-dispatcheris now optional. Accordingly, theIvory\HttpAdapter\Configuration::$eventDispatcherhas been made optional too and thehasEventSubscribermethod has been introduced. - The
Ivory\HttpAdapter\AbstractHttpAdapter::doSendhas been renamed todoSendInternalRequest. - The
Ivory\HttpAdapter\AbstractHttpAdapter::createResponsehas been removed. You should rely onIvory\HttpAdapter\Message\MessageFactory::createResponseinstead. - The
Ivory\HttpAdapter\HttpAdapterInterface::sendInternalRequesthas been removed. You should rely onIvory\HttpAdapter\HttpAdapterInterface::sendRequestinstead. - 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\Guzzle3HttpAdapterhas been renamed toIvory\HttpAdapter\GuzzleHttpAdapterand its name has been renamed to fromguzzle3toguzzleas well. -
The
Ivory\HttpAdapter\Guzzle4HttpAdapterhas been renamed toIvory\HttpAdapter\GuzzleHttpHttpAdapter, its name has been renamed to fromguzzle4toguzzle_httpand it now supports Guzzle 5. -
The
Ivory\HttpAdapter\Message\Stream\Guzzle3Streamhas been renamed toIvory\HttpAdapter\Message\Stream\GuzzleStream. -
The
Ivory\HttpAdapter\Message\Stream\Guzzle4Streamhas been renamed toIvory\HttpAdapter\Message\Stream\GuzzleHttpStreamand 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\AbstractStreamhas two new abstract methods (doAttachanddoGetMetadata) which have been added in order to reflect the PSR HTTP message changes. -
The
Ivory\HttpAdapter\HttpAdapterException::resourceIsNotValidhas been renamed tostreamIsNotValidand 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::$isSeekableandIvory\HttpAdapter\Message\Stream\ResourceSteam::$isLocalproperties have been removed as it does not bring any values and are only used internally. -
The
Ivory\HttpAdapter\Message\Stream\ResourceSteam::$modesstructure has been simplified. -
The
Ivory\HttpAdapter\Message\Stream\ResourceSteam::isLocal,Ivory\HttpAdapter\Message\Stream\ResourceSteam::buildCacheandIvory\HttpAdapter\Message\Stream\ResourceSteam::clearCachemethods have been removed.