Releases: api-platform/core
Releases · api-platform/core
v4.2.0
What's Changed
Features
- feat: json streamer by @soyuka in #7225
- feat(mongodb): partial pagination by @soyuka in #7352
- Allow throwing an access denied exception on denormalization of secured properties by @dwgebler in #7221
- feat(symfony): Add error classes options to OpenAPI config by @alexndlm in #7143
- feat(elasticsearch): add support for v9 by @darthf1 in #7180
- feat(doctrine): new search filters by @vinceAmstoutz in #7121
- feat(serializer): set the object-to-populate in deserializer context as soon as data !== null by @lyrixx in #7124
- feat(metadata): use PHP file as resource format by @loic425 in #7017
- feature(symfony): Add CSS Color Schema Restriction for Property Validation by @SebLevDev in #7215
- feat(symfony): Autoconfigure classes using
#[ApiResource]
attribute by @GromNaN in #6943 - feat(doctrine): improve http cache invalidation using the mapping by @mrossard in #7319
- feat(metadata) Customize Resource & operations by @loic425 in #7213
- feat(symfony): object mapper with state options by @soyuka in #6801
- feat(doctrine): BackedEnumFilter allow multiple values similar to SearchFilter[exact] by @MeronNagy in #7129
- feat(serializer): handle defaultType for DiscriminatorMap by @alanpoulain in #7284
- feat(httpcache): add more cache directives to AddHeadersProcessor by @alanpoulain in #7008
- Add Error:setDescription by @VincentLanglet in #7329
Breaking changes
- Allow null on allowReserved and allowEmptyValue properties by @snoob in #7315
- fix(state): transform uri variable using ReadLinkParameterProvider by @soyuka in #7375
- feat(json-schema): mutualize json schema between formats by @soyuka in #6960
TypeInfo
- feat(jsonapi): use
TypeInfo
'sType
by @soyuka in #7100 - feat(hal): use
TypeInfo
type by @soyuka in #7097 - feat(hydra): use
TypeInfo
'sType
by @soyuka in #7099 - feat(metadata/doctrine): Use
Type
ofTypeInfo
instead ofPropertyInfo
by @mtarld in #6979 - feat(serializer): type info by @soyuka in #7104
- feat(elasticsearch): use
TypeInfo
type by @soyuka in #7098 - feat(openapi): use
TypeInfo
'sType
by @soyuka in #7096 - feat(laravel): use
TypeInfo
'sType
by @soyuka in #7101
Bug fixes
- fix(symfony): explicitly set the target when mapping entities to resources by @mrossard in #7311
- Only set name_converter for the default serializer by @mbeccati in #7365
- fix(openapi): no content schema by @soyuka in #7384
- fix: pagination via cursor on ApiResource operations by @valentindrdt in #7368
- fix(jsonld): various json streamer fixes by @soyuka in #7374
- fix(laravel): restore accidentally removed BooleanFilter by @vinceAmstoutz in #6881
- fix(httpcache): collection iri invalidation for mapped entities by @mrossard in #7353
- fix(state): object-mapper reuse related entity by @soyuka in #7300
- fix(httpcache): only map entites that are persisted by @soyuka in #7345
- feat(mongodb): Make
ParameterExtension
context more generic by @GromNaN in #7389
Miscellaneous
- feat(symfony): stop watch system provider/processor by @soyuka in #7299
- feat(openapi): license identifier by @soyuka in #7141
- fix(metadata): wrong method name in resource mutator by @soyuka in #7373
- Use class-string param type for Metadata::getClass by @VincentLanglet in #7307
- Remove internal from Metadata by @VincentLanglet in #7288
- fix(hal): rename package by @soyuka in #7386
- fix(metadata) Fix new PHP file resource extractor by @loic425 in #7193
- Fix/4372 skip null values in hal by @BacLuc in #7317
- fix(serializer): deprecate SerializerAwareProviderInterface and SerializableProvider by @vinceAmstoutz in #7348
v4.2.0-beta.1
What's Changed
- fix(httpcache): collection iri invalidation for mapped entities by @mrossard in #7353
- Only set name_converter for the default serializer by @mbeccati in #7365
- fix: pagination via cursor on ApiResource operations by @valentindrdt in #7368
- chore: remove @experimental flag from parameters by @soyuka in #7357
- chore: allow framework bundle:^6 by @soyuka in #7358
- fix(metadata): wrong method name in resource mutator by @soyuka in #7373
- fix(jsonld): various json streamer fixes by @soyuka in #7374
- fix(state): transform uri variable using ReadLinkParameterProvider by @soyuka in #7375
- fix: phpdoc for HttpOperation paginationViaCursor parameter by @emmanuel-averty in #7379
- fix(laravel): remove duplication code exception by @flug in #7378
- fix(metadata): compute isWritable during updates by @soyuka in #7383
- fix(openapi): no content schema by @soyuka in #7384
- Merge 4.1 by @soyuka in #7385
- fix(laravel): http cache compatibility by @soyuka in #7380
- fix(hal): rename package by @soyuka in #7386
New Contributors
Full Changelog: v4.2.0-alpha.3...v4.2.0-beta.1
v4.1.24
What's Changed
- fix: phpdoc for HttpOperation paginationViaCursor parameter by @emmanuel-averty in #7379
- fix(laravel): remove duplication code exception by @flug in #7378
- fix(metadata): compute isWritable during updates by @soyuka in #7383
- fix(laravel): http cache compatibility by @soyuka in #7380
New Contributors
Full Changelog: v4.1.23...v4.1.24
v4.1.23
What's Changed
- Only set name_converter for the default serializer by @mbeccati in #7365
- fix: pagination via cursor on ApiResource operations by @valentindrdt in #7368
New Contributors
Full Changelog: v4.1.22...v4.1.23
v4.2.0-alpha.3
What's Changed
- fix(serializer): deprecate SerializerAwareProviderInterface and SerializableProvider by @vinceAmstoutz in #7348
- feat(doctrine): new search filters by @vinceAmstoutz in #7121
- feat(mongodb): partial pagination by @soyuka in #7352
- fix(laravel): serialization issue with camelCase relation by @soyuka in #7356
Full Changelog: v4.2.0-alpha.2...v4.2.0-alpha.3
v4.1.22
v4.2.0-alpha.2
What's Changed
- chore: allow doctrine/persistence 4.0 by @VincentLanglet in #7276
- fix: symfony deprecations by @VincentLanglet in #7277
- Remove internal from Metadata by @VincentLanglet in #7288
- fix(symfony): restore graphql_playground option by @soyuka in #7274
- feat(doctrine): BackedEnumFilter allow multiple values similar to SearchFilter[exact] by @MeronNagy in #7129
- feat(serializer): handle defaultType for DiscriminatorMap by @alanpoulain in #7284
- Do not fail if phpstan/phpdoc-parser is missing by @VincentLanglet in #7279
- style: php-cs-fixer ^3.84 by @soyuka in #7292
- fix(hydra): "property" may not be defined by @soyuka in #7293
- fix(validator): property path on deepObject style by @soyuka in #7179
- fix(validation): moving dependence from require-dev to require by @maxhelias in #7296
- fix(openapi): output
partial
query parameter to OpenAPI whenpagination_client_enabled
is true by @ttskch in #7295 - fix: json formatted resource should not get xml errors by @soyuka in #7297
- chore: bump doctrine persistence version by @soyuka in #7309
- Use class-string param type for Metadata::getClass by @VincentLanglet in #7307
- fix(jsonld): child class @type shortName by @soyuka in #7312
- feat(metadata) Customize Resource & operations by @loic425 in #7213
- fix(symfony): explicitly set the target when mapping entities to resources by @mrossard in #7311
- Allow null on allowReserved and allowEmptyValue properties by @snoob in #7315
- fix(serializer): Allow nested denormalization when allow_extra_attributes=false by @calbro7 in #7270
- fix(state): object-mapper reuse related entity by @soyuka in #7300
- fix(openapi): sync typehints between properties and getter/canner for… by @snoob in #7322
- fix(openapi): nullable default values in operation openapi definition by @soyuka in #7321
- Fix/4372 skip null values in hal by @BacLuc in #7317
- fix(jsonapi): handle type error when handling validation errors by @daFish in #7330
- Add Error:setDescription by @VincentLanglet in #7329
- fix(laravel): read property type before serialization by @soyuka in #7332
- Fix empty strings for date filter by @mbrodala in #7291
- Add missing param type by @VincentLanglet in #7313
- feat(doctrine): improve http cache invalidation using the mapping by @mrossard in #7319
- feat(laravel): Support composite identifiers/keys within
Link
by @jonerickson in #7342 - feat(symfony): stop watch system provider/processor by @soyuka in #7299
- fix(httpcache): only map entites that are persisted by @soyuka in #7345
- fix(serializer): improve #7270 by reducing inconsistencies by @soyuka in #7346
- feat: json streamer by @soyuka in #7225
New Contributors
- @snoob made their first contribution in #7315
- @calbro7 made their first contribution in #7270
- @BacLuc made their first contribution in #7317
- @daFish made their first contribution in #7330
Full Changelog: v4.2.0-alpha.1...v4.2.0-alpha.2
v4.1.21
What's Changed
- Allow null on allowReserved and allowEmptyValue properties by @snoob in #7315
- fix(serializer): Allow nested denormalization when allow_extra_attributes=false by @calbro7 in #7270
- fix(openapi): sync typehints between properties and getter/canner for… by @snoob in #7322
- fix(openapi): nullable default values in operation openapi definition by @soyuka in #7321
- fix(jsonapi): handle type error when handling validation errors by @daFish in #7330
- fix(laravel): read property type before serialization by @soyuka in #7332
- Fix empty strings for date filter by @mbrodala in #7291
- feat(laravel): Support composite identifiers/keys within
Link
by @jonerickson in #7342 - fix(serializer): improve #7270 by reducing inconsistencies by @soyuka in #7346
New Contributors
- @snoob made their first contribution in #7315
- @calbro7 made their first contribution in #7270
- @daFish made their first contribution in #7330
Full Changelog: v4.1.20...v4.1.21
v4.1.20
v4.1.19
What's Changed
- fix(symfony): restore graphql_playground option by @soyuka in #7274
- Do not fail if phpstan/phpdoc-parser is missing by @VincentLanglet in #7279
- fix(hydra): "property" may not be defined by @soyuka in #7293
- fix(validator): property path on deepObject style by @soyuka in #7179
- fix(validation): moving dependence from require-dev to require by @maxhelias in #7296
- fix(openapi): output
partial
query parameter to OpenAPI whenpagination_client_enabled
is true by @ttskch in #7295 - fix: json formatted resource should not get xml errors by @soyuka in #7297
Full Changelog: v4.1.18...v4.1.19