@@ -11,6 +11,15 @@ All notable changes to this project will be documented in this file. This projec
11
11
` laravel-json-api/neomerx-json-api ` . Refer to the [ Upgrade Guide] ( ./docs/upgrade.md ) for details of the required
12
12
changes.
13
13
14
+ ## [ 4.1.0] - 2023-01-19
15
+
16
+ ### Changed
17
+
18
+ - Drop support for PHP ` 7.4 ` - minimum PHP version is now ` 8.0 ` .
19
+ - Drop support for Laravel 8.
20
+ - Upgraded ` laravel-json-api/neomerx-json-api ` dependency to ` ^1.2 ` . This allows v1, v2 and v3 of the PSR log
21
+ dependency, whereas previously only v1 was allowed.
22
+
14
23
## [ 4.0.1] - 2022-04-24
15
24
16
25
### Fixed
@@ -31,12 +40,12 @@ All notable changes to this project will be documented in this file. This projec
31
40
- Package now depends on our fork of the Neomerx JSON: API package - ` laravel-json-api/neomerx-json-api ` . This is a
32
41
non-breaking change.
33
42
- ** BREAKING** Added return types to internal methods, to remove deprecation notices in PHP 8.1. This will affect your
34
- implementation if you have extended any of our classes and overloaded a method that now has a return type.
43
+ implementation if you have extended any of our classes and overloaded a method that now has a return type.
35
44
36
45
### Removed
37
46
38
- - ** BREAKING** Removed the following classes from the ` CloudCreativity\LaravelJsonApi\Testing ` namespace. You must
39
- use classes (with the same names) from the ` LaravelJsonApi\Testing ` namespace, after installing the
47
+ - ** BREAKING** Removed the following classes from the ` CloudCreativity\LaravelJsonApi\Testing ` namespace. You must
48
+ use classes (with the same names) from the ` LaravelJsonApi\Testing ` namespace, after installing the
40
49
` laravel-json-api/testing ` package as a dev dependency. Refer to the upgrade guide for details. Classes/traits removed
41
50
are:
42
51
- ` MakesJsonApiRequests `
@@ -214,43 +223,43 @@ All notable changes to this project will be documented in this file. This projec
214
223
the [ documented validation implementation] ( ./docs/basics/validators.md ) instead.
215
224
- The deprecated ` json_api_request() ` helper was removed.
216
225
- The following methods were removed from the JSON API service (and are therefore no longer available via the facade):
217
- - ` request() ` : use ` currentRoute() ` instead.
218
- - ` defaultApi() ` : set the default API via ` LaravelJsonApi::defaultApi() ` instead.
226
+ - ` request() ` : use ` currentRoute() ` instead.
227
+ - ` defaultApi() ` : set the default API via ` LaravelJsonApi::defaultApi() ` instead.
219
228
- All deprecated methods on the ` Testing\MakesJsonApiRequests ` trait and ` Testing\TestResponse ` class were removed.
220
229
- Removed the ` Http\Requests\ValidatedRequest::validate() ` method, as Laravel replaced it with
221
230
` validateResolved() ` . This affects all JSON API request classes.
222
231
- Additionally, the following deprecated interfaces, classes and traits were removed:
223
- - ` Api\ResourceProvider ` - extend ` Api\AbstractProvider ` instead.
224
- - ` Contracts\Document\MutableErrorInterface `
225
- - ` Contracts\Exceptions\ErrorIdAllocatorInterface `
226
- - ` Contracts\Factories\FactoryInterface `
227
- - ` Contracts\Http\Responses\ErrorResponseInterface `
228
- - ` Contracts\Object\* ` - all interfaces in this namespace.
229
- - ` Contracts\Repositories\ErrorRepositoryInterface `
230
- - ` Contracts\Utils\ErrorReporterInterface `
231
- - ` Contracts\Utils\ErrorsAwareInterface `
232
- - ` Contracts\Utils\ReplacerInterface `
233
- - ` Document\Error ` - use ` Document\Error\Error ` instead.
234
- - ` Eloquent\AbstractSchema ` - extend the ` neomerx/json-api ` schema instead.
235
- - ` Eloquent\Concerns\SerializesModels ` trait.
236
- - ` Exceptions\MutableErrorCollection `
237
- - ` Exceptions\NotFoundException `
238
- - ` Exceptions\RecordNotFoundException ` - use ` Exceptions\ResourceNotFoundException ` instead.
239
- - ` Http\Query\ChecksQueryParameters ` trait.
240
- - ` Http\Requests\JsonApiRequest `
241
- - ` Http\Responses\ErrorResponse `
242
- - ` Object\* ` - all classes in this namespace.
243
- - ` Repositories\ErrorRepository `
244
- - ` Schema\AbstractSchema ` - extend the ` neomerx/json-api ` schema instead.
245
- - ` Schema\CreatesEloquentIdentities ` trait.
246
- - ` Schema\CreatesLinks ` trait.
247
- - ` Schema\EloquentSchema ` - extend the ` neomerx/json-api ` schema instead.
248
- - ` Utils\AbstractErrorBag `
249
- - ` Utils\ErrorBag `
250
- - ` Utils\ErrorCreatorTrait `
251
- - ` Utils\ErrorsAwareTrait `
252
- - ` Utils\Pointer `
253
- - ` Utils\Replacer `
232
+ - ` Api\ResourceProvider ` - extend ` Api\AbstractProvider ` instead.
233
+ - ` Contracts\Document\MutableErrorInterface `
234
+ - ` Contracts\Exceptions\ErrorIdAllocatorInterface `
235
+ - ` Contracts\Factories\FactoryInterface `
236
+ - ` Contracts\Http\Responses\ErrorResponseInterface `
237
+ - ` Contracts\Object\* ` - all interfaces in this namespace.
238
+ - ` Contracts\Repositories\ErrorRepositoryInterface `
239
+ - ` Contracts\Utils\ErrorReporterInterface `
240
+ - ` Contracts\Utils\ErrorsAwareInterface `
241
+ - ` Contracts\Utils\ReplacerInterface `
242
+ - ` Document\Error ` - use ` Document\Error\Error ` instead.
243
+ - ` Eloquent\AbstractSchema ` - extend the ` neomerx/json-api ` schema instead.
244
+ - ` Eloquent\Concerns\SerializesModels ` trait.
245
+ - ` Exceptions\MutableErrorCollection `
246
+ - ` Exceptions\NotFoundException `
247
+ - ` Exceptions\RecordNotFoundException ` - use ` Exceptions\ResourceNotFoundException ` instead.
248
+ - ` Http\Query\ChecksQueryParameters ` trait.
249
+ - ` Http\Requests\JsonApiRequest `
250
+ - ` Http\Responses\ErrorResponse `
251
+ - ` Object\* ` - all classes in this namespace.
252
+ - ` Repositories\ErrorRepository `
253
+ - ` Schema\AbstractSchema ` - extend the ` neomerx/json-api ` schema instead.
254
+ - ` Schema\CreatesEloquentIdentities ` trait.
255
+ - ` Schema\CreatesLinks ` trait.
256
+ - ` Schema\EloquentSchema ` - extend the ` neomerx/json-api ` schema instead.
257
+ - ` Utils\AbstractErrorBag `
258
+ - ` Utils\ErrorBag `
259
+ - ` Utils\ErrorCreatorTrait `
260
+ - ` Utils\ErrorsAwareTrait `
261
+ - ` Utils\Pointer `
262
+ - ` Utils\Replacer `
254
263
255
264
## [ 1.7.0] - 2020-04-13
256
265
@@ -458,30 +467,30 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
458
467
459
468
- The following classes in the ` Validation ` namespace were removed as the ` Validation\Validator `
460
469
class can be used instead, or validators can be constructed via the factory instead:
461
- - ` AbstractValidator `
462
- - ` ResourceValidator `
463
- - ` QueryValidator `
470
+ - ` AbstractValidator `
471
+ - ` ResourceValidator `
472
+ - ` QueryValidator `
464
473
- The deprecated ` EloquentController ` was removed - extend ` JsonApiController ` directly.
465
474
- The ` Store\EloquentAdapter ` was removed - extend ` Eloquent\AbstractAdapter ` directly.
466
475
- The following previously deprecated methods/properties were removed from the ` EloquentAdapter ` :
467
- - public method ` queryRelation() ` : renamed ` queryToMany() ` .
468
- - protected property ` $with ` : renamed ` $defaultWith ` .
469
- - protected method ` keyForAttribute() ` : renamed ` modelKeyForField() ` .
470
- - protected method ` columnForField() ` : renamed ` getSortColumn() ` .
471
- - protected method ` all() ` : renamed ` searchAll() ` .
472
- - protected method ` extractIncludePaths() ` : overload the ` getQueryParameters() ` method instead.
473
- - protected method ` extractFilters() ` : overload the ` getQueryParameters() ` method instead.
474
- - protected method ` extractPagination() ` : overload the ` getQueryParameters() ` method instead.
476
+ - public method ` queryRelation() ` : renamed ` queryToMany() ` .
477
+ - protected property ` $with ` : renamed ` $defaultWith ` .
478
+ - protected method ` keyForAttribute() ` : renamed ` modelKeyForField() ` .
479
+ - protected method ` columnForField() ` : renamed ` getSortColumn() ` .
480
+ - protected method ` all() ` : renamed ` searchAll() ` .
481
+ - protected method ` extractIncludePaths() ` : overload the ` getQueryParameters() ` method instead.
482
+ - protected method ` extractFilters() ` : overload the ` getQueryParameters() ` method instead.
483
+ - protected method ` extractPagination() ` : overload the ` getQueryParameters() ` method instead.
475
484
- The previously deprecated ` Eloquent\Concerns\AbstractRelation ` class was removed.
476
485
Extend ` Adapter\AbstractRelationshipAdapter ` and use the ` Eloquent\Concerns\QueriesRelations ` trait.
477
486
- Removed the deprecated ` Contracts\Utils\ConfigurableInterface ` as this has not been in use for some time.
478
487
- Removed the deprecated ` createResourceDocumentValidator() ` method from the factory.
479
488
- Removed the following previously deprecated methods from the ` TestResponse ` class:
480
- - ` assertJsonApiResponse() ` : use ` jsonApi() ` .
481
- - ` normalizeIds() ` and ` normalizeId() ` as these are not in use by the refactored test implementation.
489
+ - ` assertJsonApiResponse() ` : use ` jsonApi() ` .
490
+ - ` normalizeIds() ` and ` normalizeId() ` as these are not in use by the refactored test implementation.
482
491
- Removed the following previously deprecated methods from the JSON API service/facade:
483
- - ` report() ` : no longer supported for access via the service.
484
- - ` requestOrFail() ` : no longer required.
492
+ - ` report() ` : no longer supported for access via the service.
493
+ - ` requestOrFail() ` : no longer required.
485
494
- Removed the previously deprecated ` Schema\ExtractsAttributesTrait ` as it has not been used for some time.
486
495
487
496
## [ 1.0.0-beta.6] - 2019-01-03
@@ -551,24 +560,24 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
551
560
were not in use.
552
561
- The previously deprecated ` InteractsWithModels ` testing trait was removed.
553
562
- The following (majority previously deprecated methods) on the ` TestResponse ` class were removed:
554
- - ` assertDocument `
555
- - ` assertResourceResponse `
556
- - ` assertResourcesResponse `
557
- - ` assertRelatedResourcesResponse `
558
- - ` assertSearchResponse `
559
- - ` assertSearchOneResponse `
560
- - ` assertCreateResponse `
561
- - ` assertReadResponse `
562
- - ` assertUpdateResponse `
563
- - ` assertDeleteResponse `
564
- - ` assertRelatedResourceResponse `
565
- - ` assertHasOneRelationshipResponse `
566
- - ` assertDataCollection `
567
- - ` assertDataResource `
568
- - ` assertDataResourceIdentifier `
569
- - ` assertSearchByIdResponse `
570
- - ` assertSearchedPolymorphIds `
571
- - ` assertReadPolymorphHasMany `
563
+ - ` assertDocument `
564
+ - ` assertResourceResponse `
565
+ - ` assertResourcesResponse `
566
+ - ` assertRelatedResourcesResponse `
567
+ - ` assertSearchResponse `
568
+ - ` assertSearchOneResponse `
569
+ - ` assertCreateResponse `
570
+ - ` assertReadResponse `
571
+ - ` assertUpdateResponse `
572
+ - ` assertDeleteResponse `
573
+ - ` assertRelatedResourceResponse `
574
+ - ` assertHasOneRelationshipResponse `
575
+ - ` assertDataCollection `
576
+ - ` assertDataResource `
577
+ - ` assertDataResourceIdentifier `
578
+ - ` assertSearchByIdResponse `
579
+ - ` assertSearchedPolymorphIds `
580
+ - ` assertReadPolymorphHasMany `
572
581
573
582
### Deprecated
574
583
@@ -615,10 +624,10 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
615
624
- The ` Document\Error ` and ` Contracts\Document\MutableErrorInterface ` are deprecated and will be removed at ` 2.0 ` . You
616
625
should use the error interface/class from the ` neomerx/jsonapi ` package instead.
617
626
- The following utility classes/traits/interfaces are deprecated and will be removed at ` 2.0 ` :
618
- - ` Utils/ErrorCreatorTrait `
619
- - ` Utils/ErrorsAwareTrait ` and ` Contracts\Utils\ErrorsAwareInterface `
620
- - ` Utils/Pointers `
621
- - ` Utils/Replacer ` and ` Contracts\Utils\ReplacerInterface `
627
+ - ` Utils/ErrorCreatorTrait `
628
+ - ` Utils/ErrorsAwareTrait ` and ` Contracts\Utils\ErrorsAwareInterface `
629
+ - ` Utils/Pointers `
630
+ - ` Utils/Replacer ` and ` Contracts\Utils\ReplacerInterface `
622
631
- The ` Contracts\Factories\FactoryInterface ` is deprecated and will be removed at ` 1.0 ` . You should
623
632
type-hint ` Factories\Factory ` directly instead.
624
633
@@ -650,10 +659,10 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
650
659
### Deprecated
651
660
652
661
- The following methods on the Eloquent adapter will be removed in ` 1.0.0 ` as they are no longer required:
653
- - ` extractIncludePaths `
654
- - ` extractFilters `
655
- - ` extractPagination `
656
- - ` columnForField ` : use ` getSortColumn ` instead.
662
+ - ` extractIncludePaths `
663
+ - ` extractFilters `
664
+ - ` extractPagination `
665
+ - ` columnForField ` : use ` getSortColumn ` instead.
657
666
658
667
## [ 1.0.0-beta.2] - 2018-08-25
659
668
@@ -696,12 +705,12 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
696
705
### Removed
697
706
698
707
- The following deprecated methods have been removed from the Eloquent adapter:
699
- - ` first ` : use ` searchOne ` instead.
708
+ - ` first ` : use ` searchOne ` instead.
700
709
701
710
### Deprecated
702
711
703
712
- The follow methods are deprecated on the Eloquent adapter and will be removed in ` 1.0.0 ` :
704
- - ` queryRelation ` : use ` queryToMany ` or ` queryToOne ` instead.
713
+ - ` queryRelation ` : use ` queryToMany ` or ` queryToOne ` instead.
705
714
706
715
### Fixed
707
716
@@ -783,8 +792,8 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
783
792
- Can now generate authorizers using the ` make:json-api:authorizer ` command, or the ` --auth ` flag when generating a
784
793
resource with ` make:json-api:resource ` .
785
794
- The JSON API controller now has the following additional hooks:
786
- - ` searching ` for an * index* action.
787
- - ` reading ` for a * read* action.
795
+ - ` searching ` for an * index* action.
796
+ - ` reading ` for a * read* action.
788
797
- [ #163 ] ( https://github.com/cloudcreativity/laravel-json-api/issues/163 )
789
798
Added relationship hooks to the JSON API controller.
790
799
@@ -797,20 +806,20 @@ $ composer require --dev cloudcreativity/json-api-testing:^2.0
797
806
### Removed
798
807
799
808
- The previous authorizer implementation has been removed in favour of the new one. The following were deleted:
800
- - ` Contract\Authorizer\AuthorizerInterface `
801
- - ` Authorizer\AbstractAuthorizer `
802
- - ` Authorizer\ReadOnlyAuthorizer `
803
- - ` Exceptions\AuthorizationException `
809
+ - ` Contract\Authorizer\AuthorizerInterface `
810
+ - ` Authorizer\AbstractAuthorizer `
811
+ - ` Authorizer\ReadOnlyAuthorizer `
812
+ - ` Exceptions\AuthorizationException `
804
813
805
814
### Deprecated
806
815
807
816
- Eloquent schemas are now deprecated in favour of using generic schemas. This is because of the amount of processing
808
817
involved without any benefit, as generic schemas are straight-forward to construct. The following classes/traits are
809
818
deprecated:
810
- - ` Eloquent\AbstractSchema `
811
- - ` Eloquent\SerializesModels `
812
- - ` Schema\CreatesLinks `
813
- - ` Schema\EloquentSchema ` (was deprecated in ` 1.0.0-alpha.1 ` ).
819
+ - ` Eloquent\AbstractSchema `
820
+ - ` Eloquent\SerializesModels `
821
+ - ` Schema\CreatesLinks `
822
+ - ` Schema\EloquentSchema ` (was deprecated in ` 1.0.0-alpha.1 ` ).
814
823
815
824
## [ 1.0.0-alpha.1] - 2018-04-29
816
825
0 commit comments