Skip to content

Releases: api-platform/core

Version 2.5.4

13 Jan 16:44
v2.5.4
14ed547
Compare
Choose a tag to compare
  • Add a local cache in ResourceClassResolver::getResourceClass()
  • JSON Schema: Fix generation for non-resource class
  • Doctrine: Get class metadata only when it's needed in SearchFilter
  • GraphQL: Better detection of collection type

Version 2.5.3

23 Nov 11:28
v2.5.3
2d40268
Compare
Choose a tag to compare
  • Compatibility with Symfony 5
  • GraphQL: Fix hasNextPage when offset > itemsPerPage

Version 2.5.2

17 Nov 19:09
v2.5.2
677cd6e
Compare
Choose a tag to compare
  • Compatibility with Symfony 5 RC
  • Compatibility with NelmioCorsBundle 2
  • Fix the type of ApiResource::$paginationPartial
  • Ensure correct return type from AbstractItemNormalizer::normalizeRelation

Version 2.5.1

11 Nov 18:43
v2.5.1
56e0a29
Compare
Choose a tag to compare
  • Compatibility with Symfony 5
  • Fix a notice in SerializerContextBuilder
  • Fix dashed path segment generation
  • Fix support for custom filters without constructor in the @ApiFilter annotation
  • Fix a bug that was preventing to disable Swagger/OpenAPI
  • Return a 404 HTTP status code instead of 500 whe the identifier is invalid (e.g.: invalid UUID)
  • Add links to the documentation in @ApiResource annotation's attributes to improve DX
  • JSON:API: fix pagination being ignored when using the filter query parameter
  • Elasticsearch: Allow multiple queries to be set
  • OpenAPI: Do not append body parameter if it already exists
  • OpenAPI: Fix removal of illegal characters in schema name for Amazon API Gateway
  • Swagger UI: Add missing oauth2-redirect configuration
  • Swagger UI: Allow changing the location of Swagger UI
  • GraphQL: Fix an error that was occurring when SecurityBundle was not installed
  • HTTP/2 Server Push: Push relations as fetch

Version 2.5.0

30 Sep 15:17
v2.5.0
97d765b
Compare
Choose a tag to compare

Read the curated changelog.

  • Fix BC-break when using short-syntax notation for access_control
  • Fix BC-break when no item operations are declared
  • GraphQL: Adding serialization group difference condition for item_query and collection_query types
  • JSON Schema: Fix command

Version 2.5.0 beta 2

26 Sep 20:56
v2.5.0-beta.2
0e61379
Compare
Choose a tag to compare
Version 2.5.0 beta 2 Pre-release
Pre-release
  • Allow to not declare GET item operation
  • Add support for the Accept-Patch header
  • Make the the maximum_items_per_page attribute consistent with other attributes controlling pagination
  • Allow to use a string instead of an array for serializer groups
  • Test: Add an helper method to find the IRI of a resource
  • Test: Add assertions for testing response against JSON Schema from API resource
  • GraphQL: Add support for multipart request so user can create custom file upload mutations (#3041)
  • GraphQL: Add support for name converter (#2765)

Version 2.5.0 beta 1

17 Sep 14:47
v2.5.0-beta.1
30b9caa
Compare
Choose a tag to compare
Version 2.5.0 beta 1 Pre-release
Pre-release
  • Add an HTTP client dedicated to functional API testing (#2608)
  • Add PATCH support (#2895)
  • Add a command to generate json schemas api:json-schema:generate (#2996)
  • Add infrastructure to generate a JSON Schema from a Resource ApiPlatform\Core\JsonSchema\SchemaFactoryInterface (#2983)
  • Replaces access_control by security and adds a security_post_denormalize attribute (#2992)
  • Add basic infrastructure for cursor-based pagination (#2532)
  • Change ExistsFilter syntax to exists[property], old syntax still supported see #2243, fixes it's behavior on GraphQL (also related #2640).
  • Pagination with subresources (#2698)
  • Improve search filter id's managment (#1844)
  • Add support of name converter in filters (#2751, #2897), filter signature in abstract methods has changed see b42dfd1
  • Ability to change the Vary header via cacheHeaders attributes of a resource (#2758)
  • Ability to use the Query object in a paginator (#2493)
  • Compatibility with Symfony 4.3 (#2784)
  • Better handling of JsonSerializable classes (#2921)
  • Elasticsearch: Add pagination (#2919)
  • Add default, min, max specification in pagination parameter API docs (#3002)
  • Add a swagger version configuration option swagger.versions and deprecates the enable_swagger configuration option (#2998)
  • Order filter now documents asc/desc as enum (#2971)
  • GraphQL: BC Break Separate query resource operation attribute into item_query and collection_query operations so user can use different security and serialization groups for them (#2944, #3015)
  • GraphQL: Add support for custom queries and mutations (#2447)
  • GraphQL: Add support for custom types
  • GraphQL: Better pagination support (backwards pagination) (#2142)
  • GraphQL: Support the pagination per resource
  • GraphQL: Add the concept of stages in the workflow of the resolvers and add the possibility to disable them with operation attributes (#2959)
  • GraphQL: Add GraphQL Playground besides GraphiQL and add the possibility to change the default IDE (or to disable it) for the GraphQL endpoint
  • GraphQL: Add a command to print the schema in SDL api:graphql:export > schema.graphql (#2600)
  • GraphQL: Improve serialization performance by avoiding calls to the serialize PHP function
  • GraphQL: Allow to use a search and an exist filter on the same resource
  • GraphQL: Refactor the architecture of the whole system to allow the decoration of useful services (TypeConverter to manage custom types, SerializerContextBuilder to modify the (de)serialization context dynamically, etc.)

Notes:

Please read #2825 if you have issues with the behavior of Readable/Writable Link

Version 2.4.7

17 Sep 14:47
v2.4.7
5379326
Compare
Choose a tag to compare
  • Fix passing context to data persisters' remove method
  • Ensure OpenAPI normalizers properly expose the date format
  • Add source maps for Swagger UI
  • Improve error message when filter class is not imported
  • Add missing autowiring alias for Pagination
  • Doctrine: ensure that EntityManagerInterface is used in data providers

Version 2.4.6

20 Aug 07:30
v2.4.6
96bfc4d
Compare
Choose a tag to compare
  • GraphQL: Use correct resource configuration for filter arguments of nested collection
  • Swagger UI: compatibility with Internet Explorer 11
  • Varnish: Prevent cache miss by generating IRI for child related resources
  • Messenger: Unwrap exception thrown in handler for Symfony Messenger 4.3
  • Fix remaining Symfony 4.3 deprecation notices
  • Prevent cloning non clonable objects in previous_data
  • Return a 415 HTTP status code instead of a 406 one when a faulty Content-Type is sent
  • Fix WriteListener trying to generate IRI for non-resources
  • Allow to extract blank values from composite identifier

Version 2.4.5

22 Jun 10:50
v2.4.5
e056f5d
Compare
Choose a tag to compare
  • Fix denormalization of a constructor argument which is a collection of non-resources
  • Allow custom operations to return a different class than the expected resource class