Releases: contentful/contentful.php
Releases · contentful/contentful.php
2.0.1
2.0.0
ATTENTION: This release contains breaking changes. Please take extra care when updating to this version.
Added
Link
implements theJsonSerializable
interface. This is done in preparation for the upcoming CMA SDK.UploadFile
class now manages files which aren't yet processed (for Preview API) [BREAKING].Contentful\Delivery\Asset::getFile
now returnsContentful\Delivery\File\FileInterface
instead of one ofFile|ImageFile
. If you were type hinting on either one of those, please now use the interface or addUploadFile
to the possible types.- Exceptions thrown because of an API error now extend
ApiException
. This class gives access to some additional data like, the request, response and request ID. - Extended
Client
to support a future CMA SDK.
Fixed
- Retrieving a list of entries that contained multiple loops creates too many objects. [BREAKING] (#105)
The new behavior is, that any entry that appears multiple times in the graph of the response will be the same instance. - The
contentful
script used to warm up/clear the cache was not marked as a binary incomposer.json
and thus not published tovendor/bin
. - In console commands
<info>
can't be used as part of an Exception message. (#129) - Assets that are part of includes would not be resolved and always fetched again.
Client::request
ignored the timer returned inLoggerInterface::getTimer
when timing requests.
Changed
- Moved file classes to a sub-namespace
Contentful\File
[BREAKING].Contentful\File
toContentful\File\File
Contentful\ImageFile
toContentful\File\ImageFile
Contentful\ImageOptions
toContentful\File\ImageOptions
1.2.0
Added
- Implemented
ResourceArray::getItems
to allow access to the values of aResourceArray
as an actual PHP array. - Send the new
X-Contentful-User-Agent
header.
1.1.0
Added
- Implemented
DeletedEntry::getContentType()
to be used with webhooks. (#101)
Changed
- The minimum required version of
guzzlehttp/psr7
is now 1.4.
Fixed
1.0.0
Added
- Content in disabled fields can now be read.
0.8.1-beta
Fixed
- The caching of resolved links does not work for an array of links.
0.8.0-beta
ATTENTION: This release contains breaking changes. Please take extra care when updating to this version.
Changed
- Renamed a few classes to move them outside the Delivery namespace. [BREAKING]
Contentful\Delivery\Link
toContentful\Link
Contentful\Delivery\ImageOptions
toContentful\ImageOptions
Contentful\Delivery\File
toContentful\File
Contentful\Delivery\ImageFile
toContentful\ImageFile
- Renamed
ResourceNotFoundException
toNotFoundException
to match the names the API uses. [BREAKING] - Turned
Contentful\Query
into an abstract class to promote separation between CDA and CMA SDKs. [BREAKING]
Removed
- Removed all get* methods except
getQueryData()
andgetQueryString()
from the various query classes. [BREAKING]
Fixed
- The
FilesystemCache
would try to read cached content types from the wrong file name. CacheWarmer
wrote incorrect data for content types.- Retrieving a cached content type would cause the maximum function nesting level to be exceeded.
- Correctly set the
Accept
header for API versioning. Previously theContent-Type
header was set instead. - Serializing a
LogEntry
would fail if no response has been set.
0.7.0-beta
ATTENTION: This release contains breaking changes. Please take extra care when updating to this version.
Added
- Added support for the
webp
format in the Images API. - Introduced
RateLimitExceededException
,InvalidQueryException
andAccessTokenInvalidException
for more specific error handling. [BREAKING] - Allow injecting a custom Guzzle instance into
Client
. - Allow fetching content in a single locale by adding the locale code to the query. [BREAKING]
MIGRATION: To retain the old behavior set the default locale to'*''
when creating the client. This could look
like:new Client($token, $spaceID, false, null, ['defaultLocale => '*'])
- Allow setting the locale in which you work when creating the client.
- Allow overriding the URI used to connect with the Contentful API.
- The
select
operator can now be specified on queries. Thanks @Haehnchen. - Support for the
all
operator and passing arrays as$value
inQuery::where()
. - Support for ordering by multiple fields.
- The space metadata and the content types can now be cached with a CLI command.
- Support for caching the Space and Content Types. The cache has to be manually warmed and cleared.
Changed
- Changed the behavior of getting an array of links to not throw an exception when one of them has been deleted from the space. (#19)
- Removed the caching of
Asset
andEntry
instances. [BREAKING] - Changed the internal data format from object to array. This should make no observable difference to the public API.
- Moved all Exception classes to their own namespace. [BREAKING]
- Changed the signature of the constructor of
Contentful\Delivery\Client
. Several options are now in an options array. [BREAKING] - The Sync API can now also be used with the Preview API. Only initial syncs are supported.
- Dist zip files no longer include the tests directory. If you need them use
composer install --prefer-source
.
Removed
- Dropped
BearerToken
to make it easier to inject custom Guzzle instances. Thanks @Haehnchen. [BREAKING] - The class generator has been removed. It was unusable.
Fixed
- Assets that have no title would throw an uncaught exception.
- Handling of missing values for a locale in Assets. Solved by implementing fallback locales for Assets too. (#38)
- Fields that have the literal value
null
are now treated like they don't exist. Previously they might have causes a
fatal error. Note: This does not 100% match the behaviour of the Contentful API. - The error message for
Query::setLimit
was incorrect. - Allow accessing fields where the first letter of the ID is capitalized. (#68)
0.6.5-beta
Added
- Added gzip compression for API requests.
Changed
- Raised the minimum Guzzle version to 6.2.1.
This version addressed the HTTP_PROXY security vulnerability (CVE-2016-5385).
Fixed
- Trying to retrieve fields that end with "Id" fails. #9
0.6.4-beta: Regenerate test fixtures
Added
- Made LogEntry implement Serializable.
Changed
- Send the correct Content-Type header for API versioning.