From 5917b2b8487549a3d39bda54fa38ccf577d26c1c Mon Sep 17 00:00:00 2001 From: brendt Date: Thu, 8 Jan 2026 14:50:46 +0100 Subject: [PATCH 1/2] wip --- packages/database/src/DatabaseInitializer.php | 2 +- packages/database/src/GenericDatabase.php | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/database/src/DatabaseInitializer.php b/packages/database/src/DatabaseInitializer.php index f848ef787..c7a7fd187 100644 --- a/packages/database/src/DatabaseInitializer.php +++ b/packages/database/src/DatabaseInitializer.php @@ -43,7 +43,7 @@ className: Connection::class, return new GenericDatabase( connection: $connection, transactionManager: new GenericTransactionManager($connection), - serializerFactory: new SerializerFactory($container), + serializerFactory: $container->get(SerializerFactory::class), ); } } diff --git a/packages/database/src/GenericDatabase.php b/packages/database/src/GenericDatabase.php index 9da986580..d6d9e5c86 100644 --- a/packages/database/src/GenericDatabase.php +++ b/packages/database/src/GenericDatabase.php @@ -142,10 +142,12 @@ private function resolveBindings(Query $query): array { $bindings = []; + $serializerFactory = $this->serializerFactory->in($this->context); + foreach ($query->bindings as $key => $value) { if ($value instanceof Query) { $value = $value->execute(); - } elseif ($serializer = $this->serializerFactory->in($this->context)->forValue($value)) { + } elseif ($serializer = $serializerFactory->forValue($value)) { $value = $serializer->serialize($value); } From bc8645b69b08e5d5027c18d689043282781323bc Mon Sep 17 00:00:00 2001 From: brendt Date: Fri, 9 Jan 2026 07:47:43 +0100 Subject: [PATCH 2/2] wip --- tests/Integration/Container/TaggedDynamicInitializerTest.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/Integration/Container/TaggedDynamicInitializerTest.php b/tests/Integration/Container/TaggedDynamicInitializerTest.php index 815d47f1e..19b0abc64 100644 --- a/tests/Integration/Container/TaggedDynamicInitializerTest.php +++ b/tests/Integration/Container/TaggedDynamicInitializerTest.php @@ -7,12 +7,14 @@ use Tempest\Database\Config\SQLiteConfig; use Tempest\Database\Database; use Tempest\Database\DatabaseInitializer; +use Tempest\Mapper\SerializerFactory; final class TaggedDynamicInitializerTest extends TestCase { public function test_resolve(): void { $container = new GenericContainer(); + $container->singleton(SerializerFactory::class, new SerializerFactory($container)); $container->addInitializer(DatabaseInitializer::class); $container->config(new SQLiteConfig(