|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## v4.2.0-alpha.2 |
| 4 | + |
| 5 | +### Bug fixes |
| 6 | + |
| 7 | +* [02a764950](https://github.com/api-platform/core/commit/02a7649509f3f69abb74c94805707b0c253521fb) fix(symfony): explicitly set the target class when mapping entities to resources (#7311) |
| 8 | +* [04414e4fc](https://github.com/api-platform/core/commit/04414e4fc144244cf849ca122bfaacc638baa425) fix(serializer): improve #7270 by reducing inconsistencies (#7346) |
| 9 | +* [2c06a22e2](https://github.com/api-platform/core/commit/2c06a22e244e5b0683558589a7ed2d7dd34a16a2) fix(validation): moving dependency from require-dev to require (#7296) |
| 10 | +* [2cde06246](https://github.com/api-platform/core/commit/2cde06246cd593ad094de9c8f0ad1b178608f275) fix(openapi): output `partial` query parameter to OpenAPI when `pagination_client_enabled` is true (#7295) |
| 11 | +* [2e6911c35](https://github.com/api-platform/core/commit/2e6911c359ef750edbccda9f89c14edd29bdca4d) fix(openapi): sync typehints between properties and getter/canner for alllowReserved and allowEmptyValue (#7322) |
| 12 | +* [385953a92](https://github.com/api-platform/core/commit/385953a920d8b8c1c5e644b25d28b211c5ba7008) fix(jsonapi): handle type error when handling validation errors (#7330) |
| 13 | +* [4f717c1e1](https://github.com/api-platform/core/commit/4f717c1e1aee2edb7bded054aacf31b52df30f27) fix(openapi): allow null on allowReserved and allowEmptyValue properties (#7315) |
| 14 | +* [6bc112193](https://github.com/api-platform/core/commit/6bc11219320315af1a811ab49a4c451498f75430) fix(metadata): do not fail if phpstan/phpdoc-parser is missing (#7279) |
| 15 | +* [871e5d3e1](https://github.com/api-platform/core/commit/871e5d3e1916e0d8bd1b4e1c4d983cd270a0922f) fix(symfony): restore graphql_playground option (#7274) |
| 16 | +* [c41a0bca4](https://github.com/api-platform/core/commit/c41a0bca49778663743a52e9da9ddb3b1439c2f8) fix(jsonld): child class @src/JsonLd/JsonStreamer/ValueTransformer/TypeValueTransformer.php shortName (#7312) |
| 17 | +* [c46c57918](https://github.com/api-platform/core/commit/c46c5791841f909af10faf1dd756eed772b6dc15) fix(doctrine): do not consider empty string as a current date (#7291) |
| 18 | +* [d06b1a0a0](https://github.com/api-platform/core/commit/d06b1a0a0e9dcde7fcdb585b435cd617620b098b) fix(state): object-mapper reuse related entity (#7300) |
| 19 | +* [d1073bc67](https://github.com/api-platform/core/commit/d1073bc67ca06b1abe6563c90efcbff4cfe050e4) fix(laravel): read property type before serialization (#7332) |
| 20 | +* [d1abfc0fa](https://github.com/api-platform/core/commit/d1abfc0faf6dcef5d364ff719bdfd97e15275a28) fix(openapi): nullable default values in operation openapi definition (#7321) |
| 21 | +* [d1e6772e3](https://github.com/api-platform/core/commit/d1e6772e32f632a5612f79ec58cad874af938694) fix(validation): property path on deepObject style (#7179) |
| 22 | +* [d35e46b14](https://github.com/api-platform/core/commit/d35e46b1426063dbed4b59d1f07dbbde398a390e) fix(hydra): "property" may not be defined (#7293) |
| 23 | +* [e7502b65a](https://github.com/api-platform/core/commit/e7502b65a12608d0926129a2dfc93a5d6f11fd01) fix(serializer): nested denormalization when allow_extra_attributes=false (#7270) |
| 24 | +* [ecb3f6cef](https://github.com/api-platform/core/commit/ecb3f6cefcf87a0e040cb528a6cb2b31ca97663a) fix(httpcache): only map entites that are persisted |
| 25 | +* [f3a54a239](https://github.com/api-platform/core/commit/f3a54a239e21c18716967e579d2cd2120a52ece1) fix: json formatted resource should not get xml errors #7287 (#7297) |
| 26 | +* [0411cd9cc](https://github.com/api-platform/core/commit/0411cd9cc73f085a1918a13a3798e0c5aee5bbff) fix(jsonld): duplicate error fields when prefix is enabled (#7074) |
| 27 | +* [073c0e282](https://github.com/api-platform/core/commit/073c0e2822c9d93d3303ee64178bed19e6e61080) !fix(openapi): allowReserved, allowEmtpyValue defaults to null |
| 28 | +* [76c80a67c](https://github.com/api-platform/core/commit/76c80a67cdaf9615c598bf0fa3e37a89ce7589ba) fix: command name deprecation |
| 29 | +* [79edced67](https://github.com/api-platform/core/commit/79edced67ccca1a7b80455dd94203501d9c4fa89) !fix(json-schema): share invariable sub-schemas |
| 30 | +* [cff61eab8](https://github.com/api-platform/core/commit/cff61eab8643f8ed08d59c0684e77740d0d81b04) fix(metadata): append php file resource extractor (#7193) |
| 31 | +* [f3d4afe03](https://github.com/api-platform/core/commit/f3d4afe032385f3b665131a365e42706930f0730) fix(symfony): validator type-info |
| 32 | + |
| 33 | +### Features |
| 34 | + |
| 35 | +* [1806cfae6](https://github.com/api-platform/core/commit/1806cfae683f907b6800852e6b2c7bc9ffb59fc1) feat(symfony): stop watch system provider/processor |
| 36 | +* [2d501b315](https://github.com/api-platform/core/commit/2d501b315e2dfacf5fb5c83e136b09c56bdd2b7e) feat(laravel): support composite identifiers within `Link` (#7342) |
| 37 | +* [6491bfc7a](https://github.com/api-platform/core/commit/6491bfc7a88af5722a98645ff648a461c9990b7e) feat(doctrine): improve http cache invalidation using the info from the mapping (#7319) |
| 38 | +* [77b292bfe](https://github.com/api-platform/core/commit/77b292bfefcf655b7ade95bd23046dff5c38c464) feat(metadata): class is now class-string (#7307) |
| 39 | +* [9e9cf648d](https://github.com/api-platform/core/commit/9e9cf648d6cbe21f9c7b07d54e797ac08ffc45eb) feat(metadata): introduce metadata mutators for resource & operations (#7213) |
| 40 | +* [a8b82172a](https://github.com/api-platform/core/commit/a8b82172afa48f04438786aa13d00a33eb8956e1) feat(doctrine): support integer-backed enums in BackedEnumFilter (#7129) |
| 41 | +* [b52187d91](https://github.com/api-platform/core/commit/b52187d91eca6cf08d60dee80d19d42516a7e8b7) feat(serializer): handle defaultType for DiscriminatorMap (#7284) |
| 42 | +* [de9e7f576](https://github.com/api-platform/core/commit/de9e7f576039d9943f7e9b70e41886d3a9406655) feat(hal): allow to output null links for hal+json |
| 43 | +* [f25d7d1a6](https://github.com/api-platform/core/commit/f25d7d1a6e0ed3fb60a01ccda60729721a82d215) feat(metadata): add setter for description (#7329) |
| 44 | +* [1290ebb88](https://github.com/api-platform/core/commit/1290ebb88680dde94e536dfc19d9b330612e0909) feat(serializer): ability to throw access denied exception when denormalizing secured properties (#7221) |
| 45 | +* [1862d03b7](https://github.com/api-platform/core/commit/1862d03b77c941cac13ed7bcbf1d555d50614b4f) feat(symfony): add error classes options to open api config (#7143) |
| 46 | +* [202c60fcb](https://github.com/api-platform/core/commit/202c60fcb05be41bbe0bf03a3314ab3b7e9fed64) feat(openapi): license identifier (#7141) |
| 47 | +* [24a1cf5a2](https://github.com/api-platform/core/commit/24a1cf5a2f9d56df791abdb625ec83594ee4f0f9) feat(elasticsearch): add support for v9 (#7180) |
| 48 | +* [2a13100f4](https://github.com/api-platform/core/commit/2a13100f4edeb02191a3da891d99c1d054710166) feat(serializer): (un)set object-to-populate through denormalization context (#7124) |
| 49 | +* [3ab0b8d0f](https://github.com/api-platform/core/commit/3ab0b8d0fba6a56014752d90a007f57483502551) feat(metadata): use PHP file as resource format |
| 50 | +* [4abf17b3c](https://github.com/api-platform/core/commit/4abf17b3c49491ee1f77f951028422dacae90456) feat(symfony): CSS Color Schema Restriction for Property Validation (#7215) |
| 51 | +* [4b1b94cad](https://github.com/api-platform/core/commit/4b1b94cad1bdd2e9c3d94cc22b7e3519a0d6c609) feat(symfony): autoconfigure classes using `#[ApiResource]` attribute (#6943) |
| 52 | +* [bf09616cf](https://github.com/api-platform/core/commit/bf09616cfbbc2c19a9d04a7be3edc8a9bc0c07ef) feat(httpcache): add more cache directives to AddHeadersProcessor (#7008) |
| 53 | + |
| 54 | +JSON Streamer: |
| 55 | + |
| 56 | +* [ceeaf51e8](https://github.com/api-platform/core/commit/ceeaf51e806e772c2801cfaaa1286fc081a10a3e) feat: json streamer (#7225) |
| 57 | + |
| 58 | +Object Mapper: |
| 59 | + |
| 60 | +* [a42034dc3](https://github.com/api-platform/core/commit/a42034dc384ab1b372ea5bf4452db37791c3b739) feat(symfony): object mapper with state options (#6801) |
| 61 | + |
| 62 | +TypeInfo: |
| 63 | + |
| 64 | +* [7c796de0d](https://github.com/api-platform/core/commit/7c796de0d8d0dc6dd7c4d7a3da0afb61823b6258) feat(serializer): type info (#7104) |
| 65 | +* [350d6d707](https://github.com/api-platform/core/commit/350d6d707a95587679b13c2a8670206b480d9ab2) feat(hydra): use `TypeInfo`'s `Type` (#7099) |
| 66 | +* [55461a83c](https://github.com/api-platform/core/commit/55461a83cbb804fb73167d5196337b6a04e38c22) feat: Use `Type` of `TypeInfo` instead of `PropertyInfo` (#6979) |
| 67 | +* [827e1f725](https://github.com/api-platform/core/commit/827e1f725b5f2a560cd0aaf9b63e7e7e8a9b329d) feat(elasticsearch): use `TypeInfo` type (#7098) |
| 68 | +* [a1952e304](https://github.com/api-platform/core/commit/a1952e30403c2ccf98d5cffb667720c3f4c753bf) feat(openapi): use `TypeInfo`'s `Type` (#7096) |
| 69 | +* [dd3356824](https://github.com/api-platform/core/commit/dd33568245de962ff99efcd8079d2c6f8daf8061) feat(laravel): use `TypeInfo`'s `Type` (#7101) |
| 70 | +* [143d512ef](https://github.com/api-platform/core/commit/143d512ef24b988a9b80b3da28c9a36e4b346c76) feat(jsonapi): use `TypeInfo`'s `Type` (#7100) |
| 71 | +* [1d579d095](https://github.com/api-platform/core/commit/1d579d095616a6025d63526f14402eaef173346b) feat(hal): use `TypeInfo` type (#7097) |
| 72 | + |
3 | 73 | ## v4.2.0-alpha.1
|
4 | 74 |
|
5 | 75 | Introducing new Symfony components!
|
@@ -117,9 +187,9 @@ TypeInfo:
|
117 | 187 | * [b2131645d](https://github.com/api-platform/core/commit/b2131645dec11a5dbf8bbe507f578720a84a686e) fix(laravel): route where uses requirements (#7199)
|
118 | 188 | * [b2b5f99c6](https://github.com/api-platform/core/commit/b2b5f99c64ced9f3580fdaee099d0e34e75d2697) refactor(state): merge parameter and link security (#7200)
|
119 | 189 |
|
120 |
| -Notes: |
| 190 | +Notes: |
121 | 191 |
|
122 |
| -Two providers are now available on parameters (query parameters, header and uri variables `Link`): |
| 192 | +Two providers are now available on parameters (query parameters, header and uri variables `Link`): |
123 | 193 |
|
124 | 194 | - `ReadLinkParameterProvider` previously used for link security (renamed from `Symfony\Security\State\LinkedReadProvider`)
|
125 | 195 | - `IriConverterParameterProvider` this allows you to read a resource from an IRI usefull for filters (eg `?author=/authors/1`)
|
@@ -300,12 +370,12 @@ Also contains [v4.0.20 changes](#v4020).
|
300 | 370 | ## Notes
|
301 | 371 |
|
302 | 372 | This version as the 4.0.19 is compatible with Laravel 12.
|
303 |
| -The [hydra patch](#6748) changes default `hydra:title` and uses the resource `shortname`. Previously the `hydra:title` information was duplicating the `hydra:description`. |
| 373 | +The [hydra patch](#6748) changes default `hydra:title` and uses the resource `shortname`. Previously the `hydra:title` information was duplicating the `hydra:description`. |
304 | 374 | The `rdfs:label` got removed from the `hydra:Class` as it was used instead of the `hydra:title`.
|
305 |
| -On `hydra:property` `rdfs:label` got renamed to `label` as the `rdfs` namespace is available in the context. |
| 375 | +On `hydra:property` `rdfs:label` got renamed to `label` as the `rdfs` namespace is available in the context. |
306 | 376 | The `ApiPlatform\Metadata\ErrorResource` and the `ConstraintViolation` (`ValidationException` class) are now generated directly from your PHP classes, only our `ConstraintViolationList` is hard-written and documents the `ConstraintViolation::violation` property. Therefore, your [own error resources](https://api-platform.com/docs/guides/error-resource/) are also documented. On top of that, we now set the `rdfs:subClassOf` to `hydra:Error`.
|
307 | 377 | `#[ApiProperty(hydra: false)]` allows you to skip a documented `hydra:supportedProperty` on a class.
|
308 |
| -On write operations, we added the [expectsHeader](https://www.hydra-cg.com/spec/latest/core/#hydra:expectsHeader) field. |
| 378 | +On write operations, we added the [expectsHeader](https://www.hydra-cg.com/spec/latest/core/#hydra:expectsHeader) field. |
309 | 379 |
|
310 | 380 | ## v4.1.0-beta.2
|
311 | 381 |
|
@@ -342,12 +412,12 @@ On write operations, we added the [expectsHeader](https://www.hydra-cg.com/spec/
|
342 | 412 |
|
343 | 413 | ### Notes
|
344 | 414 |
|
345 |
| -The [hydra patch](#6748) changes default `hydra:title` and uses the resource `shortname`. Previously the `hydra:title` information was duplicating the `hydra:description`. |
| 415 | +The [hydra patch](#6748) changes default `hydra:title` and uses the resource `shortname`. Previously the `hydra:title` information was duplicating the `hydra:description`. |
346 | 416 | The `rdfs:label` got removed from the `hydra:Class` as it was used instead of the `hydra:title`.
|
347 |
| -On `hydra:property` `rdfs:label` got renamed to `label` as the `rdfs` namespace is available in the context. |
| 417 | +On `hydra:property` `rdfs:label` got renamed to `label` as the `rdfs` namespace is available in the context. |
348 | 418 | The `ApiPlatform\Metadata\ErrorResource` and the `ConstraintViolation` (`ValidationException` class) are now generated directly from your PHP classes, only our `ConstraintViolationList` is hard-written and documents the `ConstraintViolation::violation` property. Therefore, your [own error resources](https://api-platform.com/docs/guides/error-resource/) are also documented. On top of that, we now set the `rdfs:subClassOf` to `hydra:Error`.
|
349 | 419 | `#[ApiProperty(hydra: false)]` allows you to skip a documented `hydra:supportedProperty` on a class.
|
350 |
| -On write operations, we added the [expectsHeader](https://www.hydra-cg.com/spec/latest/core/#hydra:expectsHeader) field. |
| 420 | +On write operations, we added the [expectsHeader](https://www.hydra-cg.com/spec/latest/core/#hydra:expectsHeader) field. |
351 | 421 |
|
352 | 422 |
|
353 | 423 | ## v4.1.0-alpha.1
|
@@ -967,7 +1037,7 @@ You should now install `api-platform/symfony` instead of `api-platform/core`.
|
967 | 1037 |
|
968 | 1038 | ### Bug fixes
|
969 | 1039 |
|
970 |
| -* [dc4fc84ba](https://github.com/api-platform/core/commit/dc4fc84ba93e22b4f44a37e90a93c6d079c1c620) fix(graphql): securityAfterResolver not called |
| 1040 | +* [dc4fc84ba](https://github.com/api-platform/core/commit/dc4fc84ba93e22b4f44a37e90a93c6d079c1c620) fix(graphql): securityAfterResolver not called |
971 | 1041 | * [9eb5c4e94](https://github.com/api-platform/core/commit/9eb5c4e941d0ebf59bc8ef5777b144db9b4a0899) fix(symfony): suggest `DocumentationAction` as replacement for deprecated `SwaggerUiAction` (#6894)
|
972 | 1042 |
|
973 | 1043 | ## v3.3.14
|
|
0 commit comments