diff --git a/baseline.xml b/baseline.xml
index b574d9da..8d6b6607 100644
--- a/baseline.xml
+++ b/baseline.xml
@@ -443,6 +443,17 @@
class implements VersionedProjector {
+
+
+ $eventBus->dispatch(...$messages);
+ $parentEventBus = $this->prophesize(EventBus::class);
+ $parentEventBus->dispatch(...$messages)->shouldBeCalledOnce();
+ $parentEventBus->reveal();
+ $projectionist = $this->prophesize(Projectionist::class);
+ $projectionist->reveal();
+ $projectionist->run()->shouldBeCalledOnce();
+
+
class implements Projector {
diff --git a/composer.json b/composer.json
index 26e4f0c5..8eb0b168 100644
--- a/composer.json
+++ b/composer.json
@@ -27,7 +27,8 @@
"psr/simple-cache": "^2.0.0|^3.0.0",
"symfony/console": "^5.4.1|^6.0.1",
"symfony/event-dispatcher": "^4.4.34|^5.4.0|^6.0.1",
- "symfony/finder": "^4.4.34|^5.4.0|^6.0.1"
+ "symfony/finder": "^4.4.34|^5.4.0|^6.0.1",
+ "symfony/lock": "^4.4.34|^5.4.0|^6.0.1"
},
"require-dev": {
"ext-pdo_sqlite": "~8.1.0 || ~8.2.0",
@@ -45,7 +46,7 @@
"roave/infection-static-analysis-plugin": "^1.22.0",
"symfony/messenger": "^4.4.34|^5.4.0|^6.0.1",
"symfony/var-dumper": "^5.4.1|^6.0.1",
- "vimeo/psalm": "^4.26.0"
+ "vimeo/psalm": "^5.0.0"
},
"suggest": {
"doctrine/migrations": "for schema migration support",
diff --git a/composer.lock b/composer.lock
index 18b592b7..1ca54561 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "b212ef2a284bc85a783e1c66383eb38b",
+ "content-hash": "77bf6735c72ced9b6e4bc21b76384d90",
"packages": [
{
"name": "doctrine/cache",
@@ -101,16 +101,16 @@
},
{
"name": "doctrine/dbal",
- "version": "3.5.1",
+ "version": "3.5.3",
"source": {
"type": "git",
"url": "https://github.com/doctrine/dbal.git",
- "reference": "f38ee8aaca2d58ee88653cb34a6a3880c23f38a5"
+ "reference": "88fa7e5189fd5ec6682477044264dc0ed4e3aa1e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/dbal/zipball/f38ee8aaca2d58ee88653cb34a6a3880c23f38a5",
- "reference": "f38ee8aaca2d58ee88653cb34a6a3880c23f38a5",
+ "url": "https://api.github.com/repos/doctrine/dbal/zipball/88fa7e5189fd5ec6682477044264dc0ed4e3aa1e",
+ "reference": "88fa7e5189fd5ec6682477044264dc0ed4e3aa1e",
"shasum": ""
},
"require": {
@@ -123,16 +123,16 @@
"psr/log": "^1|^2|^3"
},
"require-dev": {
- "doctrine/coding-standard": "10.0.0",
- "jetbrains/phpstorm-stubs": "2022.2",
- "phpstan/phpstan": "1.8.10",
+ "doctrine/coding-standard": "11.0.0",
+ "jetbrains/phpstorm-stubs": "2022.3",
+ "phpstan/phpstan": "1.9.4",
"phpstan/phpstan-strict-rules": "^1.4",
- "phpunit/phpunit": "9.5.25",
- "psalm/plugin-phpunit": "0.17.0",
+ "phpunit/phpunit": "9.5.27",
+ "psalm/plugin-phpunit": "0.18.4",
"squizlabs/php_codesniffer": "3.7.1",
"symfony/cache": "^5.4|^6.0",
"symfony/console": "^4.4|^5.4|^6.0",
- "vimeo/psalm": "4.29.0"
+ "vimeo/psalm": "4.30.0"
},
"suggest": {
"symfony/console": "For helpful console commands such as SQL execution and import of files."
@@ -192,7 +192,7 @@
],
"support": {
"issues": "https://github.com/doctrine/dbal/issues",
- "source": "https://github.com/doctrine/dbal/tree/3.5.1"
+ "source": "https://github.com/doctrine/dbal/tree/3.5.3"
},
"funding": [
{
@@ -208,7 +208,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-24T07:26:18+00:00"
+ "time": "2023-01-12T10:21:44+00:00"
},
{
"name": "doctrine/deprecations",
@@ -255,30 +255,29 @@
},
{
"name": "doctrine/event-manager",
- "version": "1.2.0",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/event-manager.git",
- "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520"
+ "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/event-manager/zipball/95aa4cb529f1e96576f3fda9f5705ada4056a520",
- "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520",
+ "url": "https://api.github.com/repos/doctrine/event-manager/zipball/750671534e0241a7c50ea5b43f67e23eb5c96f32",
+ "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32",
"shasum": ""
},
"require": {
- "doctrine/deprecations": "^0.5.3 || ^1",
- "php": "^7.1 || ^8.0"
+ "php": "^8.1"
},
"conflict": {
"doctrine/common": "<2.9"
},
"require-dev": {
- "doctrine/coding-standard": "^9 || ^10",
- "phpstan/phpstan": "~1.4.10 || ^1.8.8",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "vimeo/psalm": "^4.24"
+ "doctrine/coding-standard": "^10",
+ "phpstan/phpstan": "^1.8.8",
+ "phpunit/phpunit": "^9.5",
+ "vimeo/psalm": "^4.28"
},
"type": "library",
"autoload": {
@@ -327,7 +326,7 @@
],
"support": {
"issues": "https://github.com/doctrine/event-manager/issues",
- "source": "https://github.com/doctrine/event-manager/tree/1.2.0"
+ "source": "https://github.com/doctrine/event-manager/tree/2.0.0"
},
"funding": [
{
@@ -343,7 +342,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-12T20:51:15+00:00"
+ "time": "2022-10-12T20:59:15+00:00"
},
{
"name": "psr/cache",
@@ -648,16 +647,16 @@
},
{
"name": "symfony/console",
- "version": "v6.2.1",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "58f6cef5dc5f641b7bbdbf8b32b44cc926c35f3f"
+ "reference": "3e294254f2191762c1d137aed4b94e966965e985"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/58f6cef5dc5f641b7bbdbf8b32b44cc926c35f3f",
- "reference": "58f6cef5dc5f641b7bbdbf8b32b44cc926c35f3f",
+ "url": "https://api.github.com/repos/symfony/console/zipball/3e294254f2191762c1d137aed4b94e966965e985",
+ "reference": "3e294254f2191762c1d137aed4b94e966965e985",
"shasum": ""
},
"require": {
@@ -724,7 +723,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v6.2.1"
+ "source": "https://github.com/symfony/console/tree/v6.2.5"
},
"funding": [
{
@@ -740,7 +739,7 @@
"type": "tidelift"
}
],
- "time": "2022-12-01T13:44:20+00:00"
+ "time": "2023-01-01T08:38:09+00:00"
},
{
"name": "symfony/deprecation-contracts",
@@ -811,16 +810,16 @@
},
{
"name": "symfony/event-dispatcher",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "9efb1618fabee89515fe031314e8ed5625f85a53"
+ "reference": "f02d108b5e9fd4a6245aa73a9d2df2ec060c3e68"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/9efb1618fabee89515fe031314e8ed5625f85a53",
- "reference": "9efb1618fabee89515fe031314e8ed5625f85a53",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/f02d108b5e9fd4a6245aa73a9d2df2ec060c3e68",
+ "reference": "f02d108b5e9fd4a6245aa73a9d2df2ec060c3e68",
"shasum": ""
},
"require": {
@@ -874,7 +873,7 @@
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.0"
+ "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.5"
},
"funding": [
{
@@ -890,7 +889,7 @@
"type": "tidelift"
}
],
- "time": "2022-11-02T09:08:04+00:00"
+ "time": "2023-01-01T08:38:09+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@@ -973,16 +972,16 @@
},
{
"name": "symfony/finder",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "eb2355f69519e4ef33f1835bca4c935f5d42e570"
+ "reference": "c90dc446976a612e3312a97a6ec0069ab0c2099c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/eb2355f69519e4ef33f1835bca4c935f5d42e570",
- "reference": "eb2355f69519e4ef33f1835bca4c935f5d42e570",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/c90dc446976a612e3312a97a6ec0069ab0c2099c",
+ "reference": "c90dc446976a612e3312a97a6ec0069ab0c2099c",
"shasum": ""
},
"require": {
@@ -1017,7 +1016,85 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v6.2.0"
+ "source": "https://github.com/symfony/finder/tree/v6.2.5"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2023-01-20T17:45:48+00:00"
+ },
+ {
+ "name": "symfony/lock",
+ "version": "v6.2.5",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/lock.git",
+ "reference": "39ccc73e575f20d4d10b24ad366aa1a7a6d7447d"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/lock/zipball/39ccc73e575f20d4d10b24ad366aa1a7a6d7447d",
+ "reference": "39ccc73e575f20d4d10b24ad366aa1a7a6d7447d",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=8.1",
+ "psr/log": "^1|^2|^3"
+ },
+ "conflict": {
+ "doctrine/dbal": "<2.13",
+ "symfony/cache": "<6.2"
+ },
+ "require-dev": {
+ "doctrine/dbal": "^2.13|^3.0",
+ "predis/predis": "~1.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\Lock\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Jérémy Derussé",
+ "email": "jeremy@derusse.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Creates and manages locks, a mechanism to provide exclusive access to a shared resource",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "cas",
+ "flock",
+ "locking",
+ "mutex",
+ "redlock",
+ "semaphore"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/lock/tree/v6.2.5"
},
"funding": [
{
@@ -1033,7 +1110,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-09T08:55:40+00:00"
+ "time": "2023-01-01T08:38:09+00:00"
},
{
"name": "symfony/polyfill-ctype",
@@ -1367,16 +1444,16 @@
},
{
"name": "symfony/service-contracts",
- "version": "v3.1.1",
+ "version": "v3.2.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "925e713fe8fcacf6bc05e936edd8dd5441a21239"
+ "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/925e713fe8fcacf6bc05e936edd8dd5441a21239",
- "reference": "925e713fe8fcacf6bc05e936edd8dd5441a21239",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/aac98028c69df04ee77eb69b96b86ee51fbf4b75",
+ "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75",
"shasum": ""
},
"require": {
@@ -1392,7 +1469,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "3.1-dev"
+ "dev-main": "3.3-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -1432,7 +1509,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v3.1.1"
+ "source": "https://github.com/symfony/service-contracts/tree/v3.2.0"
},
"funding": [
{
@@ -1448,20 +1525,20 @@
"type": "tidelift"
}
],
- "time": "2022-05-30T19:18:58+00:00"
+ "time": "2022-11-25T10:21:52+00:00"
},
{
"name": "symfony/string",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "145702685e0d12f81d755c71127bfff7582fdd36"
+ "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/145702685e0d12f81d755c71127bfff7582fdd36",
- "reference": "145702685e0d12f81d755c71127bfff7582fdd36",
+ "url": "https://api.github.com/repos/symfony/string/zipball/b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0",
+ "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0",
"shasum": ""
},
"require": {
@@ -1518,7 +1595,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v6.2.0"
+ "source": "https://github.com/symfony/string/tree/v6.2.5"
},
"funding": [
{
@@ -1534,7 +1611,7 @@
"type": "tidelift"
}
],
- "time": "2022-11-30T17:13:47+00:00"
+ "time": "2023-01-01T08:38:09+00:00"
}
],
"packages-dev": [
@@ -1706,16 +1783,16 @@
},
{
"name": "colinodell/json5",
- "version": "v2.2.2",
+ "version": "v2.3.0",
"source": {
"type": "git",
"url": "https://github.com/colinodell/json5.git",
- "reference": "2b0fabd1ba71fe8079a832d6097ec5c6fd92361d"
+ "reference": "15b063f8cb5e6deb15f0cd39123264ec0d19c710"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/colinodell/json5/zipball/2b0fabd1ba71fe8079a832d6097ec5c6fd92361d",
- "reference": "2b0fabd1ba71fe8079a832d6097ec5c6fd92361d",
+ "url": "https://api.github.com/repos/colinodell/json5/zipball/15b063f8cb5e6deb15f0cd39123264ec0d19c710",
+ "reference": "15b063f8cb5e6deb15f0cd39123264ec0d19c710",
"shasum": ""
},
"require": {
@@ -1728,11 +1805,11 @@
},
"require-dev": {
"mikehaertl/php-shellcommand": "^1.2.5",
- "phpstan/phpstan": "^0.12.58",
+ "phpstan/phpstan": "^1.4",
"scrutinizer/ocular": "^1.6",
- "squizlabs/php_codesniffer": "^2.3",
- "symfony/finder": "^4.4|^5.2",
- "symfony/phpunit-bridge": "^5.1"
+ "squizlabs/php_codesniffer": "^2.3 || ^3.0",
+ "symfony/finder": "^4.4|^5.4|^6.0",
+ "symfony/phpunit-bridge": "^5.4|^6.0"
},
"bin": [
"bin/json5"
@@ -1773,7 +1850,7 @@
],
"support": {
"issues": "https://github.com/colinodell/json5/issues",
- "source": "https://github.com/colinodell/json5/tree/v2.2.2"
+ "source": "https://github.com/colinodell/json5/tree/v2.3.0"
},
"funding": [
{
@@ -1793,7 +1870,7 @@
"type": "patreon"
}
],
- "time": "2022-02-22T14:42:16+00:00"
+ "time": "2022-12-27T16:44:40+00:00"
},
{
"name": "composer/pcre",
@@ -2179,32 +2256,35 @@
},
{
"name": "doctrine/annotations",
- "version": "1.13.3",
+ "version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/annotations.git",
- "reference": "648b0343343565c4a056bfc8392201385e8d89f0"
+ "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/annotations/zipball/648b0343343565c4a056bfc8392201385e8d89f0",
- "reference": "648b0343343565c4a056bfc8392201385e8d89f0",
+ "url": "https://api.github.com/repos/doctrine/annotations/zipball/e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f",
+ "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f",
"shasum": ""
},
"require": {
- "doctrine/lexer": "1.*",
+ "doctrine/lexer": "^2 || ^3",
"ext-tokenizer": "*",
- "php": "^7.1 || ^8.0",
+ "php": "^7.2 || ^8.0",
"psr/cache": "^1 || ^2 || ^3"
},
"require-dev": {
- "doctrine/cache": "^1.11 || ^2.0",
- "doctrine/coding-standard": "^6.0 || ^8.1",
- "phpstan/phpstan": "^1.4.10 || ^1.8.0",
- "phpunit/phpunit": "^7.5 || ^8.0 || ^9.1.5",
- "symfony/cache": "^4.4 || ^5.2",
+ "doctrine/cache": "^2.0",
+ "doctrine/coding-standard": "^10",
+ "phpstan/phpstan": "^1.8.0",
+ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
+ "symfony/cache": "^5.4 || ^6",
"vimeo/psalm": "^4.10"
},
+ "suggest": {
+ "php": "PHP 8.0 or higher comes with attributes, a native replacement for annotations"
+ },
"type": "library",
"autoload": {
"psr-4": {
@@ -2246,38 +2326,40 @@
],
"support": {
"issues": "https://github.com/doctrine/annotations/issues",
- "source": "https://github.com/doctrine/annotations/tree/1.13.3"
+ "source": "https://github.com/doctrine/annotations/tree/2.0.1"
},
- "time": "2022-07-02T10:48:51+00:00"
+ "time": "2023-02-02T22:02:53+00:00"
},
{
"name": "doctrine/collections",
- "version": "1.8.0",
+ "version": "2.1.2",
"source": {
"type": "git",
"url": "https://github.com/doctrine/collections.git",
- "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e"
+ "reference": "db8cda536a034337f7dd63febecc713d4957f9ee"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/collections/zipball/2b44dd4cbca8b5744327de78bafef5945c7e7b5e",
- "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e",
+ "url": "https://api.github.com/repos/doctrine/collections/zipball/db8cda536a034337f7dd63febecc713d4957f9ee",
+ "reference": "db8cda536a034337f7dd63febecc713d4957f9ee",
"shasum": ""
},
"require": {
- "doctrine/deprecations": "^0.5.3 || ^1",
- "php": "^7.1.3 || ^8.0"
+ "doctrine/deprecations": "^1",
+ "php": "^8.1"
},
"require-dev": {
- "doctrine/coding-standard": "^9.0 || ^10.0",
- "phpstan/phpstan": "^1.4.8",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.1.5",
+ "doctrine/coding-standard": "^10.0",
+ "ext-json": "*",
+ "phpstan/phpstan": "^1.8",
+ "phpstan/phpstan-phpunit": "^1.0",
+ "phpunit/phpunit": "^9.5",
"vimeo/psalm": "^4.22"
},
"type": "library",
"autoload": {
"psr-4": {
- "Doctrine\\Common\\Collections\\": "lib/Doctrine/Common/Collections"
+ "Doctrine\\Common\\Collections\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -2316,9 +2398,23 @@
],
"support": {
"issues": "https://github.com/doctrine/collections/issues",
- "source": "https://github.com/doctrine/collections/tree/1.8.0"
+ "source": "https://github.com/doctrine/collections/tree/2.1.2"
},
- "time": "2022-09-01T20:12:10+00:00"
+ "funding": [
+ {
+ "url": "https://www.doctrine-project.org/sponsorship.html",
+ "type": "custom"
+ },
+ {
+ "url": "https://www.patreon.com/phpdoctrine",
+ "type": "patreon"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcollections",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2022-12-27T23:41:38+00:00"
},
{
"name": "doctrine/common",
@@ -2504,30 +2600,30 @@
},
{
"name": "doctrine/instantiator",
- "version": "1.4.1",
+ "version": "1.5.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc"
+ "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc",
- "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b",
+ "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b",
"shasum": ""
},
"require": {
"php": "^7.1 || ^8.0"
},
"require-dev": {
- "doctrine/coding-standard": "^9",
+ "doctrine/coding-standard": "^9 || ^11",
"ext-pdo": "*",
"ext-phar": "*",
"phpbench/phpbench": "^0.16 || ^1",
"phpstan/phpstan": "^1.4",
"phpstan/phpstan-phpunit": "^1",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "vimeo/psalm": "^4.22"
+ "vimeo/psalm": "^4.30 || ^5.4"
},
"type": "library",
"autoload": {
@@ -2554,7 +2650,7 @@
],
"support": {
"issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/1.4.1"
+ "source": "https://github.com/doctrine/instantiator/tree/1.5.0"
},
"funding": [
{
@@ -2570,35 +2666,37 @@
"type": "tidelift"
}
],
- "time": "2022-03-03T08:28:38+00:00"
+ "time": "2022-12-30T00:15:36+00:00"
},
{
"name": "doctrine/lexer",
- "version": "1.2.3",
+ "version": "2.1.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/lexer.git",
- "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229"
+ "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229",
- "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229",
+ "url": "https://api.github.com/repos/doctrine/lexer/zipball/39ab8fcf5a51ce4b85ca97c7a7d033eb12831124",
+ "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124",
"shasum": ""
},
"require": {
+ "doctrine/deprecations": "^1.0",
"php": "^7.1 || ^8.0"
},
"require-dev": {
- "doctrine/coding-standard": "^9.0",
+ "doctrine/coding-standard": "^9 || ^10",
"phpstan/phpstan": "^1.3",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "vimeo/psalm": "^4.11"
+ "psalm/plugin-phpunit": "^0.18.3",
+ "vimeo/psalm": "^4.11 || ^5.0"
},
"type": "library",
"autoload": {
"psr-4": {
- "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer"
+ "Doctrine\\Common\\Lexer\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -2630,7 +2728,7 @@
],
"support": {
"issues": "https://github.com/doctrine/lexer/issues",
- "source": "https://github.com/doctrine/lexer/tree/1.2.3"
+ "source": "https://github.com/doctrine/lexer/tree/2.1.0"
},
"funding": [
{
@@ -2646,27 +2744,27 @@
"type": "tidelift"
}
],
- "time": "2022-02-28T11:07:21+00:00"
+ "time": "2022-12-14T08:49:07+00:00"
},
{
"name": "doctrine/migrations",
- "version": "3.5.2",
+ "version": "3.5.5",
"source": {
"type": "git",
"url": "https://github.com/doctrine/migrations.git",
- "reference": "61c6ef3a10b7df43c3b6388a184754f26e58700a"
+ "reference": "4b1e2b6ba71d21d0c5be22ed03b6fc954d20b204"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/migrations/zipball/61c6ef3a10b7df43c3b6388a184754f26e58700a",
- "reference": "61c6ef3a10b7df43c3b6388a184754f26e58700a",
+ "url": "https://api.github.com/repos/doctrine/migrations/zipball/4b1e2b6ba71d21d0c5be22ed03b6fc954d20b204",
+ "reference": "4b1e2b6ba71d21d0c5be22ed03b6fc954d20b204",
"shasum": ""
},
"require": {
"composer-runtime-api": "^2",
- "doctrine/dbal": "^3.3",
+ "doctrine/dbal": "^3.5.1",
"doctrine/deprecations": "^0.5.3 || ^1",
- "doctrine/event-manager": "^1.0",
+ "doctrine/event-manager": "^1.2 || ^2.0",
"friendsofphp/proxy-manager-lts": "^1.0",
"php": "^7.4 || ^8.0",
"psr/log": "^1.1.3 || ^2 || ^3",
@@ -2678,10 +2776,9 @@
},
"require-dev": {
"doctrine/coding-standard": "^9",
- "doctrine/orm": "^2.12",
+ "doctrine/orm": "^2.13",
"doctrine/persistence": "^2 || ^3",
"doctrine/sql-formatter": "^1.0",
- "ergebnis/composer-normalize": "^2.9",
"ext-pdo_sqlite": "*",
"phpstan/phpstan": "^1.5",
"phpstan/phpstan-deprecation-rules": "^1",
@@ -2701,12 +2798,6 @@
"bin/doctrine-migrations"
],
"type": "library",
- "extra": {
- "composer-normalize": {
- "indent-size": 4,
- "indent-style": "space"
- }
- },
"autoload": {
"psr-4": {
"Doctrine\\Migrations\\": "lib/Doctrine/Migrations"
@@ -2739,7 +2830,7 @@
],
"support": {
"issues": "https://github.com/doctrine/migrations/issues",
- "source": "https://github.com/doctrine/migrations/tree/3.5.2"
+ "source": "https://github.com/doctrine/migrations/tree/3.5.5"
},
"funding": [
{
@@ -2755,55 +2846,56 @@
"type": "tidelift"
}
],
- "time": "2022-08-04T14:29:49+00:00"
+ "time": "2023-01-18T12:44:30+00:00"
},
{
"name": "doctrine/orm",
- "version": "2.13.4",
+ "version": "2.14.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/orm.git",
- "reference": "a5a6cc6630ce497290396d5f206887227820a634"
+ "reference": "de7eee5ed7b1b35c99b118f26f210a8281e6db8e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/orm/zipball/a5a6cc6630ce497290396d5f206887227820a634",
- "reference": "a5a6cc6630ce497290396d5f206887227820a634",
+ "url": "https://api.github.com/repos/doctrine/orm/zipball/de7eee5ed7b1b35c99b118f26f210a8281e6db8e",
+ "reference": "de7eee5ed7b1b35c99b118f26f210a8281e6db8e",
"shasum": ""
},
"require": {
"composer-runtime-api": "^2",
"doctrine/cache": "^1.12.1 || ^2.1.1",
- "doctrine/collections": "^1.5",
+ "doctrine/collections": "^1.5 || ^2.0",
"doctrine/common": "^3.0.3",
"doctrine/dbal": "^2.13.1 || ^3.2",
"doctrine/deprecations": "^0.5.3 || ^1",
- "doctrine/event-manager": "^1.1",
+ "doctrine/event-manager": "^1.2 || ^2",
"doctrine/inflector": "^1.4 || ^2.0",
"doctrine/instantiator": "^1.3",
- "doctrine/lexer": "^1.2.3",
+ "doctrine/lexer": "^1.2.3 || ^2",
"doctrine/persistence": "^2.4 || ^3",
"ext-ctype": "*",
"php": "^7.1 || ^8.0",
"psr/cache": "^1 || ^2 || ^3",
- "symfony/console": "^3.0 || ^4.0 || ^5.0 || ^6.0",
+ "symfony/console": "^4.2 || ^5.0 || ^6.0",
"symfony/polyfill-php72": "^1.23",
"symfony/polyfill-php80": "^1.16"
},
"conflict": {
- "doctrine/annotations": "<1.13 || >= 2.0"
+ "doctrine/annotations": "<1.13 || >= 3.0"
},
"require-dev": {
- "doctrine/annotations": "^1.13",
- "doctrine/coding-standard": "^9.0.2 || ^10.0",
+ "doctrine/annotations": "^1.13 || ^2",
+ "doctrine/coding-standard": "^9.0.2 || ^11.0",
"phpbench/phpbench": "^0.16.10 || ^1.0",
- "phpstan/phpstan": "~1.4.10 || 1.9.2",
+ "phpstan/phpstan": "~1.4.10 || 1.9.8",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
"psr/log": "^1 || ^2 || ^3",
"squizlabs/php_codesniffer": "3.7.1",
"symfony/cache": "^4.4 || ^5.4 || ^6.0",
+ "symfony/var-exporter": "^4.4 || ^5.4 || ^6.2",
"symfony/yaml": "^3.4 || ^4.0 || ^5.0 || ^6.0",
- "vimeo/psalm": "4.30.0"
+ "vimeo/psalm": "4.30.0 || 5.4.0"
},
"suggest": {
"ext-dom": "Provides support for XSD validation for XML mapping files",
@@ -2853,22 +2945,22 @@
],
"support": {
"issues": "https://github.com/doctrine/orm/issues",
- "source": "https://github.com/doctrine/orm/tree/2.13.4"
+ "source": "https://github.com/doctrine/orm/tree/2.14.1"
},
- "time": "2022-11-20T18:53:31+00:00"
+ "time": "2023-01-16T18:36:59+00:00"
},
{
"name": "doctrine/persistence",
- "version": "3.1.0",
+ "version": "3.1.3",
"source": {
"type": "git",
"url": "https://github.com/doctrine/persistence.git",
- "reference": "2a9c70a5e21f8968c5a46b79f819ea52f322080b"
+ "reference": "920da294b4bb0bb527f2a91ed60c18213435880f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/persistence/zipball/2a9c70a5e21f8968c5a46b79f819ea52f322080b",
- "reference": "2a9c70a5e21f8968c5a46b79f819ea52f322080b",
+ "url": "https://api.github.com/repos/doctrine/persistence/zipball/920da294b4bb0bb527f2a91ed60c18213435880f",
+ "reference": "920da294b4bb0bb527f2a91ed60c18213435880f",
"shasum": ""
},
"require": {
@@ -2877,20 +2969,18 @@
"psr/cache": "^1.0 || ^2.0 || ^3.0"
},
"conflict": {
- "doctrine/annotations": "<1.7 || >=2.0",
"doctrine/common": "<2.10"
},
"require-dev": {
"composer/package-versions-deprecated": "^1.11",
- "doctrine/annotations": "^1.7",
- "doctrine/coding-standard": "^10",
+ "doctrine/coding-standard": "^11",
"doctrine/common": "^3.0",
- "phpstan/phpstan": "1.8.8",
+ "phpstan/phpstan": "1.9.4",
"phpstan/phpstan-phpunit": "^1",
"phpstan/phpstan-strict-rules": "^1.1",
"phpunit/phpunit": "^8.5 || ^9.5",
"symfony/cache": "^4.4 || ^5.4 || ^6.0",
- "vimeo/psalm": "4.29.0"
+ "vimeo/psalm": "4.30.0 || 5.3.0"
},
"type": "library",
"autoload": {
@@ -2939,7 +3029,7 @@
],
"support": {
"issues": "https://github.com/doctrine/persistence/issues",
- "source": "https://github.com/doctrine/persistence/tree/3.1.0"
+ "source": "https://github.com/doctrine/persistence/tree/3.1.3"
},
"funding": [
{
@@ -2955,7 +3045,7 @@
"type": "tidelift"
}
],
- "time": "2022-11-18T14:10:19+00:00"
+ "time": "2023-01-19T13:39:42+00:00"
},
{
"name": "felixfbecker/advanced-json-rpc",
@@ -3060,16 +3150,16 @@
},
{
"name": "friendsofphp/proxy-manager-lts",
- "version": "v1.0.13",
+ "version": "v1.0.14",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfPHP/proxy-manager-lts.git",
- "reference": "88354616f4cf4f6620910fd035e282173ba453e8"
+ "reference": "a527c9d9d5348e012bd24482d83a5cd643bcbc9e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/FriendsOfPHP/proxy-manager-lts/zipball/88354616f4cf4f6620910fd035e282173ba453e8",
- "reference": "88354616f4cf4f6620910fd035e282173ba453e8",
+ "url": "https://api.github.com/repos/FriendsOfPHP/proxy-manager-lts/zipball/a527c9d9d5348e012bd24482d83a5cd643bcbc9e",
+ "reference": "a527c9d9d5348e012bd24482d83a5cd643bcbc9e",
"shasum": ""
},
"require": {
@@ -3126,7 +3216,7 @@
],
"support": {
"issues": "https://github.com/FriendsOfPHP/proxy-manager-lts/issues",
- "source": "https://github.com/FriendsOfPHP/proxy-manager-lts/tree/v1.0.13"
+ "source": "https://github.com/FriendsOfPHP/proxy-manager-lts/tree/v1.0.14"
},
"funding": [
{
@@ -3138,7 +3228,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-17T19:48:16+00:00"
+ "time": "2023-01-30T10:40:19+00:00"
},
{
"name": "infection/abstract-testframework-adapter",
@@ -3688,16 +3778,16 @@
},
{
"name": "nikic/php-parser",
- "version": "v4.15.2",
+ "version": "v4.15.3",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc"
+ "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc",
- "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039",
+ "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039",
"shasum": ""
},
"require": {
@@ -3738,9 +3828,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.2"
+ "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3"
},
- "time": "2022-11-12T15:38:23+00:00"
+ "time": "2023-01-16T22:05:37+00:00"
},
{
"name": "ocramius/package-versions",
@@ -3992,25 +4082,25 @@
},
{
"name": "patchlevel/event-sourcing-psalm-plugin",
- "version": "2.0.1",
+ "version": "2.1.0",
"source": {
"type": "git",
"url": "https://github.com/patchlevel/event-sourcing-psalm-plugin.git",
- "reference": "e658dd83ee0536a3fe8d130270bcfa5b60a728b1"
+ "reference": "348fc7d5c39557509767e769a39f194c6faa9cfe"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/patchlevel/event-sourcing-psalm-plugin/zipball/e658dd83ee0536a3fe8d130270bcfa5b60a728b1",
- "reference": "e658dd83ee0536a3fe8d130270bcfa5b60a728b1",
+ "url": "https://api.github.com/repos/patchlevel/event-sourcing-psalm-plugin/zipball/348fc7d5c39557509767e769a39f194c6faa9cfe",
+ "reference": "348fc7d5c39557509767e769a39f194c6faa9cfe",
"shasum": ""
},
"require": {
"php": "^8.1",
- "vimeo/psalm": "^4.23.0"
+ "vimeo/psalm": "^4.23.0 || ^5.0.0"
},
"require-dev": {
"patchlevel/coding-standard": "^1.1.1",
- "patchlevel/event-sourcing": "^2.0.0",
+ "patchlevel/event-sourcing": "2.0.x-dev",
"roave/security-advisories": "dev-master",
"symfony/var-dumper": "^6.1.0"
},
@@ -4042,9 +4132,9 @@
],
"support": {
"issues": "https://github.com/patchlevel/event-sourcing-psalm-plugin/issues",
- "source": "https://github.com/patchlevel/event-sourcing-psalm-plugin/tree/2.0.1"
+ "source": "https://github.com/patchlevel/event-sourcing-psalm-plugin/tree/2.1.0"
},
- "time": "2022-06-29T11:01:14+00:00"
+ "time": "2023-01-25T10:32:23+00:00"
},
{
"name": "phar-io/manifest",
@@ -4261,20 +4351,20 @@
},
{
"name": "phpbench/phpbench",
- "version": "1.2.7",
+ "version": "1.2.8",
"source": {
"type": "git",
"url": "https://github.com/phpbench/phpbench.git",
- "reference": "dce145304abbb16c8d9af69c19d96f47e9d0e670"
+ "reference": "3f7b3c200f86727de7a14bde94adb68a88e1bafc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpbench/phpbench/zipball/dce145304abbb16c8d9af69c19d96f47e9d0e670",
- "reference": "dce145304abbb16c8d9af69c19d96f47e9d0e670",
+ "url": "https://api.github.com/repos/phpbench/phpbench/zipball/3f7b3c200f86727de7a14bde94adb68a88e1bafc",
+ "reference": "3f7b3c200f86727de7a14bde94adb68a88e1bafc",
"shasum": ""
},
"require": {
- "doctrine/annotations": "^1.13",
+ "doctrine/annotations": "^1.13 || ^2.0",
"ext-dom": "*",
"ext-json": "*",
"ext-pcre": "*",
@@ -4339,7 +4429,7 @@
"description": "PHP Benchmarking Framework",
"support": {
"issues": "https://github.com/phpbench/phpbench/issues",
- "source": "https://github.com/phpbench/phpbench/tree/1.2.7"
+ "source": "https://github.com/phpbench/phpbench/tree/1.2.8"
},
"funding": [
{
@@ -4347,7 +4437,7 @@
"type": "github"
}
],
- "time": "2022-10-15T09:57:51+00:00"
+ "time": "2023-01-14T13:08:42+00:00"
},
{
"name": "phpdocumentor/reflection-common",
@@ -4516,20 +4606,20 @@
},
{
"name": "phpspec/prophecy",
- "version": "v1.16.0",
+ "version": "v1.17.0",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "be8cac52a0827776ff9ccda8c381ac5b71aeb359"
+ "reference": "15873c65b207b07765dbc3c95d20fdf4a320cbe2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/be8cac52a0827776ff9ccda8c381ac5b71aeb359",
- "reference": "be8cac52a0827776ff9ccda8c381ac5b71aeb359",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/15873c65b207b07765dbc3c95d20fdf4a320cbe2",
+ "reference": "15873c65b207b07765dbc3c95d20fdf4a320cbe2",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.2",
+ "doctrine/instantiator": "^1.2 || ^2.0",
"php": "^7.2 || 8.0.* || 8.1.* || 8.2.*",
"phpdocumentor/reflection-docblock": "^5.2",
"sebastian/comparator": "^3.0 || ^4.0",
@@ -4537,6 +4627,7 @@
},
"require-dev": {
"phpspec/phpspec": "^6.0 || ^7.0",
+ "phpstan/phpstan": "^1.9",
"phpunit/phpunit": "^8.0 || ^9.0"
},
"type": "library",
@@ -4577,9 +4668,9 @@
],
"support": {
"issues": "https://github.com/phpspec/prophecy/issues",
- "source": "https://github.com/phpspec/prophecy/tree/v1.16.0"
+ "source": "https://github.com/phpspec/prophecy/tree/v1.17.0"
},
- "time": "2022-11-29T15:06:56+00:00"
+ "time": "2023-02-02T15:41:36+00:00"
},
{
"name": "phpspec/prophecy-phpunit",
@@ -4635,16 +4726,16 @@
},
{
"name": "phpstan/phpdoc-parser",
- "version": "1.13.1",
+ "version": "1.15.3",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpdoc-parser.git",
- "reference": "aac44118344d197e6d5f7c6cee91885f0a89acdd"
+ "reference": "61800f71a5526081d1b5633766aa88341f1ade76"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/aac44118344d197e6d5f7c6cee91885f0a89acdd",
- "reference": "aac44118344d197e6d5f7c6cee91885f0a89acdd",
+ "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/61800f71a5526081d1b5633766aa88341f1ade76",
+ "reference": "61800f71a5526081d1b5633766aa88341f1ade76",
"shasum": ""
},
"require": {
@@ -4674,22 +4765,22 @@
"description": "PHPDoc parser with support for nullable, intersection and generic types",
"support": {
"issues": "https://github.com/phpstan/phpdoc-parser/issues",
- "source": "https://github.com/phpstan/phpdoc-parser/tree/1.13.1"
+ "source": "https://github.com/phpstan/phpdoc-parser/tree/1.15.3"
},
- "time": "2022-11-20T08:52:26+00:00"
+ "time": "2022-12-20T20:56:55+00:00"
},
{
"name": "phpstan/phpstan",
- "version": "1.9.2",
+ "version": "1.9.14",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpstan.git",
- "reference": "d6fdf01c53978b6429f1393ba4afeca39cc68afa"
+ "reference": "e5fcc96289cf737304286a9b505fbed091f02e58"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpstan/zipball/d6fdf01c53978b6429f1393ba4afeca39cc68afa",
- "reference": "d6fdf01c53978b6429f1393ba4afeca39cc68afa",
+ "url": "https://api.github.com/repos/phpstan/phpstan/zipball/e5fcc96289cf737304286a9b505fbed091f02e58",
+ "reference": "e5fcc96289cf737304286a9b505fbed091f02e58",
"shasum": ""
},
"require": {
@@ -4719,7 +4810,7 @@
],
"support": {
"issues": "https://github.com/phpstan/phpstan/issues",
- "source": "https://github.com/phpstan/phpstan/tree/1.9.2"
+ "source": "https://github.com/phpstan/phpstan/tree/1.9.14"
},
"funding": [
{
@@ -4735,20 +4826,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-10T09:56:11+00:00"
+ "time": "2023-01-19T10:47:09+00:00"
},
{
"name": "phpunit/php-code-coverage",
- "version": "9.2.19",
+ "version": "9.2.24",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "c77b56b63e3d2031bd8997fcec43c1925ae46559"
+ "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/c77b56b63e3d2031bd8997fcec43c1925ae46559",
- "reference": "c77b56b63e3d2031bd8997fcec43c1925ae46559",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2cf940ebc6355a9d430462811b5aaa308b174bed",
+ "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed",
"shasum": ""
},
"require": {
@@ -4804,7 +4895,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
- "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.19"
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.24"
},
"funding": [
{
@@ -4812,7 +4903,7 @@
"type": "github"
}
],
- "time": "2022-11-18T07:47:47+00:00"
+ "time": "2023-01-26T08:26:55+00:00"
},
{
"name": "phpunit/php-file-iterator",
@@ -5057,20 +5148,20 @@
},
{
"name": "phpunit/phpunit",
- "version": "9.5.27",
+ "version": "9.6.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38"
+ "reference": "70fc8be1d0b9fad56a199a4df5f9cfabfc246f84"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a2bc7ffdca99f92d959b3f2270529334030bba38",
- "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/70fc8be1d0b9fad56a199a4df5f9cfabfc246f84",
+ "reference": "70fc8be1d0b9fad56a199a4df5f9cfabfc246f84",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.3.1",
+ "doctrine/instantiator": "^1.3.1 || ^2",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
@@ -5108,7 +5199,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "9.5-dev"
+ "dev-master": "9.6-dev"
}
},
"autoload": {
@@ -5139,7 +5230,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.27"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.0"
},
"funding": [
{
@@ -5155,7 +5246,7 @@
"type": "tidelift"
}
],
- "time": "2022-12-09T07:31:23+00:00"
+ "time": "2023-02-03T07:32:24+00:00"
},
{
"name": "psalm/plugin-phpunit",
@@ -5219,16 +5310,16 @@
},
{
"name": "roave/infection-static-analysis-plugin",
- "version": "1.26.0",
+ "version": "1.28.0",
"source": {
"type": "git",
"url": "https://github.com/Roave/infection-static-analysis-plugin.git",
- "reference": "63f3fe01f0d29409501a9999f60ef0602ddfb4cb"
+ "reference": "3724bbe9afe0dc1eddb2fb2c425d4acd64cb9c10"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Roave/infection-static-analysis-plugin/zipball/63f3fe01f0d29409501a9999f60ef0602ddfb4cb",
- "reference": "63f3fe01f0d29409501a9999f60ef0602ddfb4cb",
+ "url": "https://api.github.com/repos/Roave/infection-static-analysis-plugin/zipball/3724bbe9afe0dc1eddb2fb2c425d4acd64cb9c10",
+ "reference": "3724bbe9afe0dc1eddb2fb2c425d4acd64cb9c10",
"shasum": ""
},
"require": {
@@ -5239,8 +5330,8 @@
"vimeo/psalm": "^4.30.0 || ^5.0.0"
},
"require-dev": {
- "doctrine/coding-standard": "^10.0.0",
- "phpunit/phpunit": "^9.5.26"
+ "doctrine/coding-standard": "^11.0.0",
+ "phpunit/phpunit": "^9.5.27"
},
"bin": [
"bin/roave-infection-static-analysis-plugin"
@@ -5264,9 +5355,9 @@
"description": "Static analysis on top of mutation testing - prevents escaped mutants from being invalid according to static analysis",
"support": {
"issues": "https://github.com/Roave/infection-static-analysis-plugin/issues",
- "source": "https://github.com/Roave/infection-static-analysis-plugin/tree/1.26.0"
+ "source": "https://github.com/Roave/infection-static-analysis-plugin/tree/1.28.0"
},
- "time": "2022-11-30T16:04:59+00:00"
+ "time": "2022-12-30T16:05:23+00:00"
},
{
"name": "sanmai/later",
@@ -5757,16 +5848,16 @@
},
{
"name": "sebastian/environment",
- "version": "5.1.4",
+ "version": "5.1.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7"
+ "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/1b5dff7bb151a4db11d49d90e5408e4e938270f7",
- "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
+ "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
"shasum": ""
},
"require": {
@@ -5808,7 +5899,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/environment/issues",
- "source": "https://github.com/sebastianbergmann/environment/tree/5.1.4"
+ "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5"
},
"funding": [
{
@@ -5816,7 +5907,7 @@
"type": "github"
}
],
- "time": "2022-04-03T09:37:03+00:00"
+ "time": "2023-02-03T06:03:51+00:00"
},
{
"name": "sebastian/exporter",
@@ -6130,16 +6221,16 @@
},
{
"name": "sebastian/recursion-context",
- "version": "4.0.4",
+ "version": "4.0.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172"
+ "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172",
- "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
+ "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
"shasum": ""
},
"require": {
@@ -6178,10 +6269,10 @@
}
],
"description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
+ "homepage": "https://github.com/sebastianbergmann/recursion-context",
"support": {
"issues": "https://github.com/sebastianbergmann/recursion-context/issues",
- "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4"
+ "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5"
},
"funding": [
{
@@ -6189,7 +6280,7 @@
"type": "github"
}
],
- "time": "2020-10-26T13:17:30+00:00"
+ "time": "2023-02-03T06:07:39+00:00"
},
{
"name": "sebastian/resource-operations",
@@ -6248,16 +6339,16 @@
},
{
"name": "sebastian/type",
- "version": "3.2.0",
+ "version": "3.2.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/type.git",
- "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e"
+ "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e",
- "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e",
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
+ "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
"shasum": ""
},
"require": {
@@ -6292,7 +6383,7 @@
"homepage": "https://github.com/sebastianbergmann/type",
"support": {
"issues": "https://github.com/sebastianbergmann/type/issues",
- "source": "https://github.com/sebastianbergmann/type/tree/3.2.0"
+ "source": "https://github.com/sebastianbergmann/type/tree/3.2.1"
},
"funding": [
{
@@ -6300,7 +6391,7 @@
"type": "github"
}
],
- "time": "2022-09-12T14:47:03+00:00"
+ "time": "2023-02-03T06:13:03+00:00"
},
{
"name": "sebastian/version",
@@ -6421,32 +6512,32 @@
},
{
"name": "slevomat/coding-standard",
- "version": "8.6.4",
+ "version": "8.8.0",
"source": {
"type": "git",
"url": "https://github.com/slevomat/coding-standard.git",
- "reference": "8a02c83e59c3230a2a4367b29956a2f2b56e3a24"
+ "reference": "59e25146a4ef0a7b194c5bc55b32dd414345db89"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/slevomat/coding-standard/zipball/8a02c83e59c3230a2a4367b29956a2f2b56e3a24",
- "reference": "8a02c83e59c3230a2a4367b29956a2f2b56e3a24",
+ "url": "https://api.github.com/repos/slevomat/coding-standard/zipball/59e25146a4ef0a7b194c5bc55b32dd414345db89",
+ "reference": "59e25146a4ef0a7b194c5bc55b32dd414345db89",
"shasum": ""
},
"require": {
- "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7",
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7 || ^1.0",
"php": "^7.2 || ^8.0",
- "phpstan/phpdoc-parser": ">=1.11.0 <1.14.0",
+ "phpstan/phpdoc-parser": ">=1.15.2 <1.16.0",
"squizlabs/php_codesniffer": "^3.7.1"
},
"require-dev": {
"phing/phing": "2.17.4",
"php-parallel-lint/php-parallel-lint": "1.3.2",
- "phpstan/phpstan": "1.4.10|1.9.2",
- "phpstan/phpstan-deprecation-rules": "1.0.0",
- "phpstan/phpstan-phpunit": "1.0.0|1.2.2",
+ "phpstan/phpstan": "1.4.10|1.9.6",
+ "phpstan/phpstan-deprecation-rules": "1.1.1",
+ "phpstan/phpstan-phpunit": "1.0.0|1.3.3",
"phpstan/phpstan-strict-rules": "1.4.4",
- "phpunit/phpunit": "7.5.20|8.5.21|9.5.26"
+ "phpunit/phpunit": "7.5.20|8.5.21|9.5.27"
},
"type": "phpcodesniffer-standard",
"extra": {
@@ -6470,7 +6561,7 @@
],
"support": {
"issues": "https://github.com/slevomat/coding-standard/issues",
- "source": "https://github.com/slevomat/coding-standard/tree/8.6.4"
+ "source": "https://github.com/slevomat/coding-standard/tree/8.8.0"
},
"funding": [
{
@@ -6482,7 +6573,7 @@
"type": "tidelift"
}
],
- "time": "2022-11-14T09:26:24+00:00"
+ "time": "2023-01-09T10:46:13+00:00"
},
{
"name": "squizlabs/php_codesniffer",
@@ -6542,16 +6633,16 @@
},
{
"name": "symfony/filesystem",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "50b2523c874605cf3d4acf7a9e2b30b6a440a016"
+ "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/50b2523c874605cf3d4acf7a9e2b30b6a440a016",
- "reference": "50b2523c874605cf3d4acf7a9e2b30b6a440a016",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/e59e8a4006afd7f5654786a83b4fcb8da98f4593",
+ "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593",
"shasum": ""
},
"require": {
@@ -6585,7 +6676,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v6.2.0"
+ "source": "https://github.com/symfony/filesystem/tree/v6.2.5"
},
"funding": [
{
@@ -6601,20 +6692,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-20T13:01:27+00:00"
+ "time": "2023-01-20T17:45:48+00:00"
},
{
"name": "symfony/messenger",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/messenger.git",
- "reference": "c1609b6689b07890e94cf3016396f550c5feeee9"
+ "reference": "b0ee9d7d0cc375260d48aac097b9b025909c32a8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/messenger/zipball/c1609b6689b07890e94cf3016396f550c5feeee9",
- "reference": "c1609b6689b07890e94cf3016396f550c5feeee9",
+ "url": "https://api.github.com/repos/symfony/messenger/zipball/b0ee9d7d0cc375260d48aac097b9b025909c32a8",
+ "reference": "b0ee9d7d0cc375260d48aac097b9b025909c32a8",
"shasum": ""
},
"require": {
@@ -6672,7 +6763,7 @@
"description": "Helps applications send and receive messages to/from other applications or via message queues",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/messenger/tree/v6.2.0"
+ "source": "https://github.com/symfony/messenger/tree/v6.2.5"
},
"funding": [
{
@@ -6688,20 +6779,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-14T10:13:36+00:00"
+ "time": "2023-01-20T18:24:17+00:00"
},
{
"name": "symfony/options-resolver",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/options-resolver.git",
- "reference": "d28f02acde71ff75e957082cd36e973df395f626"
+ "reference": "e8324d44f5af99ec2ccec849934a242f64458f86"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/options-resolver/zipball/d28f02acde71ff75e957082cd36e973df395f626",
- "reference": "d28f02acde71ff75e957082cd36e973df395f626",
+ "url": "https://api.github.com/repos/symfony/options-resolver/zipball/e8324d44f5af99ec2ccec849934a242f64458f86",
+ "reference": "e8324d44f5af99ec2ccec849934a242f64458f86",
"shasum": ""
},
"require": {
@@ -6739,7 +6830,7 @@
"options"
],
"support": {
- "source": "https://github.com/symfony/options-resolver/tree/v6.2.0"
+ "source": "https://github.com/symfony/options-resolver/tree/v6.2.5"
},
"funding": [
{
@@ -6755,7 +6846,7 @@
"type": "tidelift"
}
],
- "time": "2022-11-02T09:08:04+00:00"
+ "time": "2023-01-01T08:38:09+00:00"
},
{
"name": "symfony/polyfill-php72",
@@ -6918,16 +7009,16 @@
},
{
"name": "symfony/process",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "ba6e55359f8f755fe996c58a81e00eaa67a35877"
+ "reference": "9ead139f63dfa38c4e4a9049cc64a8b2748c83b7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/ba6e55359f8f755fe996c58a81e00eaa67a35877",
- "reference": "ba6e55359f8f755fe996c58a81e00eaa67a35877",
+ "url": "https://api.github.com/repos/symfony/process/zipball/9ead139f63dfa38c4e4a9049cc64a8b2748c83b7",
+ "reference": "9ead139f63dfa38c4e4a9049cc64a8b2748c83b7",
"shasum": ""
},
"require": {
@@ -6959,7 +7050,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/process/tree/v6.2.0"
+ "source": "https://github.com/symfony/process/tree/v6.2.5"
},
"funding": [
{
@@ -6975,20 +7066,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-02T09:08:04+00:00"
+ "time": "2023-01-01T08:38:09+00:00"
},
{
"name": "symfony/stopwatch",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/stopwatch.git",
- "reference": "266636bb8f3fbdccc302491df7b3a1b9a8c238a7"
+ "reference": "00b6ac156aacffc53487c930e0ab14587a6607f6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/stopwatch/zipball/266636bb8f3fbdccc302491df7b3a1b9a8c238a7",
- "reference": "266636bb8f3fbdccc302491df7b3a1b9a8c238a7",
+ "url": "https://api.github.com/repos/symfony/stopwatch/zipball/00b6ac156aacffc53487c930e0ab14587a6607f6",
+ "reference": "00b6ac156aacffc53487c930e0ab14587a6607f6",
"shasum": ""
},
"require": {
@@ -7021,7 +7112,7 @@
"description": "Provides a way to profile code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/stopwatch/tree/v6.2.0"
+ "source": "https://github.com/symfony/stopwatch/tree/v6.2.5"
},
"funding": [
{
@@ -7037,20 +7128,20 @@
"type": "tidelift"
}
],
- "time": "2022-09-28T16:00:52+00:00"
+ "time": "2023-01-01T08:36:55+00:00"
},
{
"name": "symfony/var-dumper",
- "version": "v6.2.1",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "1e7544c8698627b908657e5276854d52ab70087a"
+ "reference": "44b7b81749fd20c1bdf4946c041050e22bc8da27"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/1e7544c8698627b908657e5276854d52ab70087a",
- "reference": "1e7544c8698627b908657e5276854d52ab70087a",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/44b7b81749fd20c1bdf4946c041050e22bc8da27",
+ "reference": "44b7b81749fd20c1bdf4946c041050e22bc8da27",
"shasum": ""
},
"require": {
@@ -7109,7 +7200,7 @@
"dump"
],
"support": {
- "source": "https://github.com/symfony/var-dumper/tree/v6.2.1"
+ "source": "https://github.com/symfony/var-dumper/tree/v6.2.5"
},
"funding": [
{
@@ -7125,7 +7216,7 @@
"type": "tidelift"
}
],
- "time": "2022-12-03T22:32:58+00:00"
+ "time": "2023-01-20T17:45:48+00:00"
},
{
"name": "thecodingmachine/safe",
diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon
index 5687f2ea..9166a0bf 100644
--- a/phpstan-baseline.neon
+++ b/phpstan-baseline.neon
@@ -1,10 +1,5 @@
parameters:
ignoreErrors:
- -
- message: "#^Cannot unset offset 'url' on array\\{charset\\?\\: string, dbname\\?\\: string, defaultTableOptions\\?\\: array\\, default_dbname\\?\\: string, driver\\?\\: 'ibm_db2'\\|'mysqli'\\|'oci8'\\|'pdo_mysql'\\|'pdo_oci'\\|'pdo_pgsql'\\|'pdo_sqlite'\\|'pdo_sqlsrv'\\|'sqlite3'\\|'sqlsrv', driverClass\\?\\: class\\-string\\, driverOptions\\?\\: array, host\\?\\: string, \\.\\.\\.\\}\\.$#"
- count: 1
- path: src/Console/DoctrineHelper.php
-
-
message: "#^If condition is always false\\.$#"
count: 1
diff --git a/src/Lock/DoctrineDbalStoreSchemaAdapter.php b/src/Lock/DoctrineDbalStoreSchemaAdapter.php
new file mode 100644
index 00000000..047a5e8f
--- /dev/null
+++ b/src/Lock/DoctrineDbalStoreSchemaAdapter.php
@@ -0,0 +1,23 @@
+doctrineDbalStore->configureSchema($schema);
+ }
+}
diff --git a/src/Projection/Projectionist/RunProjectionistEventBusWrapper.php b/src/Projection/Projectionist/RunProjectionistEventBusWrapper.php
new file mode 100644
index 00000000..f718b971
--- /dev/null
+++ b/src/Projection/Projectionist/RunProjectionistEventBusWrapper.php
@@ -0,0 +1,36 @@
+parentEventBus->dispatch(...$messages);
+
+ $lock = $this->lockFactory->createLock('projectionist-run');
+
+ if (!$lock->acquire(true)) {
+ return;
+ }
+
+ try {
+ $this->projectionist->run();
+ } finally {
+ $lock->release();
+ }
+ }
+}
diff --git a/tests/Integration/Projectionist/ProjectionistTest.php b/tests/Integration/Projectionist/ProjectionistTest.php
index 19946cba..503cfdf2 100644
--- a/tests/Integration/Projectionist/ProjectionistTest.php
+++ b/tests/Integration/Projectionist/ProjectionistTest.php
@@ -6,10 +6,12 @@
use Doctrine\DBAL\Connection;
use Patchlevel\EventSourcing\EventBus\DefaultEventBus;
+use Patchlevel\EventSourcing\Lock\DoctrineDbalStoreSchemaAdapter;
use Patchlevel\EventSourcing\Metadata\AggregateRoot\AggregateRootRegistry;
use Patchlevel\EventSourcing\Metadata\AggregateRoot\AttributeAggregateRootRegistryFactory;
use Patchlevel\EventSourcing\Projection\Projection\Store\DoctrineStore;
use Patchlevel\EventSourcing\Projection\Projectionist\DefaultProjectionist;
+use Patchlevel\EventSourcing\Projection\Projectionist\RunProjectionistEventBusWrapper;
use Patchlevel\EventSourcing\Projection\Projector\InMemoryProjectorRepository;
use Patchlevel\EventSourcing\Repository\DefaultRepositoryManager;
use Patchlevel\EventSourcing\Schema\ChainSchemaConfigurator;
@@ -20,6 +22,8 @@
use Patchlevel\EventSourcing\Tests\Integration\Projectionist\Aggregate\Profile;
use Patchlevel\EventSourcing\Tests\Integration\Projectionist\Projection\ProfileProjection;
use PHPUnit\Framework\TestCase;
+use Symfony\Component\Lock\LockFactory;
+use Symfony\Component\Lock\Store\DoctrineDbalStore;
/**
* @coversNothing
@@ -38,7 +42,7 @@ public function tearDown(): void
$this->connection->close();
}
- public function testSuccessful(): void
+ public function testAsync(): void
{
$store = new SingleTableStore(
$this->connection,
@@ -90,4 +94,66 @@ public function testSuccessful(): void
$projectionist->remove();
}
+
+ public function testSync(): void
+ {
+ $aggregateRegistry = (new AttributeAggregateRootRegistryFactory())->create([__DIR__ . '/Aggregate']);
+
+ $store = new SingleTableStore(
+ $this->connection,
+ DefaultEventSerializer::createFromPaths([__DIR__ . '/Events']),
+ $aggregateRegistry,
+ 'eventstore'
+ );
+
+ $lockStore = new DoctrineDbalStore($this->connection);
+ $projectionStore = new DoctrineStore($this->connection);
+
+ $projectionist = new DefaultProjectionist(
+ $store,
+ $projectionStore,
+ new InMemoryProjectorRepository(
+ [new ProfileProjection($this->connection)]
+ ),
+ );
+
+ $manager = new DefaultRepositoryManager(
+ $aggregateRegistry,
+ $store,
+ new RunProjectionistEventBusWrapper(
+ new DefaultEventBus(),
+ $projectionist,
+ new LockFactory($lockStore)
+ ),
+ );
+
+ $repository = $manager->get(Profile::class);
+
+ $schemaDirector = new DoctrineSchemaDirector(
+ $this->connection,
+ new ChainSchemaConfigurator([
+ $store,
+ $projectionStore,
+ new DoctrineDbalStoreSchemaAdapter($lockStore),
+ ])
+ );
+
+ $schemaDirector->drop();
+ $schemaDirector->create();
+ $projectionist->boot();
+
+ $profile = Profile::create(ProfileId::fromString('1'), 'John');
+ $repository->save($profile);
+
+ $projectionist->run();
+
+ $result = $this->connection->fetchAssociative('SELECT * FROM projection_profile_1 WHERE id = ?', ['1']);
+
+ self::assertIsArray($result);
+ self::assertArrayHasKey('id', $result);
+ self::assertSame('1', $result['id']);
+ self::assertSame('John', $result['name']);
+
+ $projectionist->remove();
+ }
}
diff --git a/tests/Unit/Projection/Projectionist/RunProjectionistEventBusWrapperTest.php b/tests/Unit/Projection/Projectionist/RunProjectionistEventBusWrapperTest.php
new file mode 100644
index 00000000..a4509b81
--- /dev/null
+++ b/tests/Unit/Projection/Projectionist/RunProjectionistEventBusWrapperTest.php
@@ -0,0 +1,45 @@
+markTestSkipped('skip until https://github.com/phpspec/prophecy/issues/568 is fixed');
+
+ $messages = [
+ Message::create(new ProfileVisited(ProfileId::fromString('1'))),
+ Message::create(new ProfileVisited(ProfileId::fromString('2'))),
+ ];
+
+ $parentEventBus = $this->prophesize(EventBus::class);
+ $parentEventBus->dispatch(...$messages)->shouldBeCalledOnce();
+ $parentEventBus->reveal();
+
+ $projectionist = $this->prophesize(Projectionist::class);
+ $projectionist->run()->shouldBeCalledOnce();
+ $projectionist->reveal();
+
+ $eventBus = new RunProjectionistEventBusWrapper(
+ $parentEventBus->reveal(),
+ $projectionist->reveal()
+ );
+
+ $eventBus->dispatch(...$messages);
+ }
+}
diff --git a/tools/composer.json b/tools/composer.json
index cf963b57..8331ddce 100644
--- a/tools/composer.json
+++ b/tools/composer.json
@@ -1,6 +1,6 @@
{
"require": {
"php": "~8.1.0 || ~8.2.0",
- "roave/backward-compatibility-check": "^7.4.0"
+ "roave/backward-compatibility-check": "^8.3.0"
}
}
diff --git a/tools/composer.lock b/tools/composer.lock
index 34993c92..6b81689f 100644
--- a/tools/composer.lock
+++ b/tools/composer.lock
@@ -4,20 +4,20 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "d78f90f8b224af8b5f7bc5088dbec3da",
+ "content-hash": "6a20a14f00f5057c43da6cde2b450caa",
"packages": [
{
"name": "azjezz/psl",
- "version": "2.3.0",
+ "version": "2.4.1",
"source": {
"type": "git",
"url": "https://github.com/azjezz/psl.git",
- "reference": "82f241ea8ad997701e2fdcd130e8a9433eeaeafa"
+ "reference": "eacc90cfdfd7eafffd630e81ab69b113309e594b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/azjezz/psl/zipball/82f241ea8ad997701e2fdcd130e8a9433eeaeafa",
- "reference": "82f241ea8ad997701e2fdcd130e8a9433eeaeafa",
+ "url": "https://api.github.com/repos/azjezz/psl/zipball/eacc90cfdfd7eafffd630e81ab69b113309e594b",
+ "reference": "eacc90cfdfd7eafffd630e81ab69b113309e594b",
"shasum": ""
},
"require": {
@@ -32,7 +32,7 @@
"require-dev": {
"friendsofphp/php-cs-fixer": "^3.4.0",
"php-coveralls/php-coveralls": "^2.5.2",
- "php-standard-library/psalm-plugin": "^2.1.0",
+ "php-standard-library/psalm-plugin": "^2.2",
"phpbench/phpbench": "^1.2.3",
"phpunit/phpunit": "^9.5.16",
"roave/infection-static-analysis-plugin": "^1.26.0",
@@ -70,7 +70,7 @@
"description": "PHP Standard Library",
"support": {
"issues": "https://github.com/azjezz/psl/issues",
- "source": "https://github.com/azjezz/psl/tree/2.3.0"
+ "source": "https://github.com/azjezz/psl/tree/2.4.1"
},
"funding": [
{
@@ -78,7 +78,7 @@
"type": "open_collective"
}
],
- "time": "2022-12-01T07:52:14+00:00"
+ "time": "2023-01-26T12:53:04+00:00"
},
{
"name": "beberlei/assert",
@@ -149,16 +149,16 @@
},
{
"name": "composer/ca-bundle",
- "version": "1.3.4",
+ "version": "1.3.5",
"source": {
"type": "git",
"url": "https://github.com/composer/ca-bundle.git",
- "reference": "69098eca243998b53eed7a48d82dedd28b447cd5"
+ "reference": "74780ccf8c19d6acb8d65c5f39cd72110e132bbd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/ca-bundle/zipball/69098eca243998b53eed7a48d82dedd28b447cd5",
- "reference": "69098eca243998b53eed7a48d82dedd28b447cd5",
+ "url": "https://api.github.com/repos/composer/ca-bundle/zipball/74780ccf8c19d6acb8d65c5f39cd72110e132bbd",
+ "reference": "74780ccf8c19d6acb8d65c5f39cd72110e132bbd",
"shasum": ""
},
"require": {
@@ -205,7 +205,7 @@
"support": {
"irc": "irc://irc.freenode.org/composer",
"issues": "https://github.com/composer/ca-bundle/issues",
- "source": "https://github.com/composer/ca-bundle/tree/1.3.4"
+ "source": "https://github.com/composer/ca-bundle/tree/1.3.5"
},
"funding": [
{
@@ -221,7 +221,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-12T12:08:29+00:00"
+ "time": "2023-01-11T08:27:00+00:00"
},
{
"name": "composer/class-map-generator",
@@ -298,23 +298,23 @@
},
{
"name": "composer/composer",
- "version": "2.4.4",
+ "version": "2.5.3",
"source": {
"type": "git",
"url": "https://github.com/composer/composer.git",
- "reference": "e8d9087229bcdbc5867594d3098091412f1130cf"
+ "reference": "607a4c04006ce1d2b6fdfd5467bae3d7ad9ce5ab"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/composer/zipball/e8d9087229bcdbc5867594d3098091412f1130cf",
- "reference": "e8d9087229bcdbc5867594d3098091412f1130cf",
+ "url": "https://api.github.com/repos/composer/composer/zipball/607a4c04006ce1d2b6fdfd5467bae3d7ad9ce5ab",
+ "reference": "607a4c04006ce1d2b6fdfd5467bae3d7ad9ce5ab",
"shasum": ""
},
"require": {
"composer/ca-bundle": "^1.0",
"composer/class-map-generator": "^1.0",
"composer/metadata-minifier": "^1.0",
- "composer/pcre": "^2 || ^3",
+ "composer/pcre": "^2.1 || ^3.1",
"composer/semver": "^3.0",
"composer/spdx-licenses": "^1.5.7",
"composer/xdebug-handler": "^2.0.2 || ^3.0.3",
@@ -330,10 +330,11 @@
"symfony/finder": "^5.4 || ^6.0",
"symfony/polyfill-php73": "^1.24",
"symfony/polyfill-php80": "^1.24",
+ "symfony/polyfill-php81": "^1.24",
"symfony/process": "^5.4 || ^6.0"
},
"require-dev": {
- "phpstan/phpstan": "^1.4.1",
+ "phpstan/phpstan": "^1.9.3",
"phpstan/phpstan-deprecation-rules": "^1",
"phpstan/phpstan-phpunit": "^1.0",
"phpstan/phpstan-strict-rules": "^1",
@@ -351,7 +352,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "2.4-dev"
+ "dev-main": "2.5-dev"
},
"phpstan": {
"includes": [
@@ -390,7 +391,7 @@
"support": {
"irc": "ircs://irc.libera.chat:6697/composer",
"issues": "https://github.com/composer/composer/issues",
- "source": "https://github.com/composer/composer/tree/2.4.4"
+ "source": "https://github.com/composer/composer/tree/2.5.3"
},
"funding": [
{
@@ -406,7 +407,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-27T12:39:29+00:00"
+ "time": "2023-02-10T12:23:52+00:00"
},
{
"name": "composer/metadata-minifier",
@@ -777,16 +778,16 @@
},
{
"name": "jetbrains/phpstorm-stubs",
- "version": "v2022.2",
+ "version": "v2022.3",
"source": {
"type": "git",
"url": "https://github.com/JetBrains/phpstorm-stubs.git",
- "reference": "01006d9854679672fc8b85c6d5063ea6f25226ac"
+ "reference": "6b568c153cea002dc6fad96285c3063d07cab18d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/JetBrains/phpstorm-stubs/zipball/01006d9854679672fc8b85c6d5063ea6f25226ac",
- "reference": "01006d9854679672fc8b85c6d5063ea6f25226ac",
+ "url": "https://api.github.com/repos/JetBrains/phpstorm-stubs/zipball/6b568c153cea002dc6fad96285c3063d07cab18d",
+ "reference": "6b568c153cea002dc6fad96285c3063d07cab18d",
"shasum": ""
},
"require-dev": {
@@ -819,9 +820,9 @@
"type"
],
"support": {
- "source": "https://github.com/JetBrains/phpstorm-stubs/tree/v2022.2"
+ "source": "https://github.com/JetBrains/phpstorm-stubs/tree/v2022.3"
},
- "time": "2022-07-25T13:18:36+00:00"
+ "time": "2022-10-17T09:21:37+00:00"
},
{
"name": "justinrainbow/json-schema",
@@ -895,16 +896,16 @@
},
{
"name": "nikic/php-parser",
- "version": "v4.15.2",
+ "version": "v4.15.3",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc"
+ "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc",
- "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039",
+ "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039",
"shasum": ""
},
"require": {
@@ -945,9 +946,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.2"
+ "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3"
},
- "time": "2022-11-12T15:38:23+00:00"
+ "time": "2023-01-16T22:05:37+00:00"
},
{
"name": "nikolaposa/version",
@@ -1325,41 +1326,42 @@
},
{
"name": "roave/backward-compatibility-check",
- "version": "7.4.0",
+ "version": "8.3.0",
"source": {
"type": "git",
"url": "https://github.com/Roave/BackwardCompatibilityCheck.git",
- "reference": "670a5cdaa2d60bc07658a5605f57c2154a1ece76"
+ "reference": "40956d53832b80dd4025c87b4cf5e1756f42f43d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Roave/BackwardCompatibilityCheck/zipball/670a5cdaa2d60bc07658a5605f57c2154a1ece76",
- "reference": "670a5cdaa2d60bc07658a5605f57c2154a1ece76",
+ "url": "https://api.github.com/repos/Roave/BackwardCompatibilityCheck/zipball/40956d53832b80dd4025c87b4cf5e1756f42f43d",
+ "reference": "40956d53832b80dd4025c87b4cf5e1756f42f43d",
"shasum": ""
},
"require": {
- "azjezz/psl": "^2.0.4",
- "composer/composer": "^2.4.4",
+ "azjezz/psl": "^2.3.1",
+ "composer/composer": "^2.5.1",
"ext-json": "*",
+ "nikic/php-parser": "^4.15.3",
"nikolaposa/version": "^4.1.0",
"ocramius/package-versions": "^2.7.0",
"php": "~8.1.0 || ~8.2.0",
- "roave/better-reflection": "^6.3.0",
- "symfony/console": "^6.1.7"
+ "roave/better-reflection": "^6.5.0",
+ "symfony/console": "^6.2.3"
},
"conflict": {
"revolt/event-loop": "<0.2.5",
"symfony/process": "<5.3.7"
},
"require-dev": {
- "doctrine/coding-standard": "^10.0.0",
- "php-standard-library/psalm-plugin": "^2.0.2",
- "phpunit/phpunit": "^9.5.26",
- "psalm/plugin-phpunit": "^0.17.0",
- "roave/infection-static-analysis-plugin": "^1.25",
+ "doctrine/coding-standard": "^11.0.0",
+ "php-standard-library/psalm-plugin": "^2.2.1",
+ "phpunit/phpunit": "^9.5.27",
+ "psalm/plugin-phpunit": "^0.18.4",
+ "roave/infection-static-analysis-plugin": "^1.27.0",
"roave/security-advisories": "dev-master",
"squizlabs/php_codesniffer": "^3.7.1",
- "vimeo/psalm": "^4.29.0"
+ "vimeo/psalm": "^5.4.0"
},
"bin": [
"bin/roave-backward-compatibility-check"
@@ -1387,41 +1389,41 @@
"description": "Tool to compare two revisions of a public API to check for BC breaks",
"support": {
"issues": "https://github.com/Roave/BackwardCompatibilityCheck/issues",
- "source": "https://github.com/Roave/BackwardCompatibilityCheck/tree/7.4.0"
+ "source": "https://github.com/Roave/BackwardCompatibilityCheck/tree/8.3.0"
},
- "time": "2022-10-31T21:48:04+00:00"
+ "time": "2023-02-11T17:26:11+00:00"
},
{
"name": "roave/better-reflection",
- "version": "6.4.1",
+ "version": "6.7.0",
"source": {
"type": "git",
"url": "https://github.com/Roave/BetterReflection.git",
- "reference": "f3f3565be6fea880b57d600d7b213dc09a7c8dde"
+ "reference": "eb41dec4e97d67a5718891a15b8ff4a0b65db3b2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Roave/BetterReflection/zipball/f3f3565be6fea880b57d600d7b213dc09a7c8dde",
- "reference": "f3f3565be6fea880b57d600d7b213dc09a7c8dde",
+ "url": "https://api.github.com/repos/Roave/BetterReflection/zipball/eb41dec4e97d67a5718891a15b8ff4a0b65db3b2",
+ "reference": "eb41dec4e97d67a5718891a15b8ff4a0b65db3b2",
"shasum": ""
},
"require": {
"ext-json": "*",
- "jetbrains/phpstorm-stubs": "2022.2",
- "nikic/php-parser": "^4.15.1",
- "php": "~8.0.12 || ~8.1.0 || ~8.2.0",
+ "jetbrains/phpstorm-stubs": "2022.3",
+ "nikic/php-parser": "^4.15.3",
+ "php": "~8.1.0 || ~8.2.0",
"roave/signature": "^1.7"
},
"conflict": {
"thecodingmachine/safe": "<1.1.3"
},
"require-dev": {
- "doctrine/coding-standard": "^10.0.0",
- "phpstan/phpstan": "^1.8.10",
- "phpstan/phpstan-phpunit": "^1.2.2",
- "phpunit/phpunit": "^9.5.25",
- "roave/infection-static-analysis-plugin": "^1.25.0",
- "vimeo/psalm": "^4.29"
+ "doctrine/coding-standard": "^11.1.0",
+ "phpstan/phpstan": "^1.9.16",
+ "phpstan/phpstan-phpunit": "^1.3.3",
+ "phpunit/phpunit": "10.0.5",
+ "roave/infection-static-analysis-plugin": "^1.28.0",
+ "vimeo/psalm": "5.6.0"
},
"suggest": {
"composer/composer": "Required to use the ComposerSourceLocator"
@@ -1461,9 +1463,9 @@
"description": "Better Reflection - an improved code reflection API",
"support": {
"issues": "https://github.com/Roave/BetterReflection/issues",
- "source": "https://github.com/Roave/BetterReflection/tree/6.4.1"
+ "source": "https://github.com/Roave/BetterReflection/tree/6.7.0"
},
- "time": "2022-11-23T12:27:41+00:00"
+ "time": "2023-02-08T15:16:19+00:00"
},
{
"name": "roave/signature",
@@ -1680,16 +1682,16 @@
},
{
"name": "symfony/console",
- "version": "v6.2.1",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "58f6cef5dc5f641b7bbdbf8b32b44cc926c35f3f"
+ "reference": "3e294254f2191762c1d137aed4b94e966965e985"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/58f6cef5dc5f641b7bbdbf8b32b44cc926c35f3f",
- "reference": "58f6cef5dc5f641b7bbdbf8b32b44cc926c35f3f",
+ "url": "https://api.github.com/repos/symfony/console/zipball/3e294254f2191762c1d137aed4b94e966965e985",
+ "reference": "3e294254f2191762c1d137aed4b94e966965e985",
"shasum": ""
},
"require": {
@@ -1756,7 +1758,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v6.2.1"
+ "source": "https://github.com/symfony/console/tree/v6.2.5"
},
"funding": [
{
@@ -1772,7 +1774,7 @@
"type": "tidelift"
}
],
- "time": "2022-12-01T13:44:20+00:00"
+ "time": "2023-01-01T08:38:09+00:00"
},
{
"name": "symfony/deprecation-contracts",
@@ -1843,16 +1845,16 @@
},
{
"name": "symfony/filesystem",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "50b2523c874605cf3d4acf7a9e2b30b6a440a016"
+ "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/50b2523c874605cf3d4acf7a9e2b30b6a440a016",
- "reference": "50b2523c874605cf3d4acf7a9e2b30b6a440a016",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/e59e8a4006afd7f5654786a83b4fcb8da98f4593",
+ "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593",
"shasum": ""
},
"require": {
@@ -1886,7 +1888,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v6.2.0"
+ "source": "https://github.com/symfony/filesystem/tree/v6.2.5"
},
"funding": [
{
@@ -1902,20 +1904,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-20T13:01:27+00:00"
+ "time": "2023-01-20T17:45:48+00:00"
},
{
"name": "symfony/finder",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "eb2355f69519e4ef33f1835bca4c935f5d42e570"
+ "reference": "c90dc446976a612e3312a97a6ec0069ab0c2099c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/eb2355f69519e4ef33f1835bca4c935f5d42e570",
- "reference": "eb2355f69519e4ef33f1835bca4c935f5d42e570",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/c90dc446976a612e3312a97a6ec0069ab0c2099c",
+ "reference": "c90dc446976a612e3312a97a6ec0069ab0c2099c",
"shasum": ""
},
"require": {
@@ -1950,7 +1952,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v6.2.0"
+ "source": "https://github.com/symfony/finder/tree/v6.2.5"
},
"funding": [
{
@@ -1966,7 +1968,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-09T08:55:40+00:00"
+ "time": "2023-01-20T17:45:48+00:00"
},
{
"name": "symfony/polyfill-ctype",
@@ -2460,18 +2462,97 @@
],
"time": "2022-11-03T14:55:06+00:00"
},
+ {
+ "name": "symfony/polyfill-php81",
+ "version": "v1.27.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-php81.git",
+ "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a",
+ "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.1"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "1.27-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Php81\\": ""
+ },
+ "classmap": [
+ "Resources/stubs"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2022-11-03T14:55:06+00:00"
+ },
{
"name": "symfony/process",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "ba6e55359f8f755fe996c58a81e00eaa67a35877"
+ "reference": "9ead139f63dfa38c4e4a9049cc64a8b2748c83b7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/ba6e55359f8f755fe996c58a81e00eaa67a35877",
- "reference": "ba6e55359f8f755fe996c58a81e00eaa67a35877",
+ "url": "https://api.github.com/repos/symfony/process/zipball/9ead139f63dfa38c4e4a9049cc64a8b2748c83b7",
+ "reference": "9ead139f63dfa38c4e4a9049cc64a8b2748c83b7",
"shasum": ""
},
"require": {
@@ -2503,7 +2584,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/process/tree/v6.2.0"
+ "source": "https://github.com/symfony/process/tree/v6.2.5"
},
"funding": [
{
@@ -2519,20 +2600,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-02T09:08:04+00:00"
+ "time": "2023-01-01T08:38:09+00:00"
},
{
"name": "symfony/service-contracts",
- "version": "v3.1.1",
+ "version": "v3.2.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "925e713fe8fcacf6bc05e936edd8dd5441a21239"
+ "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/925e713fe8fcacf6bc05e936edd8dd5441a21239",
- "reference": "925e713fe8fcacf6bc05e936edd8dd5441a21239",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/aac98028c69df04ee77eb69b96b86ee51fbf4b75",
+ "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75",
"shasum": ""
},
"require": {
@@ -2548,7 +2629,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "3.1-dev"
+ "dev-main": "3.3-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -2588,7 +2669,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v3.1.1"
+ "source": "https://github.com/symfony/service-contracts/tree/v3.2.0"
},
"funding": [
{
@@ -2604,20 +2685,20 @@
"type": "tidelift"
}
],
- "time": "2022-05-30T19:18:58+00:00"
+ "time": "2022-11-25T10:21:52+00:00"
},
{
"name": "symfony/string",
- "version": "v6.2.0",
+ "version": "v6.2.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "145702685e0d12f81d755c71127bfff7582fdd36"
+ "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/145702685e0d12f81d755c71127bfff7582fdd36",
- "reference": "145702685e0d12f81d755c71127bfff7582fdd36",
+ "url": "https://api.github.com/repos/symfony/string/zipball/b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0",
+ "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0",
"shasum": ""
},
"require": {
@@ -2674,7 +2755,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v6.2.0"
+ "source": "https://github.com/symfony/string/tree/v6.2.5"
},
"funding": [
{
@@ -2690,7 +2771,7 @@
"type": "tidelift"
}
],
- "time": "2022-11-30T17:13:47+00:00"
+ "time": "2023-01-01T08:38:09+00:00"
}
],
"packages-dev": [],