core

The server component of API Platform: hypermedia and GraphQL APIs in minutes

MIT License

Downloads
33.5M
Stars
2.4K
Committers
448
core - v3.0.9

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v3.0.8...v3.0.9

core - v2.7.6

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v2.7.5...v2.7.6

core - v3.0.8

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v3.0.7...v3.0.8

core - v3.0.7

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v3.0.6...v3.0.7

core - v3.0.6

Published by soyuka almost 2 years ago

What's Changed

Full Changelog: https://github.com/api-platform/core/compare/v3.0.5...v3.0.6

core - v3.0.5

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v3.0.4...v3.0.5

core - v2.7.5

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v2.7.4...v2.7.5

core - v3.0.4

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v3.0.3...v3.0.4

core - v2.7.4

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v2.7.3...v2.7.4

core - v3.0.3

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v3.0.2...v3.0.3

core - v2.7.3

Published by soyuka almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v2.7.2...v2.7.3

core - Version 3.0.0

Published by dunglas about 2 years ago

  • Identifiers: Allow plain identifiers is removed, use a custom normalizer if needed (#4811)
  • Symfony: deprecated configuration was removed (#4811)
  • DataTransformers: concept got removed, input and output classes are handled as anonymous resources (#4805)
  • Doctrine: some interfaces have changed (extensions and filters), string $operationName got removed in favor of ApiPlatform\Metadata\Operation $operation. (#4779)
  • Doctrine: ContextAware interfaces were merged with their child interfaces you can safely remove them (#4779)
  • Metadata: the Core namespace got removed (#4805)
  • Mercure: deprecation removed (#4805)
  • ExpressionLanguage: deprecated class ApiPlatform\Symfony\Security\ExpressionLanguage has been removed in favor of Symfony\Component\Security\Core\Authorization\ExpressionLanguage.
  • JsonLd: correct the api_jsonld_context route format (#4844)
  • Metadata: remove metadata_backward_compatibility_layer option (#4843)
  • OpenApi: fixed required fields (in and name) within ApiPlatform\OpenApi\Model\Parameter BC
  • Metadata: CRUD on subresource with experimental write support (#4932)
  • Symfony: 6.1 compatibility and remove 4.4 and 5.4 support (#4851)
  • Symfony: removed the $exceptionOnNoToken parameter in ResourceAccessChecker::__construct() (#4905)
  • Symfony: use conventional service names for Doctrine state providers and processors (#4859)
  • Symfony: adjust mapping paths to the SF best practices for Bundles BC Resources/config/api_resources to config/api_resources (#4853)
  • Symfony: src/ApiResource/ is the recommended place for API models (#4874)
  • Cache: remove guzzle from the Varnish purger (#4872)
  • JsonLd: correct the api_jsonld_context route format (#4844)

See also the changelog of API Platform 2.7 which contains the non-breaking changes

core - Version 2.7.0

Published by dunglas about 2 years ago

Changelog

  • Swagger UI: Add usePkceWithAuthorizationCodeGrant to Swagger UI initOAuth (#4649)
  • BC: mapping.paths in configuration should override bundles configuration (#4465)
  • GraphQL: Add the ability to use different pagination types for the queries of a resource (#4453)
  • Security: BC Fix ApiProperty security attribute expression being passed a class string for the object variable on updates/creates - null is now passed instead if the object is not available (#4184)
  • Security: ApiProperty now supports a security_post_denormalize attribute, which provides access to the object variable for the object being updated/created and previous_object for the object before it was updated (#4184)
  • Maker: Add make:data-provider and make :data-persister commands to generate a data provider / persister (#3850)
  • JSON Schema: Add support for generating property schema with numeric constraint restrictions (#4225)
  • JSON Schema: Add support for generating property schema with Collection restriction (#4182)
  • JSON Schema: Add support for generating property schema format for Url and Hostname (#4185)
  • JSON Schema: Add support for generating property schema with Count restriction (#4186)
  • JSON Schema: Manage Compound constraint when generating property metadata (#4180)
  • Validator: Add an option to disable query parameter validation (#4165)
  • JSON Schema: Add support for generating property schema with Choice restriction (#4162)
  • JSON Schema: Add support for generating property schema with Range restriction (#4158)
  • JSON Schema: Add support for generating property schema with Unique restriction (#4159)
  • BC: Change api_platform.listener.request.add_format priority from 7 to 28 to execute it before firewall (priority 8) (#3599)
  • BC: Use @final annotation in ORM filters (#4109)
  • Allow defining exception_to_status per operation (#3519)
  • Doctrine: Better exception to find which resource is linked to an exception (#3965)
  • Doctrine: Allow mixed type value for date filter (notice if invalid) (#3870)
  • Doctrine: Add nulls_always_first and nulls_always_last to nulls_comparison in order filter (#4103)
  • Doctrine: Add a global order_nulls_comparison configuration (#3117)
  • MongoDB: date_immutable support (#3940)
  • DataProvider: Add TraversablePaginator (#3783)
  • JSON:API: Support inclusion of resources from path (#3288)
  • Swagger UI: Add swagger_ui_extra_configuration to Swagger / OpenAPI configuration (#3731)
  • Allow controller argument with a name different from $data thanks to an argument resolver (#3263)
  • GraphQL: Support ApiProperty security (#4143)
  • GraphQL: BC Fix security on association collection properties. The collection resource item_query security is no longer used. ApiProperty security can now be used to secure collection (or any other) properties. (#4143)
  • Deprecate allow_plain_identifiers option (#4167)
  • Exception: Add the ability to customize multiple status codes based on the validation exception (#4017)
  • ApiLoader: Support _format resolving (#4292)
  • Metadata: new namespace ApiPlatform\Metadata instead of ApiPlatform\Core\Metadata, for example ApiPlatform\Metadata\ApiResource (#4351)
  • Metadata: deprecation of ApiPlatform\Core\Annotation (#4351)
  • Metadata: ApiPlatform\Core\Metadata\Resource\Factory\ResourceMetadataFactoryInterface is deprecated in favor of ApiPlatform\Metadata\Resource\Factory\ResourceMetadataCollectionFactoryInterface (#4351)
  • Metadata: item and collection prefixes for operations are deprecated, as well as the ApiPlatform\Core\Api\OperationType class (#4351)
  • Graphql: ApiPlatform\Metadata\GraphQl follow the same metadata conventions (a Subscription operation is available and isn't hidden behind an update Mutation anymore), interfaces got simplified (being @experimental) (#4351)
  • IriConverter: new interface for ApiPlatform\Bridge\Symfony\Routing\IriConverter that adds an operationName, same for ApiPlatform\Api\IdentifiersExtractor (#4351)
  • DataProvider: new ApiPlatform\State\ProviderInterface that replaces DataProviders (#4351)
  • DataPersister: new ApiPlatform\State\ProcessorInterface that replaces DataPersisters (#4351)
  • A new configuration is available to keep old services (IriConverter, IdentifiersExtractor and OpenApiFactory) metadata_backward_compatibility_layer (defaults to false) (#4351)
  • Add support for security_post_validation attribute
  • Mark the GraphQL subsystem as stable (#4500)
  • feat(test): add Client::loginUser() (#4588)
  • feat(http_cache): use symfony/http-client instead of guzzlehttp/guzzle, ApiPlatform\Core\HttpCache\PurgerInterface is deprecated in favor of ApiPlatform\HttpCache\PurgerInterface, new purger that uses PURGE (#4695)
  • Implements Skolem IRIs instead of blank nodes, can be disabled using iri: false (#4731)
  • IRI Converter: new interface declaring getIriFromResource and getResourceFromIri (#4734)
  • Backward compatibility: fix dependency injection (#4744)
  • Metadata: allow extra keys within defaults (#4743)
  • Backward compatibility: fix upgrade script for subresources (#4747)
  • Backward compatibility: fix dependency injection (#4748)
  • GraphQl: output creates its own type in TypeBuilder (#4766)
  • Metadata: clear missing metadata cache pools (#4770)
  • Metadata: property override when value is set (#4767)
  • Metadata: add read and write to extractor (#4760)
  • JsonSchema: factory backward compatibility layer (#4758)
  • Metadata: defaults properly overrides metadata (#4759)
  • Metadata: Add missing processor and provider to extractor (#4754)
  • Metadata: defaults deprecation (#4772)
  • Json-Ld: property metadata types and iris (#4769)
  • Symfony: write listener uri variables converter (#4774)
  • Metadata: extra properties operation inheritance (#4773)
  • Processor: adds previous_data to the context (#4776)
  • JsonApi: Use skolem IRIs (#4796)
  • Metadata: Merge defaults instead of overriding (#4796)
  • ApiTestCase: Fix JSON Schema assertions (#4796)
  • Input/Output: backport serializer changes to make input/output work as resource classes without data transformers (#4804)
  • GraphQl: the SerializerContextBuilder interface changes to reflect operation instead of the operation name BC (#4804)
  • Metadata: reduce coalescing operator call (#4810)
  • Serializer: ignore no-operation on SerializeListener (#4828)
  • Schema: schema generation with default operation (#4818)
  • Symfony: deprecate the $exceptionOnNoToken parameter in ResourceAccessChecker::__construct() (#4900)
  • chore: remove @experimental phpdoc (#4933)
  • Metadata: do not set id when identifier is false (#4880)
  • Metadata: automatic GET operation when none is declared (#4881)
  • Metadata: exception to status on operations (#4861)
  • Serializer: adds the JSON_INVALID_UTF8_IGNORE flag to JsonEncode (#4741)
  • Symfony: autoconfigure legacy Doctrine extensions (#4909)
  • Elasticsearch: skip metadata without ES nodes (#4913)
core - v3.0.0-rc.2

Published by vincentchalamon over 2 years ago

What's Changed

Full Changelog: https://github.com/api-platform/core/compare/v3.0.0-rc.1...v3.0.0-rc.2

core - v2.7.0-rc.2

Published by vincentchalamon over 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/api-platform/core/compare/v2.7.0-rc.1...v2.7.0-rc.2

core - v3.0.0-rc.1

Published by vincentchalamon over 2 years ago

core - v2.7.0-rc.1

Published by vincentchalamon over 2 years ago

core - Version 2.6.8

Published by dunglas almost 3 years ago

  • fix: serializing embedded non resource objects
  • chore(openapi): upgrade Swagger UI to version 4.1.3
  • chore(openapi): upgrade ReDoc to version 2.0.0-rc.59
  • chore(graphql): upgrade GraphiQL to version 1.5.16
core - Version 2.6.7

Published by dunglas almost 3 years ago

  • feat: compatibility with Symfony 6 (#4503, #4582, #4604, #4564)
  • feat: compatibility with PHP 8.1 (#4503, #4582, #4604)
  • fix: pass the child context when normalizing nested non-resource objects (#4521)
core - Version 2.6.6

Published by dunglas about 3 years ago

  • fix(json-schema): consider SplFileInfo class as a binary type (#4332)
  • fix(json-schema): use collectionKeyType for building JSON Schema (#4385)
  • fix(openapi): failing recursion on api resources with "paths" key (#4325)
  • fix(graphql): make sure form content type is recognized as a multipart request (#4461)
  • fix(doctrine): handle inverse side of OneToOne association in Doctrine search filter (#4366)
  • fix(doctrine): usage of deprecated DBAL type constants (#4399)
  • fix(test): fix REMOTE_ADDR support in ApiTestCase (#4446)
  • fix(docs): use asset_package for all assets (#4470)
  • fix(docs): upgrade Swagger UI to version 3.52.3 (#4477)
  • fix(docs): upgrade ReDoc to version 2.0.0-rc.56 (#4477)
  • fix(docs): upgrade Swagger UI to version 2.0.0-rc.56 (#4477)