From 3a26f0036d1178084d382aeaadb22ee779f8fbec Mon Sep 17 00:00:00 2001 From: Victor Svizev Date: Thu, 18 Sep 2025 17:09:07 +0200 Subject: [PATCH 1/2] PAC-950 Add compatibility with PHP 8.4 --- CHANGELOG.md | 8 ++++++++ src/Callbacks/CreateMultiselectOptionValueCallback.php | 2 +- src/Callbacks/CreateSelectOptionValueCallback.php | 2 +- src/Observers/AttributeOptionObserver.php | 10 +++++----- src/Observers/CatalogAttributeObserver.php | 8 ++++---- src/Observers/EntityAttributeObserver.php | 6 +++--- 6 files changed, 22 insertions(+), 14 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 766400a..09bf2f2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +# Version 23.1.0 + +## Features + +### PHP 8.4 Compatibility + +* Add PHP 8.4 support + # Version 23.0.0 ## Features diff --git a/src/Callbacks/CreateMultiselectOptionValueCallback.php b/src/Callbacks/CreateMultiselectOptionValueCallback.php index 1ea32a8..a12bdd6 100644 --- a/src/Callbacks/CreateMultiselectOptionValueCallback.php +++ b/src/Callbacks/CreateMultiselectOptionValueCallback.php @@ -75,7 +75,7 @@ protected function getUniqueIdentifier() * * @return mixed The modified value */ - public function handle(AttributeCodeAndValueAwareObserverInterface $observer = null) + public function handle(?AttributeCodeAndValueAwareObserverInterface $observer = null) { // set the observer diff --git a/src/Callbacks/CreateSelectOptionValueCallback.php b/src/Callbacks/CreateSelectOptionValueCallback.php index 3a6c245..04b3b2b 100644 --- a/src/Callbacks/CreateSelectOptionValueCallback.php +++ b/src/Callbacks/CreateSelectOptionValueCallback.php @@ -75,7 +75,7 @@ protected function getUniqueIdentifier() * * @return mixed The modified value */ - public function handle(AttributeCodeAndValueAwareObserverInterface $observer = null) + public function handle(?AttributeCodeAndValueAwareObserverInterface $observer = null) { // set the observer diff --git a/src/Observers/AttributeOptionObserver.php b/src/Observers/AttributeOptionObserver.php index 97bf836..366e69e 100644 --- a/src/Observers/AttributeOptionObserver.php +++ b/src/Observers/AttributeOptionObserver.php @@ -69,15 +69,15 @@ class AttributeOptionObserver extends AbstractAttributeImportObserver implements * Initializes the observer with the passed subject instance. * * @param \TechDivision\Import\Attribute\Services\AttributeBunchProcessorInterface $attributeBunchProcessor The attribute bunch processor instance - * @param \TechDivision\Import\Observers\AttributeLoaderInterface $attributeLoader The attribute loader instance - * @param \TechDivision\Import\Observers\EntityMergers\EntityMergerInterface $entityMerger The entity merger instance + * @param \TechDivision\Import\Observers\AttributeLoaderInterface|null $attributeLoader The attribute loader instance + * @param \TechDivision\Import\Observers\EntityMergers\EntityMergerInterface|null $entityMerger The entity merger instance * @param \TechDivision\Import\Observers\StateDetectorInterface|null $stateDetector The state detector instance to use */ public function __construct( AttributeBunchProcessorInterface $attributeBunchProcessor, - AttributeLoaderInterface $attributeLoader = null, - EntityMergerInterface $entityMerger = null, - StateDetectorInterface $stateDetector = null + ?AttributeLoaderInterface $attributeLoader = null, + ?EntityMergerInterface $entityMerger = null, + ?StateDetectorInterface $stateDetector = null ) { // initialize the bunch processor, the attribute loader and the entity merger instance diff --git a/src/Observers/CatalogAttributeObserver.php b/src/Observers/CatalogAttributeObserver.php index b78ae62..e94a1f3 100644 --- a/src/Observers/CatalogAttributeObserver.php +++ b/src/Observers/CatalogAttributeObserver.php @@ -76,15 +76,15 @@ class CatalogAttributeObserver extends AbstractAttributeImportObserver * Initializes the observer with the passed subject instance. * * @param \TechDivision\Import\Attribute\Services\AttributeBunchProcessorInterface $attributeBunchProcessor The attribute bunch processor instance - * @param \TechDivision\Import\Observers\EntityMergers\EntityMergerInterface $entityMerger The entity merger instance + * @param \TechDivision\Import\Observers\EntityMergers\EntityMergerInterface|null $entityMerger The entity merger instance * @param \TechDivision\Import\Loaders\LoaderInterface|null $headerMappingLoader The loader for the virtual mappings * @param \TechDivision\Import\Observers\StateDetectorInterface|null $stateDetector The state detector instance to use */ public function __construct( AttributeBunchProcessorInterface $attributeBunchProcessor, - EntityMergerInterface $entityMerger = null, - LoaderInterface $headerMappingLoader = null, - StateDetectorInterface $stateDetector = null + ?EntityMergerInterface $entityMerger = null, + ?LoaderInterface $headerMappingLoader = null, + ?StateDetectorInterface $stateDetector = null ) { // initialize the bunch processor and the entity merger instance diff --git a/src/Observers/EntityAttributeObserver.php b/src/Observers/EntityAttributeObserver.php index ce00f7c..1b7d867 100644 --- a/src/Observers/EntityAttributeObserver.php +++ b/src/Observers/EntityAttributeObserver.php @@ -98,13 +98,13 @@ class EntityAttributeObserver extends AbstractAttributeImportObserver * Initializes the observer with the passed subject instance. * * @param \TechDivision\Import\Attribute\Services\AttributeBunchProcessorInterface $attributeBunchProcessor The attribute bunch processor instance - * @param \TechDivision\Import\Observers\EntityMergers\EntityMergerInterface $entityMerger The entity merger instance + * @param \TechDivision\Import\Observers\EntityMergers\EntityMergerInterface|null $entityMerger The entity merger instance * @param \TechDivision\Import\Observers\StateDetectorInterface|null $stateDetector The state detector instance to use */ public function __construct( AttributeBunchProcessorInterface $attributeBunchProcessor, - EntityMergerInterface $entityMerger = null, - StateDetectorInterface $stateDetector = null + ?EntityMergerInterface $entityMerger = null, + ?StateDetectorInterface $stateDetector = null ) { // initialize the bunch processor and the entity merger instance From 629e890f37507f415dda17cda8981f659bc2178d Mon Sep 17 00:00:00 2001 From: Victor Svizev Date: Thu, 2 Oct 2025 16:04:59 +0200 Subject: [PATCH 2/2] PAC-950 Update dependencies --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 8cc590c..d587620 100755 --- a/composer.json +++ b/composer.json @@ -4,7 +4,7 @@ "license": "MIT", "require": { "php": "^8.1", - "techdivision/import": "^18.0.0" + "techdivision/import": "^18.1" }, "require-dev": { "doctrine/dbal": "^4.0.4",