diff --git a/composer.json b/composer.json index a1b84dfcd..bc5526626 100644 --- a/composer.json +++ b/composer.json @@ -45,7 +45,7 @@ "doctrine/collections": "^1.2 || ^2.0", "doctrine/deprecations": "^1.0", "doctrine/event-manager": "^1.2 || ^2.0", - "doctrine/persistence": "^2.2 || ^3.0", + "doctrine/persistence": "^2.2 || ^3.0 || ^4.0", "psr/cache": "^1 || ^2 || ^3", "psr/clock": "^1", "symfony/cache": "^5.4 || ^6.0 || ^7.0" diff --git a/src/References/ReferencesListener.php b/src/References/ReferencesListener.php index 6f9c7c85e..de61a48ba 100644 --- a/src/References/ReferencesListener.php +++ b/src/References/ReferencesListener.php @@ -126,15 +126,12 @@ public function postLoad(EventArgs $eventArgs) $property->setValue( $object, new LazyCollection( - static function () use ($id, &$manager, $class, $identifier) { - $results = $manager - ->getRepository($class) + static fn () => new ArrayCollection( + $manager->getRepository($class) ->findBy([ $identifier => $id, - ]); - - return new ArrayCollection(is_array($results) ? $results : $results->toArray()); - } + ]) + ) ) ); } @@ -235,15 +232,12 @@ public function updateManyEmbedReferences(EventArgs $eventArgs) $property->setValue( $object, new LazyCollection( - static function () use ($id, &$manager, $class, $identifier) { - $results = $manager - ->getRepository($class) + static fn () => new ArrayCollection( + $manager->getRepository($class) ->findBy([ $identifier => $id, - ]); - - return new ArrayCollection(is_array($results) ? $results : $results->toArray()); - } + ]) + ) ) ); }