3
3
All notable changes to this project will be documented in this file. This project adheres to
4
4
[ Semantic Versioning] ( http://semver.org/ ) and [ this changelog format] ( http://keepachangelog.com/ ) .
5
5
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
+
6
13
## [ 4.0.1] - 2022-04-24
7
14
8
15
### Fixed
@@ -23,12 +30,12 @@ All notable changes to this project will be documented in this file. This projec
23
30
- Package now depends on our fork of the Neomerx JSON: API package - ` laravel-json-api/neomerx-json-api ` . This is a
24
31
non-breaking change.
25
32
- ** 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.
27
34
28
35
### Removed
29
36
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
32
39
` laravel-json-api/testing ` package as a dev dependency. Refer to the upgrade guide for details. Classes/traits removed
33
40
are:
34
41
- ` MakesJsonApiRequests `
@@ -206,43 +213,43 @@ All notable changes to this project will be documented in this file. This projec
206
213
the [ documented validation implementation] ( ./docs/basics/validators.md ) instead.
207
214
- The deprecated ` json_api_request() ` helper was removed.
208
215
- 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.
211
218
- All deprecated methods on the ` Testing\MakesJsonApiRequests ` trait and ` Testing\TestResponse ` class were removed.
212
219
- Removed the ` Http\Requests\ValidatedRequest::validate() ` method, as Laravel replaced it with
213
220
` validateResolved() ` . This affects all JSON API request classes.
214
221
- 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 `
246
253
247
254
## [ 1.7.0] - 2020-04-13
248
255
@@ -450,30 +457,30 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
450
457
451
458
- The following classes in the ` Validation ` namespace were removed as the ` Validation\Validator `
452
459
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 `
456
463
- The deprecated ` EloquentController ` was removed - extend ` JsonApiController ` directly.
457
464
- The ` Store\EloquentAdapter ` was removed - extend ` Eloquent\AbstractAdapter ` directly.
458
465
- 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.
467
474
- The previously deprecated ` Eloquent\Concerns\AbstractRelation ` class was removed.
468
475
Extend ` Adapter\AbstractRelationshipAdapter ` and use the ` Eloquent\Concerns\QueriesRelations ` trait.
469
476
- Removed the deprecated ` Contracts\Utils\ConfigurableInterface ` as this has not been in use for some time.
470
477
- Removed the deprecated ` createResourceDocumentValidator() ` method from the factory.
471
478
- 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.
474
481
- 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.
477
484
- Removed the previously deprecated ` Schema\ExtractsAttributesTrait ` as it has not been used for some time.
478
485
479
486
## [ 1.0.0-beta.6] - 2019-01-03
@@ -543,24 +550,24 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
543
550
were not in use.
544
551
- The previously deprecated ` InteractsWithModels ` testing trait was removed.
545
552
- 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 `
564
571
565
572
### Deprecated
566
573
@@ -607,10 +614,10 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
607
614
- The ` Document\Error ` and ` Contracts\Document\MutableErrorInterface ` are deprecated and will be removed at ` 2.0 ` . You
608
615
should use the error interface/class from the ` neomerx/jsonapi ` package instead.
609
616
- 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 `
614
621
- The ` Contracts\Factories\FactoryInterface ` is deprecated and will be removed at ` 1.0 ` . You should
615
622
type-hint ` Factories\Factory ` directly instead.
616
623
@@ -642,10 +649,10 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
642
649
### Deprecated
643
650
644
651
- 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.
649
656
650
657
## [ 1.0.0-beta.2] - 2018-08-25
651
658
@@ -688,12 +695,12 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
688
695
### Removed
689
696
690
697
- The following deprecated methods have been removed from the Eloquent adapter:
691
- - ` first ` : use ` searchOne ` instead.
698
+ - ` first ` : use ` searchOne ` instead.
692
699
693
700
### Deprecated
694
701
695
702
- 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.
697
704
698
705
### Fixed
699
706
@@ -775,8 +782,8 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
775
782
- Can now generate authorizers using the ` make:json-api:authorizer ` command, or the ` --auth ` flag when generating a
776
783
resource with ` make:json-api:resource ` .
777
784
- 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.
780
787
- [ #163 ] ( https://github.com/cloudcreativity/laravel-json-api/issues/163 )
781
788
Added relationship hooks to the JSON API controller.
782
789
@@ -789,20 +796,20 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
789
796
### Removed
790
797
791
798
- 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 `
796
803
797
804
### Deprecated
798
805
799
806
- Eloquent schemas are now deprecated in favour of using generic schemas. This is because of the amount of processing
800
807
involved without any benefit, as generic schemas are straight-forward to construct. The following classes/traits are
801
808
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 ` ).
806
813
807
814
## [ 1.0.0-alpha.1] - 2018-04-29
808
815
0 commit comments