33All notable changes to this project will be documented in this file. This project adheres to
44[ Semantic Versioning] ( http://semver.org/ ) and [ this changelog format] ( http://keepachangelog.com/ ) .
55
6+ ## Unreleased
7+
8+ ### Changed
9+
10+ - Upgraded ` laravel-json-api/neomerx-json-api ` dependency to ` ^1.2 ` . This allows v1, v2 and v3 of the PSR log
11+ dependency, whereas previously only v1 was allowed.
12+
613## [ 4.0.1] - 2022-04-24
714
815### Fixed
@@ -23,12 +30,12 @@ All notable changes to this project will be documented in this file. This projec
2330- Package now depends on our fork of the Neomerx JSON: API package - ` laravel-json-api/neomerx-json-api ` . This is a
2431 non-breaking change.
2532- ** BREAKING** Added return types to internal methods, to remove deprecation notices in PHP 8.1. This will affect your
26- implementation if you have extended any of our classes and overloaded a method that now has a return type.
33+ implementation if you have extended any of our classes and overloaded a method that now has a return type.
2734
2835### Removed
2936
30- - ** BREAKING** Removed the following classes from the ` CloudCreativity\LaravelJsonApi\Testing ` namespace. You must
31- use classes (with the same names) from the ` LaravelJsonApi\Testing ` namespace, after installing the
37+ - ** BREAKING** Removed the following classes from the ` CloudCreativity\LaravelJsonApi\Testing ` namespace. You must
38+ use classes (with the same names) from the ` LaravelJsonApi\Testing ` namespace, after installing the
3239 ` laravel-json-api/testing ` package as a dev dependency. Refer to the upgrade guide for details. Classes/traits removed
3340 are:
3441 - ` MakesJsonApiRequests `
@@ -206,43 +213,43 @@ All notable changes to this project will be documented in this file. This projec
206213 the [ documented validation implementation] ( ./docs/basics/validators.md ) instead.
207214- The deprecated ` json_api_request() ` helper was removed.
208215- The following methods were removed from the JSON API service (and are therefore no longer available via the facade):
209- - ` request() ` : use ` currentRoute() ` instead.
210- - ` defaultApi() ` : set the default API via ` LaravelJsonApi::defaultApi() ` instead.
216+ - ` request() ` : use ` currentRoute() ` instead.
217+ - ` defaultApi() ` : set the default API via ` LaravelJsonApi::defaultApi() ` instead.
211218- All deprecated methods on the ` Testing\MakesJsonApiRequests ` trait and ` Testing\TestResponse ` class were removed.
212219- Removed the ` Http\Requests\ValidatedRequest::validate() ` method, as Laravel replaced it with
213220 ` validateResolved() ` . This affects all JSON API request classes.
214221- Additionally, the following deprecated interfaces, classes and traits were removed:
215- - ` Api\ResourceProvider ` - extend ` Api\AbstractProvider ` instead.
216- - ` Contracts\Document\MutableErrorInterface `
217- - ` Contracts\Exceptions\ErrorIdAllocatorInterface `
218- - ` Contracts\Factories\FactoryInterface `
219- - ` Contracts\Http\Responses\ErrorResponseInterface `
220- - ` Contracts\Object\* ` - all interfaces in this namespace.
221- - ` Contracts\Repositories\ErrorRepositoryInterface `
222- - ` Contracts\Utils\ErrorReporterInterface `
223- - ` Contracts\Utils\ErrorsAwareInterface `
224- - ` Contracts\Utils\ReplacerInterface `
225- - ` Document\Error ` - use ` Document\Error\Error ` instead.
226- - ` Eloquent\AbstractSchema ` - extend the ` neomerx/json-api ` schema instead.
227- - ` Eloquent\Concerns\SerializesModels ` trait.
228- - ` Exceptions\MutableErrorCollection `
229- - ` Exceptions\NotFoundException `
230- - ` Exceptions\RecordNotFoundException ` - use ` Exceptions\ResourceNotFoundException ` instead.
231- - ` Http\Query\ChecksQueryParameters ` trait.
232- - ` Http\Requests\JsonApiRequest `
233- - ` Http\Responses\ErrorResponse `
234- - ` Object\* ` - all classes in this namespace.
235- - ` Repositories\ErrorRepository `
236- - ` Schema\AbstractSchema ` - extend the ` neomerx/json-api ` schema instead.
237- - ` Schema\CreatesEloquentIdentities ` trait.
238- - ` Schema\CreatesLinks ` trait.
239- - ` Schema\EloquentSchema ` - extend the ` neomerx/json-api ` schema instead.
240- - ` Utils\AbstractErrorBag `
241- - ` Utils\ErrorBag `
242- - ` Utils\ErrorCreatorTrait `
243- - ` Utils\ErrorsAwareTrait `
244- - ` Utils\Pointer `
245- - ` Utils\Replacer `
222+ - ` Api\ResourceProvider ` - extend ` Api\AbstractProvider ` instead.
223+ - ` Contracts\Document\MutableErrorInterface `
224+ - ` Contracts\Exceptions\ErrorIdAllocatorInterface `
225+ - ` Contracts\Factories\FactoryInterface `
226+ - ` Contracts\Http\Responses\ErrorResponseInterface `
227+ - ` Contracts\Object\* ` - all interfaces in this namespace.
228+ - ` Contracts\Repositories\ErrorRepositoryInterface `
229+ - ` Contracts\Utils\ErrorReporterInterface `
230+ - ` Contracts\Utils\ErrorsAwareInterface `
231+ - ` Contracts\Utils\ReplacerInterface `
232+ - ` Document\Error ` - use ` Document\Error\Error ` instead.
233+ - ` Eloquent\AbstractSchema ` - extend the ` neomerx/json-api ` schema instead.
234+ - ` Eloquent\Concerns\SerializesModels ` trait.
235+ - ` Exceptions\MutableErrorCollection `
236+ - ` Exceptions\NotFoundException `
237+ - ` Exceptions\RecordNotFoundException ` - use ` Exceptions\ResourceNotFoundException ` instead.
238+ - ` Http\Query\ChecksQueryParameters ` trait.
239+ - ` Http\Requests\JsonApiRequest `
240+ - ` Http\Responses\ErrorResponse `
241+ - ` Object\* ` - all classes in this namespace.
242+ - ` Repositories\ErrorRepository `
243+ - ` Schema\AbstractSchema ` - extend the ` neomerx/json-api ` schema instead.
244+ - ` Schema\CreatesEloquentIdentities ` trait.
245+ - ` Schema\CreatesLinks ` trait.
246+ - ` Schema\EloquentSchema ` - extend the ` neomerx/json-api ` schema instead.
247+ - ` Utils\AbstractErrorBag `
248+ - ` Utils\ErrorBag `
249+ - ` Utils\ErrorCreatorTrait `
250+ - ` Utils\ErrorsAwareTrait `
251+ - ` Utils\Pointer `
252+ - ` Utils\Replacer `
246253
247254## [ 1.7.0] - 2020-04-13
248255
@@ -450,30 +457,30 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
450457
451458- The following classes in the ` Validation ` namespace were removed as the ` Validation\Validator `
452459 class can be used instead, or validators can be constructed via the factory instead:
453- - ` AbstractValidator `
454- - ` ResourceValidator `
455- - ` QueryValidator `
460+ - ` AbstractValidator `
461+ - ` ResourceValidator `
462+ - ` QueryValidator `
456463- The deprecated ` EloquentController ` was removed - extend ` JsonApiController ` directly.
457464- The ` Store\EloquentAdapter ` was removed - extend ` Eloquent\AbstractAdapter ` directly.
458465- The following previously deprecated methods/properties were removed from the ` EloquentAdapter ` :
459- - public method ` queryRelation() ` : renamed ` queryToMany() ` .
460- - protected property ` $with ` : renamed ` $defaultWith ` .
461- - protected method ` keyForAttribute() ` : renamed ` modelKeyForField() ` .
462- - protected method ` columnForField() ` : renamed ` getSortColumn() ` .
463- - protected method ` all() ` : renamed ` searchAll() ` .
464- - protected method ` extractIncludePaths() ` : overload the ` getQueryParameters() ` method instead.
465- - protected method ` extractFilters() ` : overload the ` getQueryParameters() ` method instead.
466- - protected method ` extractPagination() ` : overload the ` getQueryParameters() ` method instead.
466+ - public method ` queryRelation() ` : renamed ` queryToMany() ` .
467+ - protected property ` $with ` : renamed ` $defaultWith ` .
468+ - protected method ` keyForAttribute() ` : renamed ` modelKeyForField() ` .
469+ - protected method ` columnForField() ` : renamed ` getSortColumn() ` .
470+ - protected method ` all() ` : renamed ` searchAll() ` .
471+ - protected method ` extractIncludePaths() ` : overload the ` getQueryParameters() ` method instead.
472+ - protected method ` extractFilters() ` : overload the ` getQueryParameters() ` method instead.
473+ - protected method ` extractPagination() ` : overload the ` getQueryParameters() ` method instead.
467474- The previously deprecated ` Eloquent\Concerns\AbstractRelation ` class was removed.
468475 Extend ` Adapter\AbstractRelationshipAdapter ` and use the ` Eloquent\Concerns\QueriesRelations ` trait.
469476- Removed the deprecated ` Contracts\Utils\ConfigurableInterface ` as this has not been in use for some time.
470477- Removed the deprecated ` createResourceDocumentValidator() ` method from the factory.
471478- Removed the following previously deprecated methods from the ` TestResponse ` class:
472- - ` assertJsonApiResponse() ` : use ` jsonApi() ` .
473- - ` normalizeIds() ` and ` normalizeId() ` as these are not in use by the refactored test implementation.
479+ - ` assertJsonApiResponse() ` : use ` jsonApi() ` .
480+ - ` normalizeIds() ` and ` normalizeId() ` as these are not in use by the refactored test implementation.
474481- Removed the following previously deprecated methods from the JSON API service/facade:
475- - ` report() ` : no longer supported for access via the service.
476- - ` requestOrFail() ` : no longer required.
482+ - ` report() ` : no longer supported for access via the service.
483+ - ` requestOrFail() ` : no longer required.
477484- Removed the previously deprecated ` Schema\ExtractsAttributesTrait ` as it has not been used for some time.
478485
479486## [ 1.0.0-beta.6] - 2019-01-03
@@ -543,24 +550,24 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
543550 were not in use.
544551- The previously deprecated ` InteractsWithModels ` testing trait was removed.
545552- The following (majority previously deprecated methods) on the ` TestResponse ` class were removed:
546- - ` assertDocument `
547- - ` assertResourceResponse `
548- - ` assertResourcesResponse `
549- - ` assertRelatedResourcesResponse `
550- - ` assertSearchResponse `
551- - ` assertSearchOneResponse `
552- - ` assertCreateResponse `
553- - ` assertReadResponse `
554- - ` assertUpdateResponse `
555- - ` assertDeleteResponse `
556- - ` assertRelatedResourceResponse `
557- - ` assertHasOneRelationshipResponse `
558- - ` assertDataCollection `
559- - ` assertDataResource `
560- - ` assertDataResourceIdentifier `
561- - ` assertSearchByIdResponse `
562- - ` assertSearchedPolymorphIds `
563- - ` assertReadPolymorphHasMany `
553+ - ` assertDocument `
554+ - ` assertResourceResponse `
555+ - ` assertResourcesResponse `
556+ - ` assertRelatedResourcesResponse `
557+ - ` assertSearchResponse `
558+ - ` assertSearchOneResponse `
559+ - ` assertCreateResponse `
560+ - ` assertReadResponse `
561+ - ` assertUpdateResponse `
562+ - ` assertDeleteResponse `
563+ - ` assertRelatedResourceResponse `
564+ - ` assertHasOneRelationshipResponse `
565+ - ` assertDataCollection `
566+ - ` assertDataResource `
567+ - ` assertDataResourceIdentifier `
568+ - ` assertSearchByIdResponse `
569+ - ` assertSearchedPolymorphIds `
570+ - ` assertReadPolymorphHasMany `
564571
565572### Deprecated
566573
@@ -607,10 +614,10 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
607614- The ` Document\Error ` and ` Contracts\Document\MutableErrorInterface ` are deprecated and will be removed at ` 2.0 ` . You
608615 should use the error interface/class from the ` neomerx/jsonapi ` package instead.
609616- The following utility classes/traits/interfaces are deprecated and will be removed at ` 2.0 ` :
610- - ` Utils/ErrorCreatorTrait `
611- - ` Utils/ErrorsAwareTrait ` and ` Contracts\Utils\ErrorsAwareInterface `
612- - ` Utils/Pointers `
613- - ` Utils/Replacer ` and ` Contracts\Utils\ReplacerInterface `
617+ - ` Utils/ErrorCreatorTrait `
618+ - ` Utils/ErrorsAwareTrait ` and ` Contracts\Utils\ErrorsAwareInterface `
619+ - ` Utils/Pointers `
620+ - ` Utils/Replacer ` and ` Contracts\Utils\ReplacerInterface `
614621- The ` Contracts\Factories\FactoryInterface ` is deprecated and will be removed at ` 1.0 ` . You should
615622 type-hint ` Factories\Factory ` directly instead.
616623
@@ -642,10 +649,10 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
642649### Deprecated
643650
644651- The following methods on the Eloquent adapter will be removed in ` 1.0.0 ` as they are no longer required:
645- - ` extractIncludePaths `
646- - ` extractFilters `
647- - ` extractPagination `
648- - ` columnForField ` : use ` getSortColumn ` instead.
652+ - ` extractIncludePaths `
653+ - ` extractFilters `
654+ - ` extractPagination `
655+ - ` columnForField ` : use ` getSortColumn ` instead.
649656
650657## [ 1.0.0-beta.2] - 2018-08-25
651658
@@ -688,12 +695,12 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
688695### Removed
689696
690697- The following deprecated methods have been removed from the Eloquent adapter:
691- - ` first ` : use ` searchOne ` instead.
698+ - ` first ` : use ` searchOne ` instead.
692699
693700### Deprecated
694701
695702- The follow methods are deprecated on the Eloquent adapter and will be removed in ` 1.0.0 ` :
696- - ` queryRelation ` : use ` queryToMany ` or ` queryToOne ` instead.
703+ - ` queryRelation ` : use ` queryToMany ` or ` queryToOne ` instead.
697704
698705### Fixed
699706
@@ -775,8 +782,8 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
775782- Can now generate authorizers using the ` make:json-api:authorizer ` command, or the ` --auth ` flag when generating a
776783 resource with ` make:json-api:resource ` .
777784- The JSON API controller now has the following additional hooks:
778- - ` searching ` for an * index* action.
779- - ` reading ` for a * read* action.
785+ - ` searching ` for an * index* action.
786+ - ` reading ` for a * read* action.
780787- [ #163 ] ( https://github.com/cloudcreativity/laravel-json-api/issues/163 )
781788 Added relationship hooks to the JSON API controller.
782789
@@ -789,20 +796,20 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
789796### Removed
790797
791798- The previous authorizer implementation has been removed in favour of the new one. The following were deleted:
792- - ` Contract\Authorizer\AuthorizerInterface `
793- - ` Authorizer\AbstractAuthorizer `
794- - ` Authorizer\ReadOnlyAuthorizer `
795- - ` Exceptions\AuthorizationException `
799+ - ` Contract\Authorizer\AuthorizerInterface `
800+ - ` Authorizer\AbstractAuthorizer `
801+ - ` Authorizer\ReadOnlyAuthorizer `
802+ - ` Exceptions\AuthorizationException `
796803
797804### Deprecated
798805
799806- Eloquent schemas are now deprecated in favour of using generic schemas. This is because of the amount of processing
800807 involved without any benefit, as generic schemas are straight-forward to construct. The following classes/traits are
801808 deprecated:
802- - ` Eloquent\AbstractSchema `
803- - ` Eloquent\SerializesModels `
804- - ` Schema\CreatesLinks `
805- - ` Schema\EloquentSchema ` (was deprecated in ` 1.0.0-alpha.1 ` ).
809+ - ` Eloquent\AbstractSchema `
810+ - ` Eloquent\SerializesModels `
811+ - ` Schema\CreatesLinks `
812+ - ` Schema\EloquentSchema ` (was deprecated in ` 1.0.0-alpha.1 ` ).
806813
807814## [ 1.0.0-alpha.1] - 2018-04-29
808815
0 commit comments