diff --git a/CHANGELOG.md b/CHANGELOG.md
index 79e4940..2106a59 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
# Changelog
+## 1.3.0
+
+- Added method `mapWithIdKeys(callable $mapFunction): array` to `IdList`.
+
## 1.2.1
- Extend annotations for `Id` and `IdList`.
diff --git a/README.md b/README.md
index 5a97426..5d970c7 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,7 @@ A Symfony bundle to work with id and id list value objects in Symfony. It includ
As it's a central part of an application, it's tested thoroughly (including mutation testing).
-[![Latest Stable Version](https://img.shields.io/badge/stable-1.2.1-blue)](https://packagist.org/packages/digital-craftsman/ids)
+[![Latest Stable Version](https://img.shields.io/badge/stable-1.3.0-blue)](https://packagist.org/packages/digital-craftsman/ids)
[![PHP Version Require](https://img.shields.io/badge/php-8.2|8.3-5b5d95)](https://packagist.org/packages/digital-craftsman/ids)
[![codecov](https://codecov.io/gh/digital-craftsman-de/ids/branch/main/graph/badge.svg?token=BL0JKZYLBG)](https://codecov.io/gh/digital-craftsman-de/ids)
![Packagist Downloads](https://img.shields.io/packagist/dt/digital-craftsman/ids)
diff --git a/UPGRADE.md b/UPGRADE.md
index cb129b1..9e9d743 100644
--- a/UPGRADE.md
+++ b/UPGRADE.md
@@ -1,5 +1,9 @@
# Upgrade guide
+## From 1.2.* to 1.3.0
+
+Nothing to do.
+
## From 1.2.0 to 1.2.1
- Run Psalm to see if the new annotations find any issues know visible (make sure that all your `Id` and `IdList` classes are `final`).
diff --git a/composer.json b/composer.json
index 477a220..184769d 100644
--- a/composer.json
+++ b/composer.json
@@ -11,9 +11,9 @@
},
"require-dev": {
"vimeo/psalm": "^5.25",
- "friendsofphp/php-cs-fixer": "^3.3",
- "phpunit/phpunit": "^9.5",
- "infection/infection": "^0.26.15",
+ "friendsofphp/php-cs-fixer": "^v3.59.3",
+ "phpunit/phpunit": "^10.5",
+ "infection/infection": "0.27.*",
"phpstan/phpstan": "^1.9"
},
"suggest": {
diff --git a/composer.lock b/composer.lock
index 1680d8e..b1086da 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": "c38a9176fae7fd00b8752c15e0eeec6a",
+ "content-hash": "b6f51eb6d4b97dc65d21419fd6d9ca8c",
"packages": [
{
"name": "doctrine/cache",
@@ -504,16 +504,16 @@
},
{
"name": "psr/log",
- "version": "3.0.0",
+ "version": "3.0.2",
"source": {
"type": "git",
"url": "https://github.com/php-fig/log.git",
- "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001"
+ "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001",
- "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001",
+ "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3",
+ "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3",
"shasum": ""
},
"require": {
@@ -548,22 +548,22 @@
"psr-3"
],
"support": {
- "source": "https://github.com/php-fig/log/tree/3.0.0"
+ "source": "https://github.com/php-fig/log/tree/3.0.2"
},
- "time": "2021-07-14T16:46:02+00:00"
+ "time": "2024-09-11T13:17:53+00:00"
},
{
"name": "symfony/cache",
- "version": "v7.0.0",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/cache.git",
- "reference": "5e2376f726d61541b9617512e374808d12c1dc22"
+ "reference": "86e5296b10e4dec8c8441056ca606aedb8a3be0a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/cache/zipball/5e2376f726d61541b9617512e374808d12c1dc22",
- "reference": "5e2376f726d61541b9617512e374808d12c1dc22",
+ "url": "https://api.github.com/repos/symfony/cache/zipball/86e5296b10e4dec8c8441056ca606aedb8a3be0a",
+ "reference": "86e5296b10e4dec8c8441056ca606aedb8a3be0a",
"shasum": ""
},
"require": {
@@ -571,6 +571,7 @@
"psr/cache": "^2.0|^3.0",
"psr/log": "^1.1|^2|^3",
"symfony/cache-contracts": "^2.5|^3",
+ "symfony/deprecation-contracts": "^2.5|^3.0",
"symfony/service-contracts": "^2.5|^3",
"symfony/var-exporter": "^6.4|^7.0"
},
@@ -630,7 +631,7 @@
"psr6"
],
"support": {
- "source": "https://github.com/symfony/cache/tree/v7.0.0"
+ "source": "https://github.com/symfony/cache/tree/v7.1.5"
},
"funding": [
{
@@ -646,7 +647,7 @@
"type": "tidelift"
}
],
- "time": "2023-11-25T15:40:35+00:00"
+ "time": "2024-09-17T09:16:35+00:00"
},
{
"name": "symfony/cache-contracts",
@@ -726,22 +727,22 @@
},
{
"name": "symfony/config",
- "version": "v7.0.0",
+ "version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/config.git",
- "reference": "8789646600f4e7e451dde9e1dc81cfa429f3857a"
+ "reference": "2210fc99fa42a259eb6c89d1f724ce0c4d62d5d2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/8789646600f4e7e451dde9e1dc81cfa429f3857a",
- "reference": "8789646600f4e7e451dde9e1dc81cfa429f3857a",
+ "url": "https://api.github.com/repos/symfony/config/zipball/2210fc99fa42a259eb6c89d1f724ce0c4d62d5d2",
+ "reference": "2210fc99fa42a259eb6c89d1f724ce0c4d62d5d2",
"shasum": ""
},
"require": {
"php": ">=8.2",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/filesystem": "^6.4|^7.0",
+ "symfony/filesystem": "^7.1",
"symfony/polyfill-ctype": "~1.8"
},
"conflict": {
@@ -781,7 +782,7 @@
"description": "Helps you find, load, combine, autofill and validate configuration values of any kind",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/config/tree/v7.0.0"
+ "source": "https://github.com/symfony/config/tree/v7.1.1"
},
"funding": [
{
@@ -797,27 +798,27 @@
"type": "tidelift"
}
],
- "time": "2023-11-09T08:30:23+00:00"
+ "time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/dependency-injection",
- "version": "v7.0.1",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
- "reference": "f6667642954bce638733f254c39e5b5700b47ba4"
+ "reference": "38465f925ec4e0707b090e9147c65869837d639d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/f6667642954bce638733f254c39e5b5700b47ba4",
- "reference": "f6667642954bce638733f254c39e5b5700b47ba4",
+ "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/38465f925ec4e0707b090e9147c65869837d639d",
+ "reference": "38465f925ec4e0707b090e9147c65869837d639d",
"shasum": ""
},
"require": {
"php": ">=8.2",
"psr/container": "^1.1|^2.0",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/service-contracts": "^3.3",
+ "symfony/service-contracts": "^3.5",
"symfony/var-exporter": "^6.4|^7.0"
},
"conflict": {
@@ -861,7 +862,7 @@
"description": "Allows you to standardize and centralize the way objects are constructed in your application",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/dependency-injection/tree/v7.0.1"
+ "source": "https://github.com/symfony/dependency-injection/tree/v7.1.5"
},
"funding": [
{
@@ -877,7 +878,7 @@
"type": "tidelift"
}
],
- "time": "2023-12-01T15:10:06+00:00"
+ "time": "2024-09-20T08:28:38+00:00"
},
{
"name": "symfony/deprecation-contracts",
@@ -948,16 +949,16 @@
},
{
"name": "symfony/error-handler",
- "version": "v7.0.0",
+ "version": "v7.1.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/error-handler.git",
- "reference": "80b1258be1b84c12a345d0ec3881bbf2e5270cc2"
+ "reference": "432bb369952795c61ca1def65e078c4a80dad13c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/error-handler/zipball/80b1258be1b84c12a345d0ec3881bbf2e5270cc2",
- "reference": "80b1258be1b84c12a345d0ec3881bbf2e5270cc2",
+ "url": "https://api.github.com/repos/symfony/error-handler/zipball/432bb369952795c61ca1def65e078c4a80dad13c",
+ "reference": "432bb369952795c61ca1def65e078c4a80dad13c",
"shasum": ""
},
"require": {
@@ -1003,7 +1004,7 @@
"description": "Provides tools to manage errors and ease debugging PHP code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/error-handler/tree/v7.0.0"
+ "source": "https://github.com/symfony/error-handler/tree/v7.1.3"
},
"funding": [
{
@@ -1019,20 +1020,20 @@
"type": "tidelift"
}
],
- "time": "2023-10-20T16:35:23+00:00"
+ "time": "2024-07-26T13:02:51+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v7.0.0",
+ "version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "c459b40ffe67c49af6fd392aac374c9edf8a027e"
+ "reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/c459b40ffe67c49af6fd392aac374c9edf8a027e",
- "reference": "c459b40ffe67c49af6fd392aac374c9edf8a027e",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7",
+ "reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7",
"shasum": ""
},
"require": {
@@ -1083,7 +1084,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/v7.0.0"
+ "source": "https://github.com/symfony/event-dispatcher/tree/v7.1.1"
},
"funding": [
{
@@ -1099,7 +1100,7 @@
"type": "tidelift"
}
],
- "time": "2023-07-27T16:29:09+00:00"
+ "time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@@ -1179,25 +1180,25 @@
},
{
"name": "symfony/filesystem",
- "version": "v6.4.9",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "b51ef8059159330b74a4d52f68e671033c0fe463"
+ "reference": "61fe0566189bf32e8cfee78335d8776f64a66f5a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/b51ef8059159330b74a4d52f68e671033c0fe463",
- "reference": "b51ef8059159330b74a4d52f68e671033c0fe463",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/61fe0566189bf32e8cfee78335d8776f64a66f5a",
+ "reference": "61fe0566189bf32e8cfee78335d8776f64a66f5a",
"shasum": ""
},
"require": {
- "php": ">=8.1",
+ "php": ">=8.2",
"symfony/polyfill-ctype": "~1.8",
"symfony/polyfill-mbstring": "~1.8"
},
"require-dev": {
- "symfony/process": "^5.4|^6.4|^7.0"
+ "symfony/process": "^6.4|^7.0"
},
"type": "library",
"autoload": {
@@ -1225,7 +1226,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v6.4.9"
+ "source": "https://github.com/symfony/filesystem/tree/v7.1.5"
},
"funding": [
{
@@ -1241,27 +1242,27 @@
"type": "tidelift"
}
],
- "time": "2024-06-28T09:49:33+00:00"
+ "time": "2024-09-17T09:16:35+00:00"
},
{
"name": "symfony/finder",
- "version": "v6.4.0",
+ "version": "v7.1.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "11d736e97f116ac375a81f96e662911a34cd50ce"
+ "reference": "d95bbf319f7d052082fb7af147e0f835a695e823"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/11d736e97f116ac375a81f96e662911a34cd50ce",
- "reference": "11d736e97f116ac375a81f96e662911a34cd50ce",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/d95bbf319f7d052082fb7af147e0f835a695e823",
+ "reference": "d95bbf319f7d052082fb7af147e0f835a695e823",
"shasum": ""
},
"require": {
- "php": ">=8.1"
+ "php": ">=8.2"
},
"require-dev": {
- "symfony/filesystem": "^6.0|^7.0"
+ "symfony/filesystem": "^6.4|^7.0"
},
"type": "library",
"autoload": {
@@ -1289,7 +1290,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v6.4.0"
+ "source": "https://github.com/symfony/finder/tree/v7.1.4"
},
"funding": [
{
@@ -1305,20 +1306,20 @@
"type": "tidelift"
}
],
- "time": "2023-10-31T17:30:12+00:00"
+ "time": "2024-08-13T14:28:19+00:00"
},
{
"name": "symfony/framework-bundle",
- "version": "v7.0.1",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/framework-bundle.git",
- "reference": "71f790cc6a81828b810c830ad72b1bc4c8ceaf74"
+ "reference": "8a792de86230c13a9de7750c0c8b23cc083183d4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/71f790cc6a81828b810c830ad72b1bc4c8ceaf74",
- "reference": "71f790cc6a81828b810c830ad72b1bc4c8ceaf74",
+ "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/8a792de86230c13a9de7750c0c8b23cc083183d4",
+ "reference": "8a792de86230c13a9de7750c0c8b23cc083183d4",
"shasum": ""
},
"require": {
@@ -1327,11 +1328,11 @@
"php": ">=8.2",
"symfony/cache": "^6.4|^7.0",
"symfony/config": "^6.4|^7.0",
- "symfony/dependency-injection": "^6.4|^7.0",
+ "symfony/dependency-injection": "^7.1.5",
"symfony/deprecation-contracts": "^2.5|^3",
"symfony/error-handler": "^6.4|^7.0",
"symfony/event-dispatcher": "^6.4|^7.0",
- "symfony/filesystem": "^6.4|^7.0",
+ "symfony/filesystem": "^7.1",
"symfony/finder": "^6.4|^7.0",
"symfony/http-foundation": "^6.4|^7.0",
"symfony/http-kernel": "^6.4|^7.0",
@@ -1356,7 +1357,7 @@
"symfony/mime": "<6.4",
"symfony/property-access": "<6.4",
"symfony/property-info": "<6.4",
- "symfony/scheduler": "<6.4",
+ "symfony/scheduler": "<6.4.4|>=7.0.0,<7.0.4",
"symfony/security-core": "<6.4",
"symfony/security-csrf": "<6.4",
"symfony/serializer": "<6.4",
@@ -1394,7 +1395,7 @@
"symfony/process": "^6.4|^7.0",
"symfony/property-info": "^6.4|^7.0",
"symfony/rate-limiter": "^6.4|^7.0",
- "symfony/scheduler": "^6.4|^7.0",
+ "symfony/scheduler": "^6.4.4|^7.0.4",
"symfony/security-bundle": "^6.4|^7.0",
"symfony/semaphore": "^6.4|^7.0",
"symfony/serializer": "^6.4|^7.0",
@@ -1402,6 +1403,7 @@
"symfony/string": "^6.4|^7.0",
"symfony/translation": "^6.4|^7.0",
"symfony/twig-bundle": "^6.4|^7.0",
+ "symfony/type-info": "^7.1",
"symfony/uid": "^6.4|^7.0",
"symfony/validator": "^6.4|^7.0",
"symfony/web-link": "^6.4|^7.0",
@@ -1435,7 +1437,7 @@
"description": "Provides a tight integration between Symfony components and the Symfony full-stack framework",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/framework-bundle/tree/v7.0.1"
+ "source": "https://github.com/symfony/framework-bundle/tree/v7.1.5"
},
"funding": [
{
@@ -1451,20 +1453,20 @@
"type": "tidelift"
}
],
- "time": "2023-12-01T16:37:31+00:00"
+ "time": "2024-09-20T13:35:23+00:00"
},
{
"name": "symfony/http-foundation",
- "version": "v7.0.0",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "47d72323200934694def5d57083899d774a2b110"
+ "reference": "e30ef73b1e44eea7eb37ba69600a354e553f694b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/47d72323200934694def5d57083899d774a2b110",
- "reference": "47d72323200934694def5d57083899d774a2b110",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e30ef73b1e44eea7eb37ba69600a354e553f694b",
+ "reference": "e30ef73b1e44eea7eb37ba69600a354e553f694b",
"shasum": ""
},
"require": {
@@ -1512,7 +1514,7 @@
"description": "Defines an object-oriented layer for the HTTP specification",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-foundation/tree/v7.0.0"
+ "source": "https://github.com/symfony/http-foundation/tree/v7.1.5"
},
"funding": [
{
@@ -1528,25 +1530,26 @@
"type": "tidelift"
}
],
- "time": "2023-11-07T15:10:37+00:00"
+ "time": "2024-09-20T08:28:38+00:00"
},
{
"name": "symfony/http-kernel",
- "version": "v7.0.1",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "4787639523dcdda32f69063f7fca2ad709f3c6d2"
+ "reference": "44204d96150a9df1fc57601ec933d23fefc2d65b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/4787639523dcdda32f69063f7fca2ad709f3c6d2",
- "reference": "4787639523dcdda32f69063f7fca2ad709f3c6d2",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/44204d96150a9df1fc57601ec933d23fefc2d65b",
+ "reference": "44204d96150a9df1fc57601ec933d23fefc2d65b",
"shasum": ""
},
"require": {
"php": ">=8.2",
"psr/log": "^1|^2|^3",
+ "symfony/deprecation-contracts": "^2.5|^3",
"symfony/error-handler": "^6.4|^7.0",
"symfony/event-dispatcher": "^6.4|^7.0",
"symfony/http-foundation": "^6.4|^7.0",
@@ -1587,14 +1590,15 @@
"symfony/finder": "^6.4|^7.0",
"symfony/http-client-contracts": "^2.5|^3",
"symfony/process": "^6.4|^7.0",
- "symfony/property-access": "^6.4|^7.0",
+ "symfony/property-access": "^7.1",
"symfony/routing": "^6.4|^7.0",
- "symfony/serializer": "^6.4|^7.0",
+ "symfony/serializer": "^7.1",
"symfony/stopwatch": "^6.4|^7.0",
"symfony/translation": "^6.4|^7.0",
"symfony/translation-contracts": "^2.5|^3",
"symfony/uid": "^6.4|^7.0",
"symfony/validator": "^6.4|^7.0",
+ "symfony/var-dumper": "^6.4|^7.0",
"symfony/var-exporter": "^6.4|^7.0",
"twig/twig": "^3.0.4"
},
@@ -1624,7 +1628,7 @@
"description": "Provides a structured process for converting a Request into a Response",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-kernel/tree/v7.0.1"
+ "source": "https://github.com/symfony/http-kernel/tree/v7.1.5"
},
"funding": [
{
@@ -1640,24 +1644,24 @@
"type": "tidelift"
}
],
- "time": "2023-12-01T17:08:48+00:00"
+ "time": "2024-09-21T06:09:21+00:00"
},
{
"name": "symfony/polyfill-ctype",
- "version": "v1.30.0",
+ "version": "v1.31.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
- "reference": "0424dff1c58f028c451efff2045f5d92410bd540"
+ "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/0424dff1c58f028c451efff2045f5d92410bd540",
- "reference": "0424dff1c58f028c451efff2045f5d92410bd540",
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/a3cc8b044a6ea513310cbd48ef7333b384945638",
+ "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"provide": {
"ext-ctype": "*"
@@ -1703,7 +1707,7 @@
"portable"
],
"support": {
- "source": "https://github.com/symfony/polyfill-ctype/tree/v1.30.0"
+ "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.0"
},
"funding": [
{
@@ -1719,24 +1723,24 @@
"type": "tidelift"
}
],
- "time": "2024-05-31T15:07:36+00:00"
+ "time": "2024-09-09T11:45:10+00:00"
},
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.30.0",
+ "version": "v1.31.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c"
+ "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/fd22ab50000ef01661e2a31d850ebaa297f8e03c",
- "reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341",
+ "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"provide": {
"ext-mbstring": "*"
@@ -1783,87 +1787,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.30.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": "2024-06-19T12:30:46+00:00"
- },
- {
- "name": "symfony/polyfill-php80",
- "version": "v1.30.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php80.git",
- "reference": "77fa7995ac1b21ab60769b7323d600a991a90433"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/77fa7995ac1b21ab60769b7323d600a991a90433",
- "reference": "77fa7995ac1b21ab60769b7323d600a991a90433",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Php80\\": ""
- },
- "classmap": [
- "Resources/stubs"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Ion Bazan",
- "email": "ion.bazan@gmail.com"
- },
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-php80/tree/v1.30.0"
+ "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.0"
},
"funding": [
{
@@ -1879,31 +1803,27 @@
"type": "tidelift"
}
],
- "time": "2024-05-31T15:07:36+00:00"
+ "time": "2024-09-09T11:45:10+00:00"
},
{
"name": "symfony/polyfill-php83",
- "version": "v1.28.0",
+ "version": "v1.31.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php83.git",
- "reference": "b0f46ebbeeeda3e9d2faebdfbf4b4eae9b59fa11"
+ "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/b0f46ebbeeeda3e9d2faebdfbf4b4eae9b59fa11",
- "reference": "b0f46ebbeeeda3e9d2faebdfbf4b4eae9b59fa11",
+ "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/2fb86d65e2d424369ad2905e83b236a8805ba491",
+ "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491",
"shasum": ""
},
"require": {
- "php": ">=7.1",
- "symfony/polyfill-php80": "^1.14"
+ "php": ">=7.2"
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@@ -1943,7 +1863,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php83/tree/v1.28.0"
+ "source": "https://github.com/symfony/polyfill-php83/tree/v1.31.0"
},
"funding": [
{
@@ -1959,24 +1879,24 @@
"type": "tidelift"
}
],
- "time": "2023-08-16T06:22:46+00:00"
+ "time": "2024-09-09T11:45:10+00:00"
},
{
"name": "symfony/polyfill-uuid",
- "version": "v1.28.0",
+ "version": "v1.31.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-uuid.git",
- "reference": "9c44518a5aff8da565c8a55dbe85d2769e6f630e"
+ "reference": "21533be36c24be3f4b1669c4725c7d1d2bab4ae2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/9c44518a5aff8da565c8a55dbe85d2769e6f630e",
- "reference": "9c44518a5aff8da565c8a55dbe85d2769e6f630e",
+ "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/21533be36c24be3f4b1669c4725c7d1d2bab4ae2",
+ "reference": "21533be36c24be3f4b1669c4725c7d1d2bab4ae2",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"provide": {
"ext-uuid": "*"
@@ -1986,9 +1906,6 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@@ -2025,7 +1942,7 @@
"uuid"
],
"support": {
- "source": "https://github.com/symfony/polyfill-uuid/tree/v1.28.0"
+ "source": "https://github.com/symfony/polyfill-uuid/tree/v1.31.0"
},
"funding": [
{
@@ -2041,20 +1958,20 @@
"type": "tidelift"
}
],
- "time": "2023-01-26T09:26:14+00:00"
+ "time": "2024-09-09T11:45:10+00:00"
},
{
"name": "symfony/routing",
- "version": "v7.0.1",
+ "version": "v7.1.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "fc55062907669835af6408558ae4d1dafef74b1e"
+ "reference": "1500aee0094a3ce1c92626ed8cf3c2037e86f5a7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/fc55062907669835af6408558ae4d1dafef74b1e",
- "reference": "fc55062907669835af6408558ae4d1dafef74b1e",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/1500aee0094a3ce1c92626ed8cf3c2037e86f5a7",
+ "reference": "1500aee0094a3ce1c92626ed8cf3c2037e86f5a7",
"shasum": ""
},
"require": {
@@ -2106,7 +2023,7 @@
"url"
],
"support": {
- "source": "https://github.com/symfony/routing/tree/v7.0.1"
+ "source": "https://github.com/symfony/routing/tree/v7.1.4"
},
"funding": [
{
@@ -2122,24 +2039,25 @@
"type": "tidelift"
}
],
- "time": "2023-12-01T15:10:06+00:00"
+ "time": "2024-08-29T08:16:25+00:00"
},
{
"name": "symfony/serializer",
- "version": "v7.0.1",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/serializer.git",
- "reference": "9c8f67c1444adf6dbcf90fb76da5b2f5c43af0ff"
+ "reference": "71d6e1f70f00752d1469d0f5e83b0a51716f288b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/serializer/zipball/9c8f67c1444adf6dbcf90fb76da5b2f5c43af0ff",
- "reference": "9c8f67c1444adf6dbcf90fb76da5b2f5c43af0ff",
+ "url": "https://api.github.com/repos/symfony/serializer/zipball/71d6e1f70f00752d1469d0f5e83b0a51716f288b",
+ "reference": "71d6e1f70f00752d1469d0f5e83b0a51716f288b",
"shasum": ""
},
"require": {
"php": ">=8.2",
+ "symfony/deprecation-contracts": "^2.5|^3",
"symfony/polyfill-ctype": "~1.8"
},
"conflict": {
@@ -2148,12 +2066,14 @@
"symfony/dependency-injection": "<6.4",
"symfony/property-access": "<6.4",
"symfony/property-info": "<6.4",
+ "symfony/type-info": "<7.1.5",
"symfony/uid": "<6.4",
"symfony/validator": "<6.4",
"symfony/yaml": "<6.4"
},
"require-dev": {
"phpdocumentor/reflection-docblock": "^3.2|^4.0|^5.0",
+ "phpstan/phpdoc-parser": "^1.0",
"seld/jsonlint": "^1.10",
"symfony/cache": "^6.4|^7.0",
"symfony/config": "^6.4|^7.0",
@@ -2169,6 +2089,7 @@
"symfony/property-access": "^6.4|^7.0",
"symfony/property-info": "^6.4|^7.0",
"symfony/translation-contracts": "^2.5|^3",
+ "symfony/type-info": "^7.1.5",
"symfony/uid": "^6.4|^7.0",
"symfony/validator": "^6.4|^7.0",
"symfony/var-dumper": "^6.4|^7.0",
@@ -2201,7 +2122,7 @@
"description": "Handles serializing and deserializing data structures, including object graphs, into array structures or other formats like XML and JSON.",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/serializer/tree/v7.0.1"
+ "source": "https://github.com/symfony/serializer/tree/v7.1.5"
},
"funding": [
{
@@ -2217,7 +2138,7 @@
"type": "tidelift"
}
],
- "time": "2023-12-01T15:10:06+00:00"
+ "time": "2024-09-20T12:13:15+00:00"
},
{
"name": "symfony/service-contracts",
@@ -2304,16 +2225,16 @@
},
{
"name": "symfony/var-dumper",
- "version": "v7.0.0",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "cf0220fc7607476fd0d001ab3ed9e830d1fdda56"
+ "reference": "e20e03889539fd4e4211e14d2179226c513c010d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/cf0220fc7607476fd0d001ab3ed9e830d1fdda56",
- "reference": "cf0220fc7607476fd0d001ab3ed9e830d1fdda56",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/e20e03889539fd4e4211e14d2179226c513c010d",
+ "reference": "e20e03889539fd4e4211e14d2179226c513c010d",
"shasum": ""
},
"require": {
@@ -2367,7 +2288,7 @@
"dump"
],
"support": {
- "source": "https://github.com/symfony/var-dumper/tree/v7.0.0"
+ "source": "https://github.com/symfony/var-dumper/tree/v7.1.5"
},
"funding": [
{
@@ -2383,26 +2304,28 @@
"type": "tidelift"
}
],
- "time": "2023-11-27T12:39:18+00:00"
+ "time": "2024-09-16T10:07:02+00:00"
},
{
"name": "symfony/var-exporter",
- "version": "v7.0.1",
+ "version": "v7.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-exporter.git",
- "reference": "a3d7c877414fcd59ab7075ecdc3b8f9c00f7bcc3"
+ "reference": "b80a669a2264609f07f1667f891dbfca25eba44c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-exporter/zipball/a3d7c877414fcd59ab7075ecdc3b8f9c00f7bcc3",
- "reference": "a3d7c877414fcd59ab7075ecdc3b8f9c00f7bcc3",
+ "url": "https://api.github.com/repos/symfony/var-exporter/zipball/b80a669a2264609f07f1667f891dbfca25eba44c",
+ "reference": "b80a669a2264609f07f1667f891dbfca25eba44c",
"shasum": ""
},
"require": {
"php": ">=8.2"
},
"require-dev": {
+ "symfony/property-access": "^6.4|^7.0",
+ "symfony/serializer": "^6.4|^7.0",
"symfony/var-dumper": "^6.4|^7.0"
},
"type": "library",
@@ -2441,7 +2364,7 @@
"serialize"
],
"support": {
- "source": "https://github.com/symfony/var-exporter/tree/v7.0.1"
+ "source": "https://github.com/symfony/var-exporter/tree/v7.1.2"
},
"funding": [
{
@@ -2457,7 +2380,7 @@
"type": "tidelift"
}
],
- "time": "2023-11-30T11:38:21+00:00"
+ "time": "2024-06-28T08:00:31+00:00"
}
],
"packages-dev": [
@@ -2621,6 +2544,70 @@
],
"time": "2024-04-13T18:00:56+00:00"
},
+ {
+ "name": "clue/ndjson-react",
+ "version": "v1.3.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/clue/reactphp-ndjson.git",
+ "reference": "392dc165fce93b5bb5c637b67e59619223c931b0"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/clue/reactphp-ndjson/zipball/392dc165fce93b5bb5c637b67e59619223c931b0",
+ "reference": "392dc165fce93b5bb5c637b67e59619223c931b0",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3",
+ "react/stream": "^1.2"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35",
+ "react/event-loop": "^1.2"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Clue\\React\\NDJson\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Christian Lück",
+ "email": "christian@clue.engineering"
+ }
+ ],
+ "description": "Streaming newline-delimited JSON (NDJSON) parser and encoder for ReactPHP.",
+ "homepage": "https://github.com/clue/reactphp-ndjson",
+ "keywords": [
+ "NDJSON",
+ "json",
+ "jsonlines",
+ "newline",
+ "reactphp",
+ "streaming"
+ ],
+ "support": {
+ "issues": "https://github.com/clue/reactphp-ndjson/issues",
+ "source": "https://github.com/clue/reactphp-ndjson/tree/v1.3.0"
+ },
+ "funding": [
+ {
+ "url": "https://clue.engineering/support",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/clue",
+ "type": "github"
+ }
+ ],
+ "time": "2022-12-23T10:58:28+00:00"
+ },
{
"name": "colinodell/json5",
"version": "v2.3.0",
@@ -2785,24 +2772,24 @@
},
{
"name": "composer/semver",
- "version": "3.4.2",
+ "version": "3.4.3",
"source": {
"type": "git",
"url": "https://github.com/composer/semver.git",
- "reference": "c51258e759afdb17f1fd1fe83bc12baaef6309d6"
+ "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/semver/zipball/c51258e759afdb17f1fd1fe83bc12baaef6309d6",
- "reference": "c51258e759afdb17f1fd1fe83bc12baaef6309d6",
+ "url": "https://api.github.com/repos/composer/semver/zipball/4313d26ada5e0c4edfbd1dc481a92ff7bff91f12",
+ "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12",
"shasum": ""
},
"require": {
"php": "^5.3.2 || ^7.0 || ^8.0"
},
"require-dev": {
- "phpstan/phpstan": "^1.4",
- "symfony/phpunit-bridge": "^4.2 || ^5"
+ "phpstan/phpstan": "^1.11",
+ "symfony/phpunit-bridge": "^3 || ^7"
},
"type": "library",
"extra": {
@@ -2846,7 +2833,7 @@
"support": {
"irc": "ircs://irc.libera.chat:6697/composer",
"issues": "https://github.com/composer/semver/issues",
- "source": "https://github.com/composer/semver/tree/3.4.2"
+ "source": "https://github.com/composer/semver/tree/3.4.3"
},
"funding": [
{
@@ -2862,7 +2849,7 @@
"type": "tidelift"
}
],
- "time": "2024-07-12T11:35:52+00:00"
+ "time": "2024-09-19T14:15:21+00:00"
},
{
"name": "composer/xdebug-handler",
@@ -2968,36 +2955,29 @@
"time": "2019-12-04T15:06:13+00:00"
},
{
- "name": "doctrine/instantiator",
- "version": "2.0.0",
+ "name": "evenement/evenement",
+ "version": "v3.0.2",
"source": {
"type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0"
+ "url": "https://github.com/igorw/evenement.git",
+ "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
- "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
+ "url": "https://api.github.com/repos/igorw/evenement/zipball/0a16b0d71ab13284339abb99d9d2bd813640efbc",
+ "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc",
"shasum": ""
},
"require": {
- "php": "^8.1"
+ "php": ">=7.0"
},
"require-dev": {
- "doctrine/coding-standard": "^11",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpbench/phpbench": "^1.2",
- "phpstan/phpstan": "^1.9.4",
- "phpstan/phpstan-phpunit": "^1.3",
- "phpunit/phpunit": "^9.5.27",
- "vimeo/psalm": "^5.4"
+ "phpunit/phpunit": "^9 || ^6"
},
"type": "library",
"autoload": {
"psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
+ "Evenement\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -3006,36 +2986,20 @@
],
"authors": [
{
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "https://ocramius.github.io/"
+ "name": "Igor Wiedler",
+ "email": "igor@wiedler.ch"
}
],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
+ "description": "Événement is a very simple event dispatching library for PHP",
"keywords": [
- "constructor",
- "instantiate"
+ "event-dispatcher",
+ "event-emitter"
],
"support": {
- "issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/2.0.0"
+ "issues": "https://github.com/igorw/evenement/issues",
+ "source": "https://github.com/igorw/evenement/tree/v3.0.2"
},
- "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%2Finstantiator",
- "type": "tidelift"
- }
- ],
- "time": "2022-12-30T00:23:10+00:00"
+ "time": "2023-08-08T05:53:35+00:00"
},
{
"name": "felixfbecker/advanced-json-rpc",
@@ -3084,16 +3048,16 @@
},
{
"name": "felixfbecker/language-server-protocol",
- "version": "v1.5.2",
+ "version": "v1.5.3",
"source": {
"type": "git",
"url": "https://github.com/felixfbecker/php-language-server-protocol.git",
- "reference": "6e82196ffd7c62f7794d778ca52b69feec9f2842"
+ "reference": "a9e113dbc7d849e35b8776da39edaf4313b7b6c9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/felixfbecker/php-language-server-protocol/zipball/6e82196ffd7c62f7794d778ca52b69feec9f2842",
- "reference": "6e82196ffd7c62f7794d778ca52b69feec9f2842",
+ "url": "https://api.github.com/repos/felixfbecker/php-language-server-protocol/zipball/a9e113dbc7d849e35b8776da39edaf4313b7b6c9",
+ "reference": "a9e113dbc7d849e35b8776da39edaf4313b7b6c9",
"shasum": ""
},
"require": {
@@ -3134,22 +3098,22 @@
],
"support": {
"issues": "https://github.com/felixfbecker/php-language-server-protocol/issues",
- "source": "https://github.com/felixfbecker/php-language-server-protocol/tree/v1.5.2"
+ "source": "https://github.com/felixfbecker/php-language-server-protocol/tree/v1.5.3"
},
- "time": "2022-03-02T22:36:06+00:00"
+ "time": "2024-04-30T00:40:11+00:00"
},
{
"name": "fidry/cpu-core-counter",
- "version": "0.4.1",
+ "version": "1.2.0",
"source": {
"type": "git",
"url": "https://github.com/theofidry/cpu-core-counter.git",
- "reference": "79261cc280aded96d098e1b0e0ba0c4881b432c2"
+ "reference": "8520451a140d3f46ac33042715115e290cf5785f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/79261cc280aded96d098e1b0e0ba0c4881b432c2",
- "reference": "79261cc280aded96d098e1b0e0ba0c4881b432c2",
+ "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/8520451a140d3f46ac33042715115e290cf5785f",
+ "reference": "8520451a140d3f46ac33042715115e290cf5785f",
"shasum": ""
},
"require": {
@@ -3157,13 +3121,13 @@
},
"require-dev": {
"fidry/makefile": "^0.2.0",
+ "fidry/php-cs-fixer-config": "^1.1.2",
"phpstan/extension-installer": "^1.2.0",
"phpstan/phpstan": "^1.9.2",
"phpstan/phpstan-deprecation-rules": "^1.0.0",
"phpstan/phpstan-phpunit": "^1.2.2",
"phpstan/phpstan-strict-rules": "^1.4.4",
- "phpunit/phpunit": "^9.5.26 || ^8.5.31",
- "theofidry/php-cs-fixer-config": "^1.0",
+ "phpunit/phpunit": "^8.5.31 || ^9.5.26",
"webmozarts/strict-phpunit": "^7.5"
},
"type": "library",
@@ -3189,7 +3153,7 @@
],
"support": {
"issues": "https://github.com/theofidry/cpu-core-counter/issues",
- "source": "https://github.com/theofidry/cpu-core-counter/tree/0.4.1"
+ "source": "https://github.com/theofidry/cpu-core-counter/tree/1.2.0"
},
"funding": [
{
@@ -3197,29 +3161,37 @@
"type": "github"
}
],
- "time": "2022-12-16T22:01:02+00:00"
+ "time": "2024-08-06T10:04:20+00:00"
},
{
"name": "friendsofphp/php-cs-fixer",
- "version": "v3.41.1",
+ "version": "v3.64.0",
"source": {
"type": "git",
"url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
- "reference": "8b6ae8dcbaf23f09680643ab832a4a3a260265f6"
+ "reference": "58dd9c931c785a79739310aef5178928305ffa67"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/8b6ae8dcbaf23f09680643ab832a4a3a260265f6",
- "reference": "8b6ae8dcbaf23f09680643ab832a4a3a260265f6",
+ "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/58dd9c931c785a79739310aef5178928305ffa67",
+ "reference": "58dd9c931c785a79739310aef5178928305ffa67",
"shasum": ""
},
"require": {
+ "clue/ndjson-react": "^1.0",
"composer/semver": "^3.4",
"composer/xdebug-handler": "^3.0.3",
+ "ext-filter": "*",
"ext-json": "*",
"ext-tokenizer": "*",
+ "fidry/cpu-core-counter": "^1.0",
"php": "^7.4 || ^8.0",
- "sebastian/diff": "^4.0 || ^5.0",
+ "react/child-process": "^0.6.5",
+ "react/event-loop": "^1.0",
+ "react/promise": "^2.0 || ^3.0",
+ "react/socket": "^1.0",
+ "react/stream": "^1.0",
+ "sebastian/diff": "^4.0 || ^5.0 || ^6.0",
"symfony/console": "^5.4 || ^6.0 || ^7.0",
"symfony/event-dispatcher": "^5.4 || ^6.0 || ^7.0",
"symfony/filesystem": "^5.4 || ^6.0 || ^7.0",
@@ -3232,16 +3204,17 @@
"symfony/stopwatch": "^5.4 || ^6.0 || ^7.0"
},
"require-dev": {
- "facile-it/paraunit": "^1.3 || ^2.0",
+ "facile-it/paraunit": "^1.3 || ^2.3",
+ "infection/infection": "^0.29.5",
"justinrainbow/json-schema": "^5.2",
"keradus/cli-executor": "^2.1",
"mikey179/vfsstream": "^1.6.11",
"php-coveralls/php-coveralls": "^2.7",
"php-cs-fixer/accessible-object": "^1.1",
- "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.4",
- "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.4",
- "phpunit/phpunit": "^9.6",
- "symfony/phpunit-bridge": "^6.3.8 || ^7.0",
+ "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.5",
+ "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.5",
+ "phpunit/phpunit": "^9.6.19 || ^10.5.21 || ^11.2",
+ "symfony/var-dumper": "^5.4 || ^6.0 || ^7.0",
"symfony/yaml": "^5.4 || ^6.0 || ^7.0"
},
"suggest": {
@@ -3255,7 +3228,10 @@
"autoload": {
"psr-4": {
"PhpCsFixer\\": "src/"
- }
+ },
+ "exclude-from-classmap": [
+ "src/Fixer/Internal/*"
+ ]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -3280,7 +3256,7 @@
],
"support": {
"issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
- "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.41.1"
+ "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.64.0"
},
"funding": [
{
@@ -3288,7 +3264,7 @@
"type": "github"
}
],
- "time": "2023-12-10T19:59:27+00:00"
+ "time": "2024-08-30T23:09:38+00:00"
},
{
"name": "infection/abstract-testframework-adapter",
@@ -3469,16 +3445,16 @@
},
{
"name": "infection/infection",
- "version": "0.26.21",
+ "version": "0.27.11",
"source": {
"type": "git",
"url": "https://github.com/infection/infection.git",
- "reference": "9bbe4994d204587e0e27475e6681b66608a690a9"
+ "reference": "6d55979c457eef2a5d0d80446c67ca533f201961"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/infection/infection/zipball/9bbe4994d204587e0e27475e6681b66608a690a9",
- "reference": "9bbe4994d204587e0e27475e6681b66608a690a9",
+ "url": "https://api.github.com/repos/infection/infection/zipball/6d55979c457eef2a5d0d80446c67ca533f201961",
+ "reference": "6d55979c457eef2a5d0d80446c67ca533f201961",
"shasum": ""
},
"require": {
@@ -3489,7 +3465,7 @@
"ext-json": "*",
"ext-libxml": "*",
"ext-mbstring": "*",
- "fidry/cpu-core-counter": "^0.4.0",
+ "fidry/cpu-core-counter": "^0.4.0 || ^0.5.0 || ^1.0",
"infection/abstract-testframework-adapter": "^0.5.0",
"infection/extension-installer": "^0.1.0",
"infection/include-interceptor": "^0.2.5",
@@ -3499,11 +3475,11 @@
"php": "^8.1",
"sanmai/later": "^0.1.1",
"sanmai/pipeline": "^5.1 || ^6",
- "sebastian/diff": "^3.0.2 || ^4.0 || ^5.0",
- "symfony/console": "^5.4 || ^6.0",
- "symfony/filesystem": "^5.4 || ^6.0",
- "symfony/finder": "^5.4 || ^6.0",
- "symfony/process": "^5.4 || ^6.0",
+ "sebastian/diff": "^3.0.2 || ^4.0 || ^5.0 || ^6.0",
+ "symfony/console": "^5.4 || ^6.0 || ^7.0",
+ "symfony/filesystem": "^5.4 || ^6.0 || ^7.0",
+ "symfony/finder": "^5.4 || ^6.0 || ^7.0",
+ "symfony/process": "^5.4 || ^6.0 || ^7.0",
"thecodingmachine/safe": "^2.1.2",
"webmozart/assert": "^1.11"
},
@@ -3513,20 +3489,21 @@
"phpunit/php-code-coverage": ">9,<9.1.4 || >9.2.17,<9.2.21"
},
"require-dev": {
- "brianium/paratest": "^6.3",
+ "brianium/paratest": "^6.11",
"ext-simplexml": "*",
- "fidry/makefile": "^0.2.0",
+ "fidry/makefile": "^1.0",
"helmich/phpunit-json-assert": "^3.0",
"phpspec/prophecy": "^1.15",
"phpspec/prophecy-phpunit": "^2.0",
"phpstan/extension-installer": "^1.1.0",
- "phpstan/phpstan": "^1.3.0",
+ "phpstan/phpstan": "^1.10.15",
"phpstan/phpstan-phpunit": "^1.0.0",
"phpstan/phpstan-strict-rules": "^1.1.0",
"phpstan/phpstan-webmozart-assert": "^1.0.2",
- "phpunit/phpunit": "^9.5.5",
- "symfony/phpunit-bridge": "^5.4 || ^6.0",
- "symfony/yaml": "^5.4 || ^6.0",
+ "phpunit/phpunit": "^9.6",
+ "rector/rector": "^0.16.0",
+ "sidz/phpstan-rules": "^0.4.0",
+ "symfony/yaml": "^5.4 || ^6.0 || ^7.0",
"thecodingmachine/phpstan-safe-rule": "^1.2.0"
},
"bin": [
@@ -3583,7 +3560,7 @@
],
"support": {
"issues": "https://github.com/infection/infection/issues",
- "source": "https://github.com/infection/infection/tree/0.26.21"
+ "source": "https://github.com/infection/infection/tree/0.27.11"
},
"funding": [
{
@@ -3595,24 +3572,24 @@
"type": "open_collective"
}
],
- "time": "2023-04-25T19:40:27+00:00"
+ "time": "2024-03-20T07:48:57+00:00"
},
{
"name": "justinrainbow/json-schema",
- "version": "v5.2.13",
+ "version": "5.3.0",
"source": {
"type": "git",
- "url": "https://github.com/justinrainbow/json-schema.git",
- "reference": "fbbe7e5d79f618997bc3332a6f49246036c45793"
+ "url": "https://github.com/jsonrainbow/json-schema.git",
+ "reference": "feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/fbbe7e5d79f618997bc3332a6f49246036c45793",
- "reference": "fbbe7e5d79f618997bc3332a6f49246036c45793",
+ "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8",
+ "reference": "feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=7.1"
},
"require-dev": {
"friendsofphp/php-cs-fixer": "~2.2.20||~2.15.1",
@@ -3623,11 +3600,6 @@
"bin/validate-json"
],
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.0.x-dev"
- }
- },
"autoload": {
"psr-4": {
"JsonSchema\\": "src/JsonSchema/"
@@ -3662,23 +3634,23 @@
"schema"
],
"support": {
- "issues": "https://github.com/justinrainbow/json-schema/issues",
- "source": "https://github.com/justinrainbow/json-schema/tree/v5.2.13"
+ "issues": "https://github.com/jsonrainbow/json-schema/issues",
+ "source": "https://github.com/jsonrainbow/json-schema/tree/5.3.0"
},
- "time": "2023-09-26T02:20:38+00:00"
+ "time": "2024-07-06T21:00:26+00:00"
},
{
"name": "myclabs/deep-copy",
- "version": "1.11.1",
+ "version": "1.12.0",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c"
+ "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c",
- "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c",
+ "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c",
"shasum": ""
},
"require": {
@@ -3686,11 +3658,12 @@
},
"conflict": {
"doctrine/collections": "<1.6.8",
- "doctrine/common": "<2.13.3 || >=3,<3.2.2"
+ "doctrine/common": "<2.13.3 || >=3 <3.2.2"
},
"require-dev": {
"doctrine/collections": "^1.6.8",
"doctrine/common": "^2.13.3 || ^3.2.2",
+ "phpspec/prophecy": "^1.10",
"phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13"
},
"type": "library",
@@ -3716,7 +3689,7 @@
],
"support": {
"issues": "https://github.com/myclabs/DeepCopy/issues",
- "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1"
+ "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0"
},
"funding": [
{
@@ -3724,20 +3697,20 @@
"type": "tidelift"
}
],
- "time": "2023-03-08T13:26:56+00:00"
+ "time": "2024-06-12T14:39:25+00:00"
},
{
"name": "netresearch/jsonmapper",
- "version": "v4.4.1",
+ "version": "v4.5.0",
"source": {
"type": "git",
"url": "https://github.com/cweiske/jsonmapper.git",
- "reference": "132c75c7dd83e45353ebb9c6c9f591952995bbf0"
+ "reference": "8e76efb98ee8b6afc54687045e1b8dba55ac76e5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/132c75c7dd83e45353ebb9c6c9f591952995bbf0",
- "reference": "132c75c7dd83e45353ebb9c6c9f591952995bbf0",
+ "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8e76efb98ee8b6afc54687045e1b8dba55ac76e5",
+ "reference": "8e76efb98ee8b6afc54687045e1b8dba55ac76e5",
"shasum": ""
},
"require": {
@@ -3773,22 +3746,22 @@
"support": {
"email": "cweiske@cweiske.de",
"issues": "https://github.com/cweiske/jsonmapper/issues",
- "source": "https://github.com/cweiske/jsonmapper/tree/v4.4.1"
+ "source": "https://github.com/cweiske/jsonmapper/tree/v4.5.0"
},
- "time": "2024-01-31T06:18:54+00:00"
+ "time": "2024-09-08T10:13:13+00:00"
},
{
"name": "nikic/php-parser",
- "version": "v4.19.1",
+ "version": "v4.19.4",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "4e1b88d21c69391150ace211e9eaf05810858d0b"
+ "reference": "715f4d25e225bc47b293a8b997fe6ce99bf987d2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4e1b88d21c69391150ace211e9eaf05810858d0b",
- "reference": "4e1b88d21c69391150ace211e9eaf05810858d0b",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/715f4d25e225bc47b293a8b997fe6ce99bf987d2",
+ "reference": "715f4d25e225bc47b293a8b997fe6ce99bf987d2",
"shasum": ""
},
"require": {
@@ -3797,7 +3770,7 @@
},
"require-dev": {
"ircmaxell/php-yacc": "^0.0.7",
- "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0"
+ "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
},
"bin": [
"bin/php-parse"
@@ -3829,35 +3802,35 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v4.19.1"
+ "source": "https://github.com/nikic/PHP-Parser/tree/v4.19.4"
},
- "time": "2024-03-17T08:10:35+00:00"
+ "time": "2024-09-29T15:01:53+00:00"
},
{
"name": "ondram/ci-detector",
- "version": "4.1.0",
+ "version": "4.2.0",
"source": {
"type": "git",
"url": "https://github.com/OndraM/ci-detector.git",
- "reference": "8a4b664e916df82ff26a44709942dfd593fa6f30"
+ "reference": "8b0223b5ed235fd377c75fdd1bfcad05c0f168b8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/OndraM/ci-detector/zipball/8a4b664e916df82ff26a44709942dfd593fa6f30",
- "reference": "8a4b664e916df82ff26a44709942dfd593fa6f30",
+ "url": "https://api.github.com/repos/OndraM/ci-detector/zipball/8b0223b5ed235fd377c75fdd1bfcad05c0f168b8",
+ "reference": "8b0223b5ed235fd377c75fdd1bfcad05c0f168b8",
"shasum": ""
},
"require": {
- "php": "^7.1 || ^8.0"
+ "php": "^7.4 || ^8.0"
},
"require-dev": {
- "ergebnis/composer-normalize": "^2.2",
- "lmc/coding-standard": "^1.3 || ^2.1",
+ "ergebnis/composer-normalize": "^2.13.2",
+ "lmc/coding-standard": "^3.0.0",
"php-parallel-lint/php-parallel-lint": "^1.2",
- "phpstan/extension-installer": "^1.0.5",
- "phpstan/phpstan": "^0.12.58",
- "phpstan/phpstan-phpunit": "^0.12.16",
- "phpunit/phpunit": "^7.1 || ^8.0 || ^9.0"
+ "phpstan/extension-installer": "^1.1.0",
+ "phpstan/phpstan": "^1.2.0",
+ "phpstan/phpstan-phpunit": "^1.0.0",
+ "phpunit/phpunit": "^9.6.13"
},
"type": "library",
"autoload": {
@@ -3907,26 +3880,27 @@
],
"support": {
"issues": "https://github.com/OndraM/ci-detector/issues",
- "source": "https://github.com/OndraM/ci-detector/tree/4.1.0"
+ "source": "https://github.com/OndraM/ci-detector/tree/4.2.0"
},
- "time": "2021-04-14T09:16:52+00:00"
+ "time": "2024-03-12T13:22:30+00:00"
},
{
"name": "phar-io/manifest",
- "version": "2.0.3",
+ "version": "2.0.4",
"source": {
"type": "git",
"url": "https://github.com/phar-io/manifest.git",
- "reference": "97803eca37d319dfa7826cc2437fc020857acb53"
+ "reference": "54750ef60c58e43759730615a392c31c80e23176"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53",
- "reference": "97803eca37d319dfa7826cc2437fc020857acb53",
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176",
+ "reference": "54750ef60c58e43759730615a392c31c80e23176",
"shasum": ""
},
"require": {
"ext-dom": "*",
+ "ext-libxml": "*",
"ext-phar": "*",
"ext-xmlwriter": "*",
"phar-io/version": "^3.0.1",
@@ -3967,9 +3941,15 @@
"description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
"support": {
"issues": "https://github.com/phar-io/manifest/issues",
- "source": "https://github.com/phar-io/manifest/tree/2.0.3"
+ "source": "https://github.com/phar-io/manifest/tree/2.0.4"
},
- "time": "2021-07-20T11:28:43+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/theseer",
+ "type": "github"
+ }
+ ],
+ "time": "2024-03-03T12:33:53+00:00"
},
{
"name": "phar-io/version",
@@ -4199,16 +4179,16 @@
},
{
"name": "phpstan/phpdoc-parser",
- "version": "1.29.1",
+ "version": "1.32.0",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpdoc-parser.git",
- "reference": "fcaefacf2d5c417e928405b71b400d4ce10daaf4"
+ "reference": "6ca22b154efdd9e3c68c56f5d94670920a1c19a4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/fcaefacf2d5c417e928405b71b400d4ce10daaf4",
- "reference": "fcaefacf2d5c417e928405b71b400d4ce10daaf4",
+ "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/6ca22b154efdd9e3c68c56f5d94670920a1c19a4",
+ "reference": "6ca22b154efdd9e3c68c56f5d94670920a1c19a4",
"shasum": ""
},
"require": {
@@ -4240,9 +4220,9 @@
"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.29.1"
+ "source": "https://github.com/phpstan/phpdoc-parser/tree/1.32.0"
},
- "time": "2024-05-31T08:52:43+00:00"
+ "time": "2024-09-26T07:23:32+00:00"
},
{
"name": "phpstan/phpstan",
@@ -4308,35 +4288,35 @@
},
{
"name": "phpunit/php-code-coverage",
- "version": "9.2.29",
+ "version": "10.1.16",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "6a3a87ac2bbe33b25042753df8195ba4aa534c76"
+ "reference": "7e308268858ed6baedc8704a304727d20bc07c77"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/6a3a87ac2bbe33b25042753df8195ba4aa534c76",
- "reference": "6a3a87ac2bbe33b25042753df8195ba4aa534c76",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/7e308268858ed6baedc8704a304727d20bc07c77",
+ "reference": "7e308268858ed6baedc8704a304727d20bc07c77",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-libxml": "*",
"ext-xmlwriter": "*",
- "nikic/php-parser": "^4.15",
- "php": ">=7.3",
- "phpunit/php-file-iterator": "^3.0.3",
- "phpunit/php-text-template": "^2.0.2",
- "sebastian/code-unit-reverse-lookup": "^2.0.2",
- "sebastian/complexity": "^2.0",
- "sebastian/environment": "^5.1.2",
- "sebastian/lines-of-code": "^1.0.3",
- "sebastian/version": "^3.0.1",
- "theseer/tokenizer": "^1.2.0"
+ "nikic/php-parser": "^4.19.1 || ^5.1.0",
+ "php": ">=8.1",
+ "phpunit/php-file-iterator": "^4.1.0",
+ "phpunit/php-text-template": "^3.0.1",
+ "sebastian/code-unit-reverse-lookup": "^3.0.0",
+ "sebastian/complexity": "^3.2.0",
+ "sebastian/environment": "^6.1.0",
+ "sebastian/lines-of-code": "^2.0.2",
+ "sebastian/version": "^4.0.1",
+ "theseer/tokenizer": "^1.2.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.1"
},
"suggest": {
"ext-pcov": "PHP extension that provides line coverage",
@@ -4345,7 +4325,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "9.2-dev"
+ "dev-main": "10.1.x-dev"
}
},
"autoload": {
@@ -4374,7 +4354,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
"security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
- "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.29"
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.1.16"
},
"funding": [
{
@@ -4382,32 +4362,32 @@
"type": "github"
}
],
- "time": "2023-09-19T04:57:46+00:00"
+ "time": "2024-08-22T04:31:57+00:00"
},
{
"name": "phpunit/php-file-iterator",
- "version": "3.0.6",
+ "version": "4.1.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf"
+ "reference": "a95037b6d9e608ba092da1b23931e537cadc3c3c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf",
- "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/a95037b6d9e608ba092da1b23931e537cadc3c3c",
+ "reference": "a95037b6d9e608ba092da1b23931e537cadc3c3c",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-main": "4.0-dev"
}
},
"autoload": {
@@ -4434,7 +4414,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-file-iterator/issues",
- "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6"
+ "security": "https://github.com/sebastianbergmann/php-file-iterator/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/4.1.0"
},
"funding": [
{
@@ -4442,28 +4423,28 @@
"type": "github"
}
],
- "time": "2021-12-02T12:48:52+00:00"
+ "time": "2023-08-31T06:24:48+00:00"
},
{
"name": "phpunit/php-invoker",
- "version": "3.1.1",
+ "version": "4.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-invoker.git",
- "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67"
+ "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
- "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7",
+ "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
"ext-pcntl": "*",
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"suggest": {
"ext-pcntl": "*"
@@ -4471,7 +4452,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-main": "4.0-dev"
}
},
"autoload": {
@@ -4497,7 +4478,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-invoker/issues",
- "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1"
+ "source": "https://github.com/sebastianbergmann/php-invoker/tree/4.0.0"
},
"funding": [
{
@@ -4505,32 +4486,32 @@
"type": "github"
}
],
- "time": "2020-09-28T05:58:55+00:00"
+ "time": "2023-02-03T06:56:09+00:00"
},
{
"name": "phpunit/php-text-template",
- "version": "2.0.4",
+ "version": "3.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28"
+ "reference": "0c7b06ff49e3d5072f057eb1fa59258bf287a748"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
- "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/0c7b06ff49e3d5072f057eb1fa59258bf287a748",
+ "reference": "0c7b06ff49e3d5072f057eb1fa59258bf287a748",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-main": "3.0-dev"
}
},
"autoload": {
@@ -4556,7 +4537,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-text-template/issues",
- "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4"
+ "security": "https://github.com/sebastianbergmann/php-text-template/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-text-template/tree/3.0.1"
},
"funding": [
{
@@ -4564,32 +4546,32 @@
"type": "github"
}
],
- "time": "2020-10-26T05:33:50+00:00"
+ "time": "2023-08-31T14:07:24+00:00"
},
{
"name": "phpunit/php-timer",
- "version": "5.0.3",
+ "version": "6.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2"
+ "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
- "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/e2a2d67966e740530f4a3343fe2e030ffdc1161d",
+ "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-main": "6.0-dev"
}
},
"autoload": {
@@ -4615,7 +4597,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-timer/issues",
- "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3"
+ "source": "https://github.com/sebastianbergmann/php-timer/tree/6.0.0"
},
"funding": [
{
@@ -4623,54 +4605,52 @@
"type": "github"
}
],
- "time": "2020-10-26T13:16:10+00:00"
+ "time": "2023-02-03T06:57:52+00:00"
},
{
"name": "phpunit/phpunit",
- "version": "9.6.15",
+ "version": "10.5.35",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "05017b80304e0eb3f31d90194a563fd53a6021f1"
+ "reference": "7ac8b4e63f456046dcb4c9787da9382831a1874b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/05017b80304e0eb3f31d90194a563fd53a6021f1",
- "reference": "05017b80304e0eb3f31d90194a563fd53a6021f1",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/7ac8b4e63f456046dcb4c9787da9382831a1874b",
+ "reference": "7ac8b4e63f456046dcb4c9787da9382831a1874b",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.3.1 || ^2",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
"ext-mbstring": "*",
"ext-xml": "*",
"ext-xmlwriter": "*",
- "myclabs/deep-copy": "^1.10.1",
- "phar-io/manifest": "^2.0.3",
- "phar-io/version": "^3.0.2",
- "php": ">=7.3",
- "phpunit/php-code-coverage": "^9.2.28",
- "phpunit/php-file-iterator": "^3.0.5",
- "phpunit/php-invoker": "^3.1.1",
- "phpunit/php-text-template": "^2.0.3",
- "phpunit/php-timer": "^5.0.2",
- "sebastian/cli-parser": "^1.0.1",
- "sebastian/code-unit": "^1.0.6",
- "sebastian/comparator": "^4.0.8",
- "sebastian/diff": "^4.0.3",
- "sebastian/environment": "^5.1.3",
- "sebastian/exporter": "^4.0.5",
- "sebastian/global-state": "^5.0.1",
- "sebastian/object-enumerator": "^4.0.3",
- "sebastian/resource-operations": "^3.0.3",
- "sebastian/type": "^3.2",
- "sebastian/version": "^3.0.2"
+ "myclabs/deep-copy": "^1.12.0",
+ "phar-io/manifest": "^2.0.4",
+ "phar-io/version": "^3.2.1",
+ "php": ">=8.1",
+ "phpunit/php-code-coverage": "^10.1.16",
+ "phpunit/php-file-iterator": "^4.1.0",
+ "phpunit/php-invoker": "^4.0.0",
+ "phpunit/php-text-template": "^3.0.1",
+ "phpunit/php-timer": "^6.0.0",
+ "sebastian/cli-parser": "^2.0.1",
+ "sebastian/code-unit": "^2.0.0",
+ "sebastian/comparator": "^5.0.2",
+ "sebastian/diff": "^5.1.1",
+ "sebastian/environment": "^6.1.0",
+ "sebastian/exporter": "^5.1.2",
+ "sebastian/global-state": "^6.0.2",
+ "sebastian/object-enumerator": "^5.0.0",
+ "sebastian/recursion-context": "^5.0.0",
+ "sebastian/type": "^4.0.0",
+ "sebastian/version": "^4.0.1"
},
"suggest": {
- "ext-soap": "To be able to generate mocks based on WSDL files",
- "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage"
+ "ext-soap": "To be able to generate mocks based on WSDL files"
},
"bin": [
"phpunit"
@@ -4678,7 +4658,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "9.6-dev"
+ "dev-main": "10.5-dev"
}
},
"autoload": {
@@ -4710,7 +4690,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.15"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.35"
},
"funding": [
{
@@ -4726,98 +4706,628 @@
"type": "tidelift"
}
],
- "time": "2023-12-01T16:55:19+00:00"
+ "time": "2024-09-19T10:52:21+00:00"
},
{
- "name": "sanmai/later",
- "version": "0.1.4",
+ "name": "react/cache",
+ "version": "v1.2.0",
"source": {
"type": "git",
- "url": "https://github.com/sanmai/later.git",
- "reference": "e24c4304a4b1349c2a83151a692cec0c10579f60"
+ "url": "https://github.com/reactphp/cache.git",
+ "reference": "d47c472b64aa5608225f47965a484b75c7817d5b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sanmai/later/zipball/e24c4304a4b1349c2a83151a692cec0c10579f60",
- "reference": "e24c4304a4b1349c2a83151a692cec0c10579f60",
+ "url": "https://api.github.com/repos/reactphp/cache/zipball/d47c472b64aa5608225f47965a484b75c7817d5b",
+ "reference": "d47c472b64aa5608225f47965a484b75c7817d5b",
"shasum": ""
},
"require": {
- "php": ">=7.4"
+ "php": ">=5.3.0",
+ "react/promise": "^3.0 || ^2.0 || ^1.1"
},
"require-dev": {
- "ergebnis/composer-normalize": "^2.8",
- "friendsofphp/php-cs-fixer": "^3.35.1",
- "infection/infection": ">=0.27.6",
- "phan/phan": ">=2",
- "php-coveralls/php-coveralls": "^2.0",
- "phpstan/phpstan": ">=1.4.5",
- "phpunit/phpunit": ">=9.5 <10",
- "vimeo/psalm": ">=2"
+ "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35"
},
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "0.1.x-dev"
- }
- },
"autoload": {
- "files": [
- "src/functions.php"
- ],
"psr-4": {
- "Later\\": "src/"
+ "React\\Cache\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "Apache-2.0"
+ "MIT"
],
"authors": [
{
- "name": "Alexey Kopytko",
- "email": "alexey@kopytko.com"
+ "name": "Christian Lück",
+ "email": "christian@clue.engineering",
+ "homepage": "https://clue.engineering/"
+ },
+ {
+ "name": "Cees-Jan Kiewiet",
+ "email": "reactphp@ceesjankiewiet.nl",
+ "homepage": "https://wyrihaximus.net/"
+ },
+ {
+ "name": "Jan Sorgalla",
+ "email": "jsorgalla@gmail.com",
+ "homepage": "https://sorgalla.com/"
+ },
+ {
+ "name": "Chris Boden",
+ "email": "cboden@gmail.com",
+ "homepage": "https://cboden.dev/"
}
],
- "description": "Later: deferred wrapper object",
+ "description": "Async, Promise-based cache interface for ReactPHP",
+ "keywords": [
+ "cache",
+ "caching",
+ "promise",
+ "reactphp"
+ ],
"support": {
- "issues": "https://github.com/sanmai/later/issues",
- "source": "https://github.com/sanmai/later/tree/0.1.4"
+ "issues": "https://github.com/reactphp/cache/issues",
+ "source": "https://github.com/reactphp/cache/tree/v1.2.0"
},
"funding": [
{
- "url": "https://github.com/sanmai",
- "type": "github"
+ "url": "https://opencollective.com/reactphp",
+ "type": "open_collective"
}
],
- "time": "2023-10-24T00:25:28+00:00"
+ "time": "2022-11-30T15:59:55+00:00"
},
{
- "name": "sanmai/pipeline",
- "version": "v6.9",
+ "name": "react/child-process",
+ "version": "v0.6.5",
"source": {
"type": "git",
- "url": "https://github.com/sanmai/pipeline.git",
- "reference": "c48f45c22c3ce4140d071f7658fb151df1cc08ea"
+ "url": "https://github.com/reactphp/child-process.git",
+ "reference": "e71eb1aa55f057c7a4a0d08d06b0b0a484bead43"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sanmai/pipeline/zipball/c48f45c22c3ce4140d071f7658fb151df1cc08ea",
- "reference": "c48f45c22c3ce4140d071f7658fb151df1cc08ea",
+ "url": "https://api.github.com/repos/reactphp/child-process/zipball/e71eb1aa55f057c7a4a0d08d06b0b0a484bead43",
+ "reference": "e71eb1aa55f057c7a4a0d08d06b0b0a484bead43",
"shasum": ""
},
"require": {
- "php": "^7.4 || ^8.0"
+ "evenement/evenement": "^3.0 || ^2.0 || ^1.0",
+ "php": ">=5.3.0",
+ "react/event-loop": "^1.2",
+ "react/stream": "^1.2"
},
"require-dev": {
- "ergebnis/composer-normalize": "^2.8",
- "friendsofphp/php-cs-fixer": "^3.17",
- "infection/infection": ">=0.10.5",
- "league/pipeline": "^0.3 || ^1.0",
- "phan/phan": ">=1.1",
- "php-coveralls/php-coveralls": "^2.4.1",
- "phpstan/phpstan": ">=0.10",
- "phpunit/phpunit": ">=9.4",
+ "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.35",
+ "react/socket": "^1.8",
+ "sebastian/environment": "^5.0 || ^3.0 || ^2.0 || ^1.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "React\\ChildProcess\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Christian Lück",
+ "email": "christian@clue.engineering",
+ "homepage": "https://clue.engineering/"
+ },
+ {
+ "name": "Cees-Jan Kiewiet",
+ "email": "reactphp@ceesjankiewiet.nl",
+ "homepage": "https://wyrihaximus.net/"
+ },
+ {
+ "name": "Jan Sorgalla",
+ "email": "jsorgalla@gmail.com",
+ "homepage": "https://sorgalla.com/"
+ },
+ {
+ "name": "Chris Boden",
+ "email": "cboden@gmail.com",
+ "homepage": "https://cboden.dev/"
+ }
+ ],
+ "description": "Event-driven library for executing child processes with ReactPHP.",
+ "keywords": [
+ "event-driven",
+ "process",
+ "reactphp"
+ ],
+ "support": {
+ "issues": "https://github.com/reactphp/child-process/issues",
+ "source": "https://github.com/reactphp/child-process/tree/v0.6.5"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/WyriHaximus",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/clue",
+ "type": "github"
+ }
+ ],
+ "time": "2022-09-16T13:41:56+00:00"
+ },
+ {
+ "name": "react/dns",
+ "version": "v1.13.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/reactphp/dns.git",
+ "reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/reactphp/dns/zipball/eb8ae001b5a455665c89c1df97f6fb682f8fb0f5",
+ "reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0",
+ "react/cache": "^1.0 || ^0.6 || ^0.5",
+ "react/event-loop": "^1.2",
+ "react/promise": "^3.2 || ^2.7 || ^1.2.1"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36",
+ "react/async": "^4.3 || ^3 || ^2",
+ "react/promise-timer": "^1.11"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "React\\Dns\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Christian Lück",
+ "email": "christian@clue.engineering",
+ "homepage": "https://clue.engineering/"
+ },
+ {
+ "name": "Cees-Jan Kiewiet",
+ "email": "reactphp@ceesjankiewiet.nl",
+ "homepage": "https://wyrihaximus.net/"
+ },
+ {
+ "name": "Jan Sorgalla",
+ "email": "jsorgalla@gmail.com",
+ "homepage": "https://sorgalla.com/"
+ },
+ {
+ "name": "Chris Boden",
+ "email": "cboden@gmail.com",
+ "homepage": "https://cboden.dev/"
+ }
+ ],
+ "description": "Async DNS resolver for ReactPHP",
+ "keywords": [
+ "async",
+ "dns",
+ "dns-resolver",
+ "reactphp"
+ ],
+ "support": {
+ "issues": "https://github.com/reactphp/dns/issues",
+ "source": "https://github.com/reactphp/dns/tree/v1.13.0"
+ },
+ "funding": [
+ {
+ "url": "https://opencollective.com/reactphp",
+ "type": "open_collective"
+ }
+ ],
+ "time": "2024-06-13T14:18:03+00:00"
+ },
+ {
+ "name": "react/event-loop",
+ "version": "v1.5.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/reactphp/event-loop.git",
+ "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/reactphp/event-loop/zipball/bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354",
+ "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36"
+ },
+ "suggest": {
+ "ext-pcntl": "For signal handling support when using the StreamSelectLoop"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "React\\EventLoop\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Christian Lück",
+ "email": "christian@clue.engineering",
+ "homepage": "https://clue.engineering/"
+ },
+ {
+ "name": "Cees-Jan Kiewiet",
+ "email": "reactphp@ceesjankiewiet.nl",
+ "homepage": "https://wyrihaximus.net/"
+ },
+ {
+ "name": "Jan Sorgalla",
+ "email": "jsorgalla@gmail.com",
+ "homepage": "https://sorgalla.com/"
+ },
+ {
+ "name": "Chris Boden",
+ "email": "cboden@gmail.com",
+ "homepage": "https://cboden.dev/"
+ }
+ ],
+ "description": "ReactPHP's core reactor event loop that libraries can use for evented I/O.",
+ "keywords": [
+ "asynchronous",
+ "event-loop"
+ ],
+ "support": {
+ "issues": "https://github.com/reactphp/event-loop/issues",
+ "source": "https://github.com/reactphp/event-loop/tree/v1.5.0"
+ },
+ "funding": [
+ {
+ "url": "https://opencollective.com/reactphp",
+ "type": "open_collective"
+ }
+ ],
+ "time": "2023-11-13T13:48:05+00:00"
+ },
+ {
+ "name": "react/promise",
+ "version": "v3.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/reactphp/promise.git",
+ "reference": "8a164643313c71354582dc850b42b33fa12a4b63"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/reactphp/promise/zipball/8a164643313c71354582dc850b42b33fa12a4b63",
+ "reference": "8a164643313c71354582dc850b42b33fa12a4b63",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.1.0"
+ },
+ "require-dev": {
+ "phpstan/phpstan": "1.10.39 || 1.4.10",
+ "phpunit/phpunit": "^9.6 || ^7.5"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "src/functions_include.php"
+ ],
+ "psr-4": {
+ "React\\Promise\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Jan Sorgalla",
+ "email": "jsorgalla@gmail.com",
+ "homepage": "https://sorgalla.com/"
+ },
+ {
+ "name": "Christian Lück",
+ "email": "christian@clue.engineering",
+ "homepage": "https://clue.engineering/"
+ },
+ {
+ "name": "Cees-Jan Kiewiet",
+ "email": "reactphp@ceesjankiewiet.nl",
+ "homepage": "https://wyrihaximus.net/"
+ },
+ {
+ "name": "Chris Boden",
+ "email": "cboden@gmail.com",
+ "homepage": "https://cboden.dev/"
+ }
+ ],
+ "description": "A lightweight implementation of CommonJS Promises/A for PHP",
+ "keywords": [
+ "promise",
+ "promises"
+ ],
+ "support": {
+ "issues": "https://github.com/reactphp/promise/issues",
+ "source": "https://github.com/reactphp/promise/tree/v3.2.0"
+ },
+ "funding": [
+ {
+ "url": "https://opencollective.com/reactphp",
+ "type": "open_collective"
+ }
+ ],
+ "time": "2024-05-24T10:39:05+00:00"
+ },
+ {
+ "name": "react/socket",
+ "version": "v1.16.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/reactphp/socket.git",
+ "reference": "23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/reactphp/socket/zipball/23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1",
+ "reference": "23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1",
+ "shasum": ""
+ },
+ "require": {
+ "evenement/evenement": "^3.0 || ^2.0 || ^1.0",
+ "php": ">=5.3.0",
+ "react/dns": "^1.13",
+ "react/event-loop": "^1.2",
+ "react/promise": "^3.2 || ^2.6 || ^1.2.1",
+ "react/stream": "^1.4"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36",
+ "react/async": "^4.3 || ^3.3 || ^2",
+ "react/promise-stream": "^1.4",
+ "react/promise-timer": "^1.11"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "React\\Socket\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Christian Lück",
+ "email": "christian@clue.engineering",
+ "homepage": "https://clue.engineering/"
+ },
+ {
+ "name": "Cees-Jan Kiewiet",
+ "email": "reactphp@ceesjankiewiet.nl",
+ "homepage": "https://wyrihaximus.net/"
+ },
+ {
+ "name": "Jan Sorgalla",
+ "email": "jsorgalla@gmail.com",
+ "homepage": "https://sorgalla.com/"
+ },
+ {
+ "name": "Chris Boden",
+ "email": "cboden@gmail.com",
+ "homepage": "https://cboden.dev/"
+ }
+ ],
+ "description": "Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP",
+ "keywords": [
+ "Connection",
+ "Socket",
+ "async",
+ "reactphp",
+ "stream"
+ ],
+ "support": {
+ "issues": "https://github.com/reactphp/socket/issues",
+ "source": "https://github.com/reactphp/socket/tree/v1.16.0"
+ },
+ "funding": [
+ {
+ "url": "https://opencollective.com/reactphp",
+ "type": "open_collective"
+ }
+ ],
+ "time": "2024-07-26T10:38:09+00:00"
+ },
+ {
+ "name": "react/stream",
+ "version": "v1.4.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/reactphp/stream.git",
+ "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/reactphp/stream/zipball/1e5b0acb8fe55143b5b426817155190eb6f5b18d",
+ "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d",
+ "shasum": ""
+ },
+ "require": {
+ "evenement/evenement": "^3.0 || ^2.0 || ^1.0",
+ "php": ">=5.3.8",
+ "react/event-loop": "^1.2"
+ },
+ "require-dev": {
+ "clue/stream-filter": "~1.2",
+ "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "React\\Stream\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Christian Lück",
+ "email": "christian@clue.engineering",
+ "homepage": "https://clue.engineering/"
+ },
+ {
+ "name": "Cees-Jan Kiewiet",
+ "email": "reactphp@ceesjankiewiet.nl",
+ "homepage": "https://wyrihaximus.net/"
+ },
+ {
+ "name": "Jan Sorgalla",
+ "email": "jsorgalla@gmail.com",
+ "homepage": "https://sorgalla.com/"
+ },
+ {
+ "name": "Chris Boden",
+ "email": "cboden@gmail.com",
+ "homepage": "https://cboden.dev/"
+ }
+ ],
+ "description": "Event-driven readable and writable streams for non-blocking I/O in ReactPHP",
+ "keywords": [
+ "event-driven",
+ "io",
+ "non-blocking",
+ "pipe",
+ "reactphp",
+ "readable",
+ "stream",
+ "writable"
+ ],
+ "support": {
+ "issues": "https://github.com/reactphp/stream/issues",
+ "source": "https://github.com/reactphp/stream/tree/v1.4.0"
+ },
+ "funding": [
+ {
+ "url": "https://opencollective.com/reactphp",
+ "type": "open_collective"
+ }
+ ],
+ "time": "2024-06-11T12:45:25+00:00"
+ },
+ {
+ "name": "sanmai/later",
+ "version": "0.1.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sanmai/later.git",
+ "reference": "e24c4304a4b1349c2a83151a692cec0c10579f60"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sanmai/later/zipball/e24c4304a4b1349c2a83151a692cec0c10579f60",
+ "reference": "e24c4304a4b1349c2a83151a692cec0c10579f60",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.4"
+ },
+ "require-dev": {
+ "ergebnis/composer-normalize": "^2.8",
+ "friendsofphp/php-cs-fixer": "^3.35.1",
+ "infection/infection": ">=0.27.6",
+ "phan/phan": ">=2",
+ "php-coveralls/php-coveralls": "^2.0",
+ "phpstan/phpstan": ">=1.4.5",
+ "phpunit/phpunit": ">=9.5 <10",
+ "vimeo/psalm": ">=2"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "0.1.x-dev"
+ }
+ },
+ "autoload": {
+ "files": [
+ "src/functions.php"
+ ],
+ "psr-4": {
+ "Later\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "Apache-2.0"
+ ],
+ "authors": [
+ {
+ "name": "Alexey Kopytko",
+ "email": "alexey@kopytko.com"
+ }
+ ],
+ "description": "Later: deferred wrapper object",
+ "support": {
+ "issues": "https://github.com/sanmai/later/issues",
+ "source": "https://github.com/sanmai/later/tree/0.1.4"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sanmai",
+ "type": "github"
+ }
+ ],
+ "time": "2023-10-24T00:25:28+00:00"
+ },
+ {
+ "name": "sanmai/pipeline",
+ "version": "v6.11",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sanmai/pipeline.git",
+ "reference": "a5fa2a6c6ca93efa37e7c24aab72f47448a6b110"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sanmai/pipeline/zipball/a5fa2a6c6ca93efa37e7c24aab72f47448a6b110",
+ "reference": "a5fa2a6c6ca93efa37e7c24aab72f47448a6b110",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.4 || ^8.0"
+ },
+ "require-dev": {
+ "ergebnis/composer-normalize": "^2.8",
+ "friendsofphp/php-cs-fixer": "^3.17",
+ "infection/infection": ">=0.10.5",
+ "league/pipeline": "^0.3 || ^1.0",
+ "phan/phan": ">=1.1",
+ "php-coveralls/php-coveralls": "^2.4.1",
+ "phpstan/phpstan": ">=0.10",
+ "phpunit/phpunit": ">=9.4",
"vimeo/psalm": ">=2"
},
"type": "library",
@@ -4847,7 +5357,7 @@
"description": "General-purpose collections pipeline",
"support": {
"issues": "https://github.com/sanmai/pipeline/issues",
- "source": "https://github.com/sanmai/pipeline/tree/v6.9"
+ "source": "https://github.com/sanmai/pipeline/tree/v6.11"
},
"funding": [
{
@@ -4855,32 +5365,32 @@
"type": "github"
}
],
- "time": "2023-10-08T11:56:54+00:00"
+ "time": "2024-06-15T03:11:19+00:00"
},
{
"name": "sebastian/cli-parser",
- "version": "1.0.1",
+ "version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/cli-parser.git",
- "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2"
+ "reference": "c34583b87e7b7a8055bf6c450c2c77ce32a24084"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2",
- "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2",
+ "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/c34583b87e7b7a8055bf6c450c2c77ce32a24084",
+ "reference": "c34583b87e7b7a8055bf6c450c2c77ce32a24084",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-main": "2.0-dev"
}
},
"autoload": {
@@ -4903,7 +5413,8 @@
"homepage": "https://github.com/sebastianbergmann/cli-parser",
"support": {
"issues": "https://github.com/sebastianbergmann/cli-parser/issues",
- "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1"
+ "security": "https://github.com/sebastianbergmann/cli-parser/security/policy",
+ "source": "https://github.com/sebastianbergmann/cli-parser/tree/2.0.1"
},
"funding": [
{
@@ -4911,32 +5422,32 @@
"type": "github"
}
],
- "time": "2020-09-28T06:08:49+00:00"
+ "time": "2024-03-02T07:12:49+00:00"
},
{
"name": "sebastian/code-unit",
- "version": "1.0.8",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit.git",
- "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120"
+ "reference": "a81fee9eef0b7a76af11d121767abc44c104e503"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120",
- "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/a81fee9eef0b7a76af11d121767abc44c104e503",
+ "reference": "a81fee9eef0b7a76af11d121767abc44c104e503",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-main": "2.0-dev"
}
},
"autoload": {
@@ -4959,7 +5470,7 @@
"homepage": "https://github.com/sebastianbergmann/code-unit",
"support": {
"issues": "https://github.com/sebastianbergmann/code-unit/issues",
- "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8"
+ "source": "https://github.com/sebastianbergmann/code-unit/tree/2.0.0"
},
"funding": [
{
@@ -4967,32 +5478,32 @@
"type": "github"
}
],
- "time": "2020-10-26T13:08:54+00:00"
+ "time": "2023-02-03T06:58:43+00:00"
},
{
"name": "sebastian/code-unit-reverse-lookup",
- "version": "2.0.3",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5"
+ "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
- "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/5e3a687f7d8ae33fb362c5c0743794bbb2420a1d",
+ "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-main": "3.0-dev"
}
},
"autoload": {
@@ -5014,7 +5525,7 @@
"homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
"support": {
"issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues",
- "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3"
+ "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/3.0.0"
},
"funding": [
{
@@ -5022,34 +5533,36 @@
"type": "github"
}
],
- "time": "2020-09-28T05:30:19+00:00"
+ "time": "2023-02-03T06:59:15+00:00"
},
{
"name": "sebastian/comparator",
- "version": "4.0.8",
+ "version": "5.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "fa0f136dd2334583309d32b62544682ee972b51a"
+ "reference": "2d3e04c3b4c1e84a5e7382221ad8883c8fbc4f53"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a",
- "reference": "fa0f136dd2334583309d32b62544682ee972b51a",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2d3e04c3b4c1e84a5e7382221ad8883c8fbc4f53",
+ "reference": "2d3e04c3b4c1e84a5e7382221ad8883c8fbc4f53",
"shasum": ""
},
"require": {
- "php": ">=7.3",
- "sebastian/diff": "^4.0",
- "sebastian/exporter": "^4.0"
+ "ext-dom": "*",
+ "ext-mbstring": "*",
+ "php": ">=8.1",
+ "sebastian/diff": "^5.0",
+ "sebastian/exporter": "^5.0"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.4"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.0-dev"
}
},
"autoload": {
@@ -5088,7 +5601,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/comparator/issues",
- "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8"
+ "security": "https://github.com/sebastianbergmann/comparator/security/policy",
+ "source": "https://github.com/sebastianbergmann/comparator/tree/5.0.2"
},
"funding": [
{
@@ -5096,33 +5610,33 @@
"type": "github"
}
],
- "time": "2022-09-14T12:41:17+00:00"
+ "time": "2024-08-12T06:03:08+00:00"
},
{
"name": "sebastian/complexity",
- "version": "2.0.2",
+ "version": "3.2.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/complexity.git",
- "reference": "739b35e53379900cc9ac327b2147867b8b6efd88"
+ "reference": "68ff824baeae169ec9f2137158ee529584553799"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88",
- "reference": "739b35e53379900cc9ac327b2147867b8b6efd88",
+ "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/68ff824baeae169ec9f2137158ee529584553799",
+ "reference": "68ff824baeae169ec9f2137158ee529584553799",
"shasum": ""
},
"require": {
- "nikic/php-parser": "^4.7",
- "php": ">=7.3"
+ "nikic/php-parser": "^4.18 || ^5.0",
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-main": "3.2-dev"
}
},
"autoload": {
@@ -5145,7 +5659,8 @@
"homepage": "https://github.com/sebastianbergmann/complexity",
"support": {
"issues": "https://github.com/sebastianbergmann/complexity/issues",
- "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2"
+ "security": "https://github.com/sebastianbergmann/complexity/security/policy",
+ "source": "https://github.com/sebastianbergmann/complexity/tree/3.2.0"
},
"funding": [
{
@@ -5153,33 +5668,33 @@
"type": "github"
}
],
- "time": "2020-10-26T15:52:27+00:00"
+ "time": "2023-12-21T08:37:17+00:00"
},
{
"name": "sebastian/diff",
- "version": "4.0.6",
+ "version": "5.1.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc"
+ "reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc",
- "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/c41e007b4b62af48218231d6c2275e4c9b975b2e",
+ "reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3",
- "symfony/process": "^4.2 || ^5"
+ "phpunit/phpunit": "^10.0",
+ "symfony/process": "^6.4"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.1-dev"
}
},
"autoload": {
@@ -5211,7 +5726,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/diff/issues",
- "source": "https://github.com/sebastianbergmann/diff/tree/4.0.6"
+ "security": "https://github.com/sebastianbergmann/diff/security/policy",
+ "source": "https://github.com/sebastianbergmann/diff/tree/5.1.1"
},
"funding": [
{
@@ -5219,27 +5735,27 @@
"type": "github"
}
],
- "time": "2024-03-02T06:30:58+00:00"
+ "time": "2024-03-02T07:15:17+00:00"
},
{
"name": "sebastian/environment",
- "version": "5.1.5",
+ "version": "6.1.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed"
+ "reference": "8074dbcd93529b357029f5cc5058fd3e43666984"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
- "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/8074dbcd93529b357029f5cc5058fd3e43666984",
+ "reference": "8074dbcd93529b357029f5cc5058fd3e43666984",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"suggest": {
"ext-posix": "*"
@@ -5247,7 +5763,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.1-dev"
+ "dev-main": "6.1-dev"
}
},
"autoload": {
@@ -5266,7 +5782,7 @@
}
],
"description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
+ "homepage": "https://github.com/sebastianbergmann/environment",
"keywords": [
"Xdebug",
"environment",
@@ -5274,7 +5790,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/environment/issues",
- "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5"
+ "security": "https://github.com/sebastianbergmann/environment/security/policy",
+ "source": "https://github.com/sebastianbergmann/environment/tree/6.1.0"
},
"funding": [
{
@@ -5282,34 +5799,34 @@
"type": "github"
}
],
- "time": "2023-02-03T06:03:51+00:00"
+ "time": "2024-03-23T08:47:14+00:00"
},
{
"name": "sebastian/exporter",
- "version": "4.0.5",
+ "version": "5.1.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d"
+ "reference": "955288482d97c19a372d3f31006ab3f37da47adf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
- "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/955288482d97c19a372d3f31006ab3f37da47adf",
+ "reference": "955288482d97c19a372d3f31006ab3f37da47adf",
"shasum": ""
},
"require": {
- "php": ">=7.3",
- "sebastian/recursion-context": "^4.0"
+ "ext-mbstring": "*",
+ "php": ">=8.1",
+ "sebastian/recursion-context": "^5.0"
},
"require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.1-dev"
}
},
"autoload": {
@@ -5351,7 +5868,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/exporter/issues",
- "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5"
+ "security": "https://github.com/sebastianbergmann/exporter/security/policy",
+ "source": "https://github.com/sebastianbergmann/exporter/tree/5.1.2"
},
"funding": [
{
@@ -5359,38 +5877,35 @@
"type": "github"
}
],
- "time": "2022-09-14T06:03:37+00:00"
+ "time": "2024-03-02T07:17:12+00:00"
},
{
"name": "sebastian/global-state",
- "version": "5.0.6",
+ "version": "6.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bde739e7565280bda77be70044ac1047bc007e34"
+ "reference": "987bafff24ecc4c9ac418cab1145b96dd6e9cbd9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bde739e7565280bda77be70044ac1047bc007e34",
- "reference": "bde739e7565280bda77be70044ac1047bc007e34",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/987bafff24ecc4c9ac418cab1145b96dd6e9cbd9",
+ "reference": "987bafff24ecc4c9ac418cab1145b96dd6e9cbd9",
"shasum": ""
},
"require": {
- "php": ">=7.3",
- "sebastian/object-reflector": "^2.0",
- "sebastian/recursion-context": "^4.0"
+ "php": ">=8.1",
+ "sebastian/object-reflector": "^3.0",
+ "sebastian/recursion-context": "^5.0"
},
"require-dev": {
"ext-dom": "*",
- "phpunit/phpunit": "^9.3"
- },
- "suggest": {
- "ext-uopz": "*"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-main": "6.0-dev"
}
},
"autoload": {
@@ -5409,13 +5924,14 @@
}
],
"description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
+ "homepage": "https://www.github.com/sebastianbergmann/global-state",
"keywords": [
"global state"
],
"support": {
"issues": "https://github.com/sebastianbergmann/global-state/issues",
- "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.6"
+ "security": "https://github.com/sebastianbergmann/global-state/security/policy",
+ "source": "https://github.com/sebastianbergmann/global-state/tree/6.0.2"
},
"funding": [
{
@@ -5423,33 +5939,33 @@
"type": "github"
}
],
- "time": "2023-08-02T09:26:13+00:00"
+ "time": "2024-03-02T07:19:19+00:00"
},
{
"name": "sebastian/lines-of-code",
- "version": "1.0.3",
+ "version": "2.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/lines-of-code.git",
- "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc"
+ "reference": "856e7f6a75a84e339195d48c556f23be2ebf75d0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc",
- "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc",
+ "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/856e7f6a75a84e339195d48c556f23be2ebf75d0",
+ "reference": "856e7f6a75a84e339195d48c556f23be2ebf75d0",
"shasum": ""
},
"require": {
- "nikic/php-parser": "^4.6",
- "php": ">=7.3"
+ "nikic/php-parser": "^4.18 || ^5.0",
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-main": "2.0-dev"
}
},
"autoload": {
@@ -5472,7 +5988,8 @@
"homepage": "https://github.com/sebastianbergmann/lines-of-code",
"support": {
"issues": "https://github.com/sebastianbergmann/lines-of-code/issues",
- "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3"
+ "security": "https://github.com/sebastianbergmann/lines-of-code/security/policy",
+ "source": "https://github.com/sebastianbergmann/lines-of-code/tree/2.0.2"
},
"funding": [
{
@@ -5480,34 +5997,34 @@
"type": "github"
}
],
- "time": "2020-11-28T06:42:11+00:00"
+ "time": "2023-12-21T08:38:20+00:00"
},
{
"name": "sebastian/object-enumerator",
- "version": "4.0.4",
+ "version": "5.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "5c9eeac41b290a3712d88851518825ad78f45c71"
+ "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71",
- "reference": "5c9eeac41b290a3712d88851518825ad78f45c71",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/202d0e344a580d7f7d04b3fafce6933e59dae906",
+ "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906",
"shasum": ""
},
"require": {
- "php": ">=7.3",
- "sebastian/object-reflector": "^2.0",
- "sebastian/recursion-context": "^4.0"
+ "php": ">=8.1",
+ "sebastian/object-reflector": "^3.0",
+ "sebastian/recursion-context": "^5.0"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.0-dev"
}
},
"autoload": {
@@ -5529,7 +6046,7 @@
"homepage": "https://github.com/sebastianbergmann/object-enumerator/",
"support": {
"issues": "https://github.com/sebastianbergmann/object-enumerator/issues",
- "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4"
+ "source": "https://github.com/sebastianbergmann/object-enumerator/tree/5.0.0"
},
"funding": [
{
@@ -5537,32 +6054,32 @@
"type": "github"
}
],
- "time": "2020-10-26T13:12:34+00:00"
+ "time": "2023-02-03T07:08:32+00:00"
},
{
"name": "sebastian/object-reflector",
- "version": "2.0.4",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-reflector.git",
- "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7"
+ "reference": "24ed13d98130f0e7122df55d06c5c4942a577957"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
- "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/24ed13d98130f0e7122df55d06c5c4942a577957",
+ "reference": "24ed13d98130f0e7122df55d06c5c4942a577957",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-main": "3.0-dev"
}
},
"autoload": {
@@ -5584,7 +6101,7 @@
"homepage": "https://github.com/sebastianbergmann/object-reflector/",
"support": {
"issues": "https://github.com/sebastianbergmann/object-reflector/issues",
- "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4"
+ "source": "https://github.com/sebastianbergmann/object-reflector/tree/3.0.0"
},
"funding": [
{
@@ -5592,32 +6109,32 @@
"type": "github"
}
],
- "time": "2020-10-26T13:14:26+00:00"
+ "time": "2023-02-03T07:06:18+00:00"
},
{
"name": "sebastian/recursion-context",
- "version": "4.0.5",
+ "version": "5.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1"
+ "reference": "05909fb5bc7df4c52992396d0116aed689f93712"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
- "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/05909fb5bc7df4c52992396d0116aed689f93712",
+ "reference": "05909fb5bc7df4c52992396d0116aed689f93712",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.3"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-main": "5.0-dev"
}
},
"autoload": {
@@ -5647,7 +6164,7 @@
"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.5"
+ "source": "https://github.com/sebastianbergmann/recursion-context/tree/5.0.0"
},
"funding": [
{
@@ -5655,87 +6172,32 @@
"type": "github"
}
],
- "time": "2023-02-03T06:07:39+00:00"
- },
- {
- "name": "sebastian/resource-operations",
- "version": "3.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
- "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
- "shasum": ""
- },
- "require": {
- "php": ">=7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides a list of PHP built-in functions that operate on resources",
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "support": {
- "issues": "https://github.com/sebastianbergmann/resource-operations/issues",
- "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3"
- },
- "funding": [
- {
- "url": "https://github.com/sebastianbergmann",
- "type": "github"
- }
- ],
- "time": "2020-09-28T06:45:17+00:00"
+ "time": "2023-02-03T07:05:40+00:00"
},
{
"name": "sebastian/type",
- "version": "3.2.1",
+ "version": "4.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/type.git",
- "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7"
+ "reference": "462699a16464c3944eefc02ebdd77882bd3925bf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
- "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/462699a16464c3944eefc02ebdd77882bd3925bf",
+ "reference": "462699a16464c3944eefc02ebdd77882bd3925bf",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"require-dev": {
- "phpunit/phpunit": "^9.5"
+ "phpunit/phpunit": "^10.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2-dev"
+ "dev-main": "4.0-dev"
}
},
"autoload": {
@@ -5758,7 +6220,7 @@
"homepage": "https://github.com/sebastianbergmann/type",
"support": {
"issues": "https://github.com/sebastianbergmann/type/issues",
- "source": "https://github.com/sebastianbergmann/type/tree/3.2.1"
+ "source": "https://github.com/sebastianbergmann/type/tree/4.0.0"
},
"funding": [
{
@@ -5766,29 +6228,29 @@
"type": "github"
}
],
- "time": "2023-02-03T06:13:03+00:00"
+ "time": "2023-02-03T07:10:45+00:00"
},
{
"name": "sebastian/version",
- "version": "3.0.2",
+ "version": "4.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/version.git",
- "reference": "c6c1022351a901512170118436c764e473f6de8c"
+ "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c",
- "reference": "c6c1022351a901512170118436c764e473f6de8c",
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c51fa83a5d8f43f1402e3f32a005e6262244ef17",
+ "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17",
"shasum": ""
},
"require": {
- "php": ">=7.3"
+ "php": ">=8.1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-main": "4.0-dev"
}
},
"autoload": {
@@ -5811,7 +6273,7 @@
"homepage": "https://github.com/sebastianbergmann/version",
"support": {
"issues": "https://github.com/sebastianbergmann/version/issues",
- "source": "https://github.com/sebastianbergmann/version/tree/3.0.2"
+ "source": "https://github.com/sebastianbergmann/version/tree/4.0.1"
},
"funding": [
{
@@ -5819,7 +6281,7 @@
"type": "github"
}
],
- "time": "2020-09-28T06:39:44+00:00"
+ "time": "2023-02-07T11:34:05+00:00"
},
{
"name": "spatie/array-to-xml",
@@ -5891,47 +6353,46 @@
},
{
"name": "symfony/console",
- "version": "v6.4.10",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "504974cbe43d05f83b201d6498c206f16fc0cdbc"
+ "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/504974cbe43d05f83b201d6498c206f16fc0cdbc",
- "reference": "504974cbe43d05f83b201d6498c206f16fc0cdbc",
+ "url": "https://api.github.com/repos/symfony/console/zipball/0fa539d12b3ccf068a722bbbffa07ca7079af9ee",
+ "reference": "0fa539d12b3ccf068a722bbbffa07ca7079af9ee",
"shasum": ""
},
"require": {
- "php": ">=8.1",
- "symfony/deprecation-contracts": "^2.5|^3",
+ "php": ">=8.2",
"symfony/polyfill-mbstring": "~1.0",
"symfony/service-contracts": "^2.5|^3",
- "symfony/string": "^5.4|^6.0|^7.0"
+ "symfony/string": "^6.4|^7.0"
},
"conflict": {
- "symfony/dependency-injection": "<5.4",
- "symfony/dotenv": "<5.4",
- "symfony/event-dispatcher": "<5.4",
- "symfony/lock": "<5.4",
- "symfony/process": "<5.4"
+ "symfony/dependency-injection": "<6.4",
+ "symfony/dotenv": "<6.4",
+ "symfony/event-dispatcher": "<6.4",
+ "symfony/lock": "<6.4",
+ "symfony/process": "<6.4"
},
"provide": {
"psr/log-implementation": "1.0|2.0|3.0"
},
"require-dev": {
"psr/log": "^1|^2|^3",
- "symfony/config": "^5.4|^6.0|^7.0",
- "symfony/dependency-injection": "^5.4|^6.0|^7.0",
- "symfony/event-dispatcher": "^5.4|^6.0|^7.0",
+ "symfony/config": "^6.4|^7.0",
+ "symfony/dependency-injection": "^6.4|^7.0",
+ "symfony/event-dispatcher": "^6.4|^7.0",
"symfony/http-foundation": "^6.4|^7.0",
"symfony/http-kernel": "^6.4|^7.0",
- "symfony/lock": "^5.4|^6.0|^7.0",
- "symfony/messenger": "^5.4|^6.0|^7.0",
- "symfony/process": "^5.4|^6.0|^7.0",
- "symfony/stopwatch": "^5.4|^6.0|^7.0",
- "symfony/var-dumper": "^5.4|^6.0|^7.0"
+ "symfony/lock": "^6.4|^7.0",
+ "symfony/messenger": "^6.4|^7.0",
+ "symfony/process": "^6.4|^7.0",
+ "symfony/stopwatch": "^6.4|^7.0",
+ "symfony/var-dumper": "^6.4|^7.0"
},
"type": "library",
"autoload": {
@@ -5965,7 +6426,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v6.4.10"
+ "source": "https://github.com/symfony/console/tree/v7.1.5"
},
"funding": [
{
@@ -5981,20 +6442,20 @@
"type": "tidelift"
}
],
- "time": "2024-07-26T12:30:32+00:00"
+ "time": "2024-09-20T08:28:38+00:00"
},
{
"name": "symfony/options-resolver",
- "version": "v7.0.0",
+ "version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/options-resolver.git",
- "reference": "700ff4096e346f54cb628ea650767c8130f1001f"
+ "reference": "47aa818121ed3950acd2b58d1d37d08a94f9bf55"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/options-resolver/zipball/700ff4096e346f54cb628ea650767c8130f1001f",
- "reference": "700ff4096e346f54cb628ea650767c8130f1001f",
+ "url": "https://api.github.com/repos/symfony/options-resolver/zipball/47aa818121ed3950acd2b58d1d37d08a94f9bf55",
+ "reference": "47aa818121ed3950acd2b58d1d37d08a94f9bf55",
"shasum": ""
},
"require": {
@@ -6032,7 +6493,7 @@
"options"
],
"support": {
- "source": "https://github.com/symfony/options-resolver/tree/v7.0.0"
+ "source": "https://github.com/symfony/options-resolver/tree/v7.1.1"
},
"funding": [
{
@@ -6048,24 +6509,24 @@
"type": "tidelift"
}
],
- "time": "2023-08-08T10:20:21+00:00"
+ "time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/polyfill-intl-grapheme",
- "version": "v1.30.0",
+ "version": "v1.31.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-grapheme.git",
- "reference": "64647a7c30b2283f5d49b874d84a18fc22054b7a"
+ "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/64647a7c30b2283f5d49b874d84a18fc22054b7a",
- "reference": "64647a7c30b2283f5d49b874d84a18fc22054b7a",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe",
+ "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"suggest": {
"ext-intl": "For best performance"
@@ -6110,7 +6571,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.30.0"
+ "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.31.0"
},
"funding": [
{
@@ -6126,24 +6587,24 @@
"type": "tidelift"
}
],
- "time": "2024-05-31T15:07:36+00:00"
+ "time": "2024-09-09T11:45:10+00:00"
},
{
"name": "symfony/polyfill-intl-normalizer",
- "version": "v1.30.0",
+ "version": "v1.31.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-normalizer.git",
- "reference": "a95281b0be0d9ab48050ebd988b967875cdb9fdb"
+ "reference": "3833d7255cc303546435cb650316bff708a1c75c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/a95281b0be0d9ab48050ebd988b967875cdb9fdb",
- "reference": "a95281b0be0d9ab48050ebd988b967875cdb9fdb",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/3833d7255cc303546435cb650316bff708a1c75c",
+ "reference": "3833d7255cc303546435cb650316bff708a1c75c",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"suggest": {
"ext-intl": "For best performance"
@@ -6191,7 +6652,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.30.0"
+ "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.0"
},
"funding": [
{
@@ -6207,30 +6668,107 @@
"type": "tidelift"
}
],
- "time": "2024-05-31T15:07:36+00:00"
+ "time": "2024-09-09T11:45:10+00:00"
+ },
+ {
+ "name": "symfony/polyfill-php80",
+ "version": "v1.31.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-php80.git",
+ "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
+ "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Php80\\": ""
+ },
+ "classmap": [
+ "Resources/stubs"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Ion Bazan",
+ "email": "ion.bazan@gmail.com"
+ },
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.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": "2024-09-09T11:45:10+00:00"
},
{
"name": "symfony/polyfill-php81",
- "version": "v1.28.0",
+ "version": "v1.31.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php81.git",
- "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b"
+ "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/7581cd600fa9fd681b797d00b02f068e2f13263b",
- "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b",
+ "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c",
+ "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": ">=7.2"
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "1.28-dev"
- },
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@@ -6270,7 +6808,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php81/tree/v1.28.0"
+ "source": "https://github.com/symfony/polyfill-php81/tree/v1.31.0"
},
"funding": [
{
@@ -6286,24 +6824,24 @@
"type": "tidelift"
}
],
- "time": "2023-01-26T09:26:14+00:00"
+ "time": "2024-09-09T11:45:10+00:00"
},
{
"name": "symfony/process",
- "version": "v6.4.8",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "8d92dd79149f29e89ee0f480254db595f6a6a2c5"
+ "reference": "5c03ee6369281177f07f7c68252a280beccba847"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/8d92dd79149f29e89ee0f480254db595f6a6a2c5",
- "reference": "8d92dd79149f29e89ee0f480254db595f6a6a2c5",
+ "url": "https://api.github.com/repos/symfony/process/zipball/5c03ee6369281177f07f7c68252a280beccba847",
+ "reference": "5c03ee6369281177f07f7c68252a280beccba847",
"shasum": ""
},
"require": {
- "php": ">=8.1"
+ "php": ">=8.2"
},
"type": "library",
"autoload": {
@@ -6331,7 +6869,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/process/tree/v6.4.8"
+ "source": "https://github.com/symfony/process/tree/v7.1.5"
},
"funding": [
{
@@ -6347,20 +6885,20 @@
"type": "tidelift"
}
],
- "time": "2024-05-31T14:49:08+00:00"
+ "time": "2024-09-19T21:48:23+00:00"
},
{
"name": "symfony/stopwatch",
- "version": "v7.0.0",
+ "version": "v7.1.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/stopwatch.git",
- "reference": "7bbfa3dd564a0ce12eb4acaaa46823c740f9cb7a"
+ "reference": "5b75bb1ac2ba1b9d05c47fc4b3046a625377d23d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/stopwatch/zipball/7bbfa3dd564a0ce12eb4acaaa46823c740f9cb7a",
- "reference": "7bbfa3dd564a0ce12eb4acaaa46823c740f9cb7a",
+ "url": "https://api.github.com/repos/symfony/stopwatch/zipball/5b75bb1ac2ba1b9d05c47fc4b3046a625377d23d",
+ "reference": "5b75bb1ac2ba1b9d05c47fc4b3046a625377d23d",
"shasum": ""
},
"require": {
@@ -6393,7 +6931,7 @@
"description": "Provides a way to profile code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/stopwatch/tree/v7.0.0"
+ "source": "https://github.com/symfony/stopwatch/tree/v7.1.1"
},
"funding": [
{
@@ -6409,20 +6947,20 @@
"type": "tidelift"
}
],
- "time": "2023-07-05T13:06:06+00:00"
+ "time": "2024-05-31T14:57:53+00:00"
},
{
"name": "symfony/string",
- "version": "v7.1.3",
+ "version": "v7.1.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "ea272a882be7f20cad58d5d78c215001617b7f07"
+ "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/ea272a882be7f20cad58d5d78c215001617b7f07",
- "reference": "ea272a882be7f20cad58d5d78c215001617b7f07",
+ "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306",
+ "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306",
"shasum": ""
},
"require": {
@@ -6480,7 +7018,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v7.1.3"
+ "source": "https://github.com/symfony/string/tree/v7.1.5"
},
"funding": [
{
@@ -6496,7 +7034,7 @@
"type": "tidelift"
}
],
- "time": "2024-07-22T10:25:37+00:00"
+ "time": "2024-09-20T08:28:38+00:00"
},
{
"name": "thecodingmachine/safe",
@@ -6639,16 +7177,16 @@
},
{
"name": "theseer/tokenizer",
- "version": "1.2.2",
+ "version": "1.2.3",
"source": {
"type": "git",
"url": "https://github.com/theseer/tokenizer.git",
- "reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96"
+ "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/theseer/tokenizer/zipball/b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
- "reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
+ "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
"shasum": ""
},
"require": {
@@ -6677,7 +7215,7 @@
"description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
"support": {
"issues": "https://github.com/theseer/tokenizer/issues",
- "source": "https://github.com/theseer/tokenizer/tree/1.2.2"
+ "source": "https://github.com/theseer/tokenizer/tree/1.2.3"
},
"funding": [
{
@@ -6685,20 +7223,20 @@
"type": "github"
}
],
- "time": "2023-11-20T00:12:19+00:00"
+ "time": "2024-03-03T12:36:25+00:00"
},
{
"name": "vimeo/psalm",
- "version": "5.25.0",
+ "version": "5.26.1",
"source": {
"type": "git",
"url": "https://github.com/vimeo/psalm.git",
- "reference": "01a8eb06b9e9cc6cfb6a320bf9fb14331919d505"
+ "reference": "d747f6500b38ac4f7dfc5edbcae6e4b637d7add0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/vimeo/psalm/zipball/01a8eb06b9e9cc6cfb6a320bf9fb14331919d505",
- "reference": "01a8eb06b9e9cc6cfb6a320bf9fb14331919d505",
+ "url": "https://api.github.com/repos/vimeo/psalm/zipball/d747f6500b38ac4f7dfc5edbcae6e4b637d7add0",
+ "reference": "d747f6500b38ac4f7dfc5edbcae6e4b637d7add0",
"shasum": ""
},
"require": {
@@ -6719,7 +7257,7 @@
"felixfbecker/language-server-protocol": "^1.5.2",
"fidry/cpu-core-counter": "^0.4.1 || ^0.5.1 || ^1.0.0",
"netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0 || ^4.0",
- "nikic/php-parser": "^4.16",
+ "nikic/php-parser": "^4.17",
"php": "^7.4 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0",
"sebastian/diff": "^4.0 || ^5.0 || ^6.0",
"spatie/array-to-xml": "^2.17.0 || ^3.0",
@@ -6795,7 +7333,7 @@
"issues": "https://github.com/vimeo/psalm/issues",
"source": "https://github.com/vimeo/psalm"
},
- "time": "2024-06-16T15:08:35+00:00"
+ "time": "2024-09-08T18:53:08+00:00"
},
{
"name": "webmozart/assert",
diff --git a/phpunit.xml.dist b/phpunit.xml.dist
index 6f13ddd..da5dc05 100644
--- a/phpunit.xml.dist
+++ b/phpunit.xml.dist
@@ -5,6 +5,10 @@
xsi:noNamespaceSchemaLocation="vendor/phpunit/phpunit/phpunit.xsd"
colors="true"
bootstrap="vendor/autoload.php"
+ displayDetailsOnTestsThatTriggerDeprecations="true"
+ displayDetailsOnTestsThatTriggerErrors="true"
+ displayDetailsOnTestsThatTriggerNotices="true"
+ displayDetailsOnTestsThatTriggerWarnings="true"
>
@@ -12,14 +16,11 @@
-
+
+
diff --git a/src/Serializer/IdListNormalizer.php b/src/Serializer/IdListNormalizer.php
index 7b6ce34..198b580 100644
--- a/src/Serializer/IdListNormalizer.php
+++ b/src/Serializer/IdListNormalizer.php
@@ -11,8 +11,8 @@
final readonly class IdListNormalizer implements NormalizerInterface, DenormalizerInterface
{
/**
- * @param IdList|object $data
- * @param array $context
+ * @param IdList|object $data
+ * @param array $context
*/
public function supportsNormalization($data, $format = null, array $context = []): bool
{
@@ -20,8 +20,8 @@ public function supportsNormalization($data, $format = null, array $context = []
}
/**
- * @param string $type
- * @param array $context
+ * @param string $type
+ * @param array $context
*/
public function supportsDenormalization($data, $type, $format = null, array $context = []): bool
{
@@ -35,8 +35,8 @@ public function supportsDenormalization($data, $type, $format = null, array $con
}
/**
- * @param IdList $object
- * @param array $context
+ * @param IdList $object
+ * @param array $context
*
* @return array
*/
@@ -46,11 +46,11 @@ public function normalize($object, $format = null, array $context = []): array
}
/**
- * @param ?array $data
- * @param class-string $type
- * @param array $context
+ * @param ?array $data
+ * @param class-string $type
+ * @param array $context
*/
- public function denormalize($data, $type, $format = null, array $context = []): IdList | null
+ public function denormalize($data, $type, $format = null, array $context = []): ?IdList
{
if ($data === null) {
return null;
diff --git a/src/Serializer/IdNormalizer.php b/src/Serializer/IdNormalizer.php
index ed30757..130e99e 100644
--- a/src/Serializer/IdNormalizer.php
+++ b/src/Serializer/IdNormalizer.php
@@ -10,15 +10,15 @@
final readonly class IdNormalizer implements NormalizerInterface, DenormalizerInterface
{
- /** @param array $context */
+ /** @param array $context */
public function supportsNormalization($data, $format = null, array $context = []): bool
{
return $data instanceof Id;
}
/**
- * @param string $type
- * @param array $context
+ * @param string $type
+ * @param array $context
*/
public function supportsDenormalization($data, $type, $format = null, array $context = []): bool
{
@@ -26,8 +26,8 @@ public function supportsDenormalization($data, $type, $format = null, array $con
}
/**
- * @param Id $object
- * @param array $context
+ * @param Id $object
+ * @param array $context
*/
public function normalize($object, $format = null, array $context = []): string
{
@@ -35,9 +35,9 @@ public function normalize($object, $format = null, array $context = []): string
}
/**
- * @param ?string $data
- * @param class-string $type
- * @param array $context
+ * @param ?string $data
+ * @param class-string $type
+ * @param array $context
*/
public function denormalize($data, $type, $format = null, array $context = []): ?Id
{
diff --git a/src/ValueObject/Exception/DuplicateIds.php b/src/ValueObject/Exception/DuplicateIds.php
index 447e91c..86494ca 100644
--- a/src/ValueObject/Exception/DuplicateIds.php
+++ b/src/ValueObject/Exception/DuplicateIds.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class DuplicateIds extends \DomainException
{
public function __construct()
diff --git a/src/ValueObject/Exception/IdAlreadyInList.php b/src/ValueObject/Exception/IdAlreadyInList.php
index aeaf6a4..b07803f 100644
--- a/src/ValueObject/Exception/IdAlreadyInList.php
+++ b/src/ValueObject/Exception/IdAlreadyInList.php
@@ -6,7 +6,11 @@
use DigitalCraftsman\Ids\ValueObject\Id;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdAlreadyInList extends \DomainException
{
public function __construct(Id $id)
diff --git a/src/ValueObject/Exception/IdClassNotHandledInList.php b/src/ValueObject/Exception/IdClassNotHandledInList.php
index 8f552ad..d8fe5af 100644
--- a/src/ValueObject/Exception/IdClassNotHandledInList.php
+++ b/src/ValueObject/Exception/IdClassNotHandledInList.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdClassNotHandledInList extends \InvalidArgumentException
{
public function __construct(string $idListClass, string $idClass)
diff --git a/src/ValueObject/Exception/IdEqual.php b/src/ValueObject/Exception/IdEqual.php
index 037f834..251b91a 100644
--- a/src/ValueObject/Exception/IdEqual.php
+++ b/src/ValueObject/Exception/IdEqual.php
@@ -6,7 +6,11 @@
use DigitalCraftsman\Ids\ValueObject\Id;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdEqual extends \DomainException
{
public function __construct(Id $idA, Id $idB)
diff --git a/src/ValueObject/Exception/IdListDoesContainEveryId.php b/src/ValueObject/Exception/IdListDoesContainEveryId.php
index 90b8fad..c1269b1 100644
--- a/src/ValueObject/Exception/IdListDoesContainEveryId.php
+++ b/src/ValueObject/Exception/IdListDoesContainEveryId.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListDoesContainEveryId extends \DomainException
{
public function __construct()
diff --git a/src/ValueObject/Exception/IdListDoesContainId.php b/src/ValueObject/Exception/IdListDoesContainId.php
index e729dae..e81d8e0 100644
--- a/src/ValueObject/Exception/IdListDoesContainId.php
+++ b/src/ValueObject/Exception/IdListDoesContainId.php
@@ -6,7 +6,11 @@
use DigitalCraftsman\Ids\ValueObject\Id;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListDoesContainId extends \DomainException
{
public function __construct(Id $id)
diff --git a/src/ValueObject/Exception/IdListDoesContainNoneIds.php b/src/ValueObject/Exception/IdListDoesContainNoneIds.php
index f26e77f..50b9ce1 100644
--- a/src/ValueObject/Exception/IdListDoesContainNoneIds.php
+++ b/src/ValueObject/Exception/IdListDoesContainNoneIds.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListDoesContainNoneIds extends \DomainException
{
public function __construct()
diff --git a/src/ValueObject/Exception/IdListDoesNotContainEveryId.php b/src/ValueObject/Exception/IdListDoesNotContainEveryId.php
index c117958..2c5edc6 100644
--- a/src/ValueObject/Exception/IdListDoesNotContainEveryId.php
+++ b/src/ValueObject/Exception/IdListDoesNotContainEveryId.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListDoesNotContainEveryId extends \DomainException
{
public function __construct()
diff --git a/src/ValueObject/Exception/IdListDoesNotContainId.php b/src/ValueObject/Exception/IdListDoesNotContainId.php
index 79c5753..c8e37bd 100644
--- a/src/ValueObject/Exception/IdListDoesNotContainId.php
+++ b/src/ValueObject/Exception/IdListDoesNotContainId.php
@@ -6,7 +6,11 @@
use DigitalCraftsman\Ids\ValueObject\Id;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListDoesNotContainId extends \DomainException
{
public function __construct(Id $id)
diff --git a/src/ValueObject/Exception/IdListDoesNotContainSomeIds.php b/src/ValueObject/Exception/IdListDoesNotContainSomeIds.php
index a4f8b56..701d919 100644
--- a/src/ValueObject/Exception/IdListDoesNotContainSomeIds.php
+++ b/src/ValueObject/Exception/IdListDoesNotContainSomeIds.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListDoesNotContainSomeIds extends \DomainException
{
public function __construct()
diff --git a/src/ValueObject/Exception/IdListIsEmpty.php b/src/ValueObject/Exception/IdListIsEmpty.php
index 92933bb..0283bea 100644
--- a/src/ValueObject/Exception/IdListIsEmpty.php
+++ b/src/ValueObject/Exception/IdListIsEmpty.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListIsEmpty extends \DomainException
{
public function __construct()
diff --git a/src/ValueObject/Exception/IdListIsNotEmpty.php b/src/ValueObject/Exception/IdListIsNotEmpty.php
index 232a38f..2b27bdf 100644
--- a/src/ValueObject/Exception/IdListIsNotEmpty.php
+++ b/src/ValueObject/Exception/IdListIsNotEmpty.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListIsNotEmpty extends \DomainException
{
public function __construct()
diff --git a/src/ValueObject/Exception/IdListsMustBeEqual.php b/src/ValueObject/Exception/IdListsMustBeEqual.php
index 3d757bc..5190793 100644
--- a/src/ValueObject/Exception/IdListsMustBeEqual.php
+++ b/src/ValueObject/Exception/IdListsMustBeEqual.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListsMustBeEqual extends \DomainException
{
public function __construct()
diff --git a/src/ValueObject/Exception/IdListsMustNotBeEqual.php b/src/ValueObject/Exception/IdListsMustNotBeEqual.php
index a46e5bf..319b5b5 100644
--- a/src/ValueObject/Exception/IdListsMustNotBeEqual.php
+++ b/src/ValueObject/Exception/IdListsMustNotBeEqual.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdListsMustNotBeEqual extends \DomainException
{
public function __construct()
diff --git a/src/ValueObject/Exception/IdNotEqual.php b/src/ValueObject/Exception/IdNotEqual.php
index 5f6b4e1..9f55e8a 100644
--- a/src/ValueObject/Exception/IdNotEqual.php
+++ b/src/ValueObject/Exception/IdNotEqual.php
@@ -6,7 +6,11 @@
use DigitalCraftsman\Ids\ValueObject\Id;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class IdNotEqual extends \DomainException
{
public function __construct(Id $idA, Id $idB)
diff --git a/src/ValueObject/Exception/InvalidId.php b/src/ValueObject/Exception/InvalidId.php
index 85b1a05..b099743 100644
--- a/src/ValueObject/Exception/InvalidId.php
+++ b/src/ValueObject/Exception/InvalidId.php
@@ -4,7 +4,11 @@
namespace DigitalCraftsman\Ids\ValueObject\Exception;
-/** @psalm-immutable */
+/**
+ * @psalm-immutable
+ *
+ * @codeCoverageIgnore
+ */
final class InvalidId extends \InvalidArgumentException
{
public function __construct(string $id)
diff --git a/src/ValueObject/IdList.php b/src/ValueObject/IdList.php
index a7fcaae..5f0f31d 100644
--- a/src/ValueObject/IdList.php
+++ b/src/ValueObject/IdList.php
@@ -298,6 +298,27 @@ public function map(callable $mapFunction): array
return array_map($mapFunction, array_values($this->ids));
}
+ /**
+ * Psalm doesn't yet realize when a function is pure and when not. To prevent us from marking every single use by hand (which will
+ * reduce the readability), we ignore the purity for now and will change the call here to pure-callable as soon as Psalm can handle
+ * it.
+ *
+ * @template R
+ *
+ * @psalm-param callable(T):R $mapFunction
+ *
+ * @return array
+ */
+ public function mapWithIdKeys(callable $mapFunction): array
+ {
+ $map = [];
+ foreach ($this->ids as $idString => $id) {
+ $map[$idString] = $mapFunction($id);
+ }
+
+ return $map;
+ }
+
/**
* @psalm-param callable(T):bool $filterFunction
*/
diff --git a/tests/Doctrine/IdListTypeTest.php b/tests/Doctrine/IdListTypeTest.php
index e95893d..4427d87 100644
--- a/tests/Doctrine/IdListTypeTest.php
+++ b/tests/Doctrine/IdListTypeTest.php
@@ -8,11 +8,14 @@
use DigitalCraftsman\Ids\Test\ValueObject\UserId;
use DigitalCraftsman\Ids\Test\ValueObject\UserIdList;
use Doctrine\DBAL\Platforms\PostgreSQLPlatform;
+use PHPUnit\Framework\Attributes\CoversClass;
+use PHPUnit\Framework\Attributes\Test;
use PHPUnit\Framework\TestCase;
+#[CoversClass(IdListType::class)]
final class IdListTypeTest extends TestCase
{
- /** @test */
+ #[Test]
public function convert_from_and_to_id_list_php_value_works(): void
{
// -- Arrange
@@ -33,7 +36,7 @@ public function convert_from_and_to_id_list_php_value_works(): void
self::assertEquals($userIdList, $phpValue);
}
- /** @test */
+ #[Test]
public function convert_from_and_to_value_value_works(): void
{
// -- Arrange
diff --git a/tests/Doctrine/IdTypeTest.php b/tests/Doctrine/IdTypeTest.php
index aa391cd..f720ed0 100644
--- a/tests/Doctrine/IdTypeTest.php
+++ b/tests/Doctrine/IdTypeTest.php
@@ -7,11 +7,14 @@
use DigitalCraftsman\Ids\Test\Doctrine\UserIdType;
use DigitalCraftsman\Ids\Test\ValueObject\UserId;
use Doctrine\DBAL\Platforms\PostgreSQLPlatform;
+use PHPUnit\Framework\Attributes\CoversClass;
+use PHPUnit\Framework\Attributes\Test;
use PHPUnit\Framework\TestCase;
+#[CoversClass(IdType::class)]
final class IdTypeTest extends TestCase
{
- /** @test */
+ #[Test]
public function convert_from_and_to_id_php_value_works(): void
{
// -- Arrange
@@ -27,7 +30,7 @@ public function convert_from_and_to_id_php_value_works(): void
self::assertEquals($userId, $phpValue);
}
- /** @test */
+ #[Test]
public function convert_from_and_to_null_value_works(): void
{
// -- Arrange
diff --git a/tests/Serializer/IdListNormalizerTest.php b/tests/Serializer/IdListNormalizerTest.php
index e736072..b26612d 100644
--- a/tests/Serializer/IdListNormalizerTest.php
+++ b/tests/Serializer/IdListNormalizerTest.php
@@ -6,17 +6,14 @@
use DigitalCraftsman\Ids\Test\ValueObject\UserId;
use DigitalCraftsman\Ids\Test\ValueObject\UserIdList;
+use PHPUnit\Framework\Attributes\CoversClass;
+use PHPUnit\Framework\Attributes\Test;
use PHPUnit\Framework\TestCase;
-/** @coversDefaultClass \DigitalCraftsman\Ids\Serializer\IdListNormalizer */
+#[CoversClass(IdListNormalizer::class)]
final class IdListNormalizerTest extends TestCase
{
- /**
- * @test
- *
- * @covers ::normalize
- * @covers ::denormalize
- */
+ #[Test]
public function id_list_normalization_and_denormalization_works(): void
{
// -- Arrange
@@ -37,11 +34,7 @@ public function id_list_normalization_and_denormalization_works(): void
self::assertEquals($userIdList, $denormalizedData);
}
- /**
- * @test
- *
- * @covers ::denormalize
- */
+ #[Test]
public function id_list_denormalization_with_null_works(): void
{
// -- Arrange
@@ -54,11 +47,7 @@ public function id_list_denormalization_with_null_works(): void
self::assertNull($denormalizedData);
}
- /**
- * @test
- *
- * @covers ::supportsNormalization
- */
+ #[Test]
public function supports_normalization_for_list(): void
{
// -- Arrange
@@ -70,11 +59,7 @@ public function supports_normalization_for_list(): void
self::assertTrue($normalizer->supportsNormalization($userIdList));
}
- /**
- * @test
- *
- * @covers ::supportsNormalization
- */
+ #[Test]
public function supports_normalization_fails_with_wrong_data(): void
{
// -- Arrange
@@ -86,11 +71,7 @@ public function supports_normalization_fails_with_wrong_data(): void
self::assertFalse($normalizer->supportsNormalization($userId));
}
- /**
- * @test
- *
- * @covers ::supportsDenormalization
- */
+ #[Test]
public function supports_denormalization_for_id_list(): void
{
// -- Arrange
@@ -106,11 +87,7 @@ public function supports_denormalization_for_id_list(): void
self::assertTrue($normalizer->supportsDenormalization($idListData, UserIdList::class));
}
- /**
- * @test
- *
- * @covers ::supportsDenormalization
- */
+ #[Test]
public function supports_denormalization_with_array_of_ids(): void
{
// -- Arrange
@@ -126,11 +103,7 @@ public function supports_denormalization_with_array_of_ids(): void
self::assertFalse($normalizer->supportsDenormalization($idListData, sprintf('%s[]', UserId::class)));
}
- /**
- * @test
- *
- * @covers ::supportsDenormalization
- */
+ #[Test]
public function supports_denormalization_with_wrong_type(): void
{
// -- Arrange
diff --git a/tests/Serializer/IdNormalizerTest.php b/tests/Serializer/IdNormalizerTest.php
index a7336ed..6a407ac 100644
--- a/tests/Serializer/IdNormalizerTest.php
+++ b/tests/Serializer/IdNormalizerTest.php
@@ -5,17 +5,14 @@
namespace DigitalCraftsman\Ids\Serializer;
use DigitalCraftsman\Ids\Test\ValueObject\UserId;
+use PHPUnit\Framework\Attributes\CoversClass;
+use PHPUnit\Framework\Attributes\Test;
use PHPUnit\Framework\TestCase;
-/** @coversDefaultClass \DigitalCraftsman\Ids\Serializer\IdNormalizer */
+#[CoversClass(IdNormalizer::class)]
final class IdNormalizerTest extends TestCase
{
- /**
- * @test
- *
- * @covers ::normalize
- * @covers ::denormalize
- */
+ #[Test]
public function id_normalization_and_denormalization_works(): void
{
// -- Arrange
@@ -31,11 +28,7 @@ public function id_normalization_and_denormalization_works(): void
self::assertEquals($userId, $denormalizedData);
}
- /**
- * @test
- *
- * @covers ::denormalize
- */
+ #[Test]
public function id_denormalization_with_null_works(): void
{
// -- Arrange
@@ -48,11 +41,7 @@ public function id_denormalization_with_null_works(): void
self::assertNull($denormalizedData);
}
- /**
- * @test
- *
- * @covers ::supportsNormalization
- */
+ #[Test]
public function supports_normalization(): void
{
// -- Arrange
@@ -64,11 +53,7 @@ public function supports_normalization(): void
self::assertTrue($normalizer->supportsNormalization($userId));
}
- /**
- * @test
- *
- * @covers ::supportsNormalization
- */
+ #[Test]
public function supports_normalization_fails_with_invalid_data(): void
{
// -- Arrange
@@ -80,11 +65,7 @@ public function supports_normalization_fails_with_invalid_data(): void
self::assertFalse($normalizer->supportsNormalization($userId));
}
- /**
- * @test
- *
- * @covers ::supportsDenormalization
- */
+ #[Test]
public function supports_denormalization(): void
{
// -- Arrange
diff --git a/tests/ValueObject/IdListTest.php b/tests/ValueObject/IdListTest.php
index 3175fae..98a2541 100644
--- a/tests/ValueObject/IdListTest.php
+++ b/tests/ValueObject/IdListTest.php
@@ -17,18 +17,17 @@
use DigitalCraftsman\Ids\Test\ValueObject\ProjectId;
use DigitalCraftsman\Ids\Test\ValueObject\UserId;
use DigitalCraftsman\Ids\Test\ValueObject\UserIdList;
+use PHPUnit\Framework\Attributes\CoversClass;
+use PHPUnit\Framework\Attributes\DoesNotPerformAssertions;
+use PHPUnit\Framework\Attributes\Test;
use PHPUnit\Framework\TestCase;
-/** @coversDefaultClass \DigitalCraftsman\Ids\ValueObject\IdList */
+#[CoversClass(IdList::class)]
final class IdListTest extends TestCase
{
// -- Construct
- /**
- * @test
- *
- * @covers ::__construct
- */
+ #[Test]
public function id_list_construction_works(): void
{
// -- Arrange & Act
@@ -42,11 +41,7 @@ public function id_list_construction_works(): void
self::assertCount(3, $idList->ids);
}
- /**
- * @test
- *
- * @covers ::__construct
- */
+ #[Test]
public function id_list_construction_works_with_index_that_is_not_a_list(): void
{
// -- Arrange & Act
@@ -60,12 +55,7 @@ public function id_list_construction_works_with_index_that_is_not_a_list(): void
self::assertCount(3, $idList->ids);
}
- /**
- * @test
- *
- * @covers ::__construct
- * @covers ::mustOnlyContainIdsOfHandledClass
- */
+ #[Test]
public function id_list_construction_fails_with_ids_of_different_id_class(): void
{
// -- Assert
@@ -85,11 +75,7 @@ public function id_list_construction_fails_with_ids_of_different_id_class(): voi
]);
}
- /**
- * @test
- *
- * @covers ::fromIds
- */
+ #[Test]
public function id_list_construction_from_ids_works(): void
{
// -- Arrange
@@ -106,11 +92,7 @@ public function id_list_construction_from_ids_works(): void
self::assertCount(3, $userIdList);
}
- /**
- * @test
- *
- * @covers ::fromIdStrings
- */
+ #[Test]
public function id_list_construction_from_id_strings_works(): void
{
// -- Arrange
@@ -127,11 +109,7 @@ public function id_list_construction_from_id_strings_works(): void
self::assertCount(3, $userIdList);
}
- /**
- * @test
- *
- * @covers ::fromMap
- */
+ #[Test]
public function id_list_construction_from_map_works(): void
{
// -- Arrange
@@ -164,11 +142,7 @@ public function id_list_construction_from_map_works(): void
self::assertTrue($userIdList->containsId(UserId::fromString($users[2]['id'])));
}
- /**
- * @test
- *
- * @covers ::emptyList
- */
+ #[Test]
public function empty_list_works(): void
{
// -- Arrange
@@ -180,11 +154,7 @@ public function empty_list_works(): void
// -- Merge
- /**
- * @test
- *
- * @covers ::fromIdLists
- */
+ #[Test]
public function from_id_lists_works(): void
{
// -- Arrange
@@ -210,11 +180,7 @@ public function from_id_lists_works(): void
self::assertCount(6, $mergedIdList);
}
- /**
- * @test
- *
- * @covers ::fromIdLists
- */
+ #[Test]
public function from_id_lists_with_duplicates_works(): void
{
// -- Arrange
@@ -242,11 +208,7 @@ public function from_id_lists_with_duplicates_works(): void
// -- Add id
- /**
- * @test
- *
- * @covers ::addId
- */
+ #[Test]
public function add_id_works(): void
{
// -- Arrange
@@ -267,11 +229,7 @@ public function add_id_works(): void
self::assertTrue($addedList->containsId($newId));
}
- /**
- * @test
- *
- * @covers ::addId
- */
+ #[Test]
public function add_id_fails_with_duplicate_id(): void
{
// -- Assert
@@ -288,11 +246,7 @@ public function add_id_fails_with_duplicate_id(): void
$idList->addId($existingUserId);
}
- /**
- * @test
- *
- * @covers ::addIdWhenNotInList
- */
+ #[Test]
public function add_id_when_not_in_list_works(): void
{
// -- Arrange
@@ -320,11 +274,7 @@ public function add_id_when_not_in_list_works(): void
// -- Add ids
- /**
- * @test
- *
- * @covers ::addIds
- */
+ #[Test]
public function add_ids_works(): void
{
// -- Arrange
@@ -348,11 +298,7 @@ public function add_ids_works(): void
self::assertTrue($addedList->containsEveryId($newIds));
}
- /**
- * @test
- *
- * @covers ::addIds
- */
+ #[Test]
public function add_ids_fails_with_duplicate_id(): void
{
// -- Assert
@@ -375,11 +321,7 @@ public function add_ids_fails_with_duplicate_id(): void
$idList->addIds($newIds);
}
- /**
- * @test
- *
- * @covers ::addIdsWhenNotInList
- */
+ #[Test]
public function add_ids_when_not_in_list_works(): void
{
// -- Arrange
@@ -409,11 +351,7 @@ public function add_ids_when_not_in_list_works(): void
// -- Remove id
- /**
- * @test
- *
- * @covers ::removeId
- */
+ #[Test]
public function remove_id_works(): void
{
// -- Arrange
@@ -435,11 +373,7 @@ public function remove_id_works(): void
self::assertTrue($removedList->notContainsId($idToRemove));
}
- /**
- * @test
- *
- * @covers ::removeId
- */
+ #[Test]
public function remove_id_fails_when_id_is_not_in_list(): void
{
// -- Assert
@@ -459,11 +393,7 @@ public function remove_id_fails_when_id_is_not_in_list(): void
// Remove ids
- /**
- * @test
- *
- * @covers ::removeIds
- */
+ #[Test]
public function remove_ids_works(): void
{
// -- Arrange
@@ -493,11 +423,7 @@ public function remove_ids_works(): void
self::assertTrue($removedList->notContainsId($idToRemove2));
}
- /**
- * @test
- *
- * @covers ::removeIds
- */
+ #[Test]
public function remove_ids_fails_when_id_is_not_in_list(): void
{
// -- Assert
@@ -522,11 +448,7 @@ public function remove_ids_fails_when_id_is_not_in_list(): void
$idList->removeIds($idsToRemove);
}
- /**
- * @test
- *
- * @covers ::removeIdsWhenInList
- */
+ #[Test]
public function remove_ids_when_in_list_works(): void
{
// -- Arrange
@@ -558,11 +480,7 @@ public function remove_ids_when_in_list_works(): void
self::assertTrue($removedList->notContainsId($idToRemove2));
}
- /**
- * @test
- *
- * @covers ::removeIdWhenInList
- */
+ #[Test]
public function remove_id_when_in_list_works(): void
{
// -- Arrange
@@ -589,11 +507,7 @@ public function remove_id_when_in_list_works(): void
// -- Diff
- /**
- * @test
- *
- * @covers ::diff
- */
+ #[Test]
public function id_list_diff_works(): void
{
// -- Arrange
@@ -626,11 +540,7 @@ public function id_list_diff_works(): void
self::assertTrue($diffListFromOriginalList->containsId($idTom));
}
- /**
- * @test
- *
- * @covers ::diff
- */
+ #[Test]
public function id_list_diff_works_with_empty_list(): void
{
// -- Arrange
@@ -659,11 +569,7 @@ public function id_list_diff_works_with_empty_list(): void
// -- Intersect
- /**
- * @test
- *
- * @covers ::intersect
- */
+ #[Test]
public function id_list_intersect_works(): void
{
// -- Arrange
@@ -696,14 +602,8 @@ public function id_list_intersect_works(): void
// -- Must and must not contain
- /**
- * @test
- *
- * @covers ::mustContainId
- * @covers ::mustNotContainId
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function id_list_must_and_must_not_contains_works(): void
{
// -- Arrange
@@ -729,11 +629,7 @@ public function id_list_must_and_must_not_contains_works(): void
$partialList->mustNotContainId($idMarkus);
}
- /**
- * @test
- *
- * @covers ::mustContainId
- */
+ #[Test]
public function id_list_must_contain_throws_exception(): void
{
// -- Assert
@@ -753,11 +649,7 @@ public function id_list_must_contain_throws_exception(): void
$partialList->mustContainId($idMarkus);
}
- /**
- * @test
- *
- * @covers ::mustContainId
- */
+ #[Test]
public function id_list_must_contain_throws_custom_exception(): void
{
// -- Assert
@@ -780,11 +672,7 @@ public function id_list_must_contain_throws_custom_exception(): void
);
}
- /**
- * @test
- *
- * @covers ::mustNotContainId
- */
+ #[Test]
public function id_list_must_not_contain_throws_exception(): void
{
// -- Assert
@@ -803,11 +691,7 @@ public function id_list_must_not_contain_throws_exception(): void
$partialList->mustNotContainId($idAnton);
}
- /**
- * @test
- *
- * @covers ::mustNotContainId
- */
+ #[Test]
public function id_list_must_not_contain_throws_custom_exception(): void
{
// -- Assert
@@ -829,11 +713,7 @@ public function id_list_must_not_contain_throws_custom_exception(): void
);
}
- /**
- * @test
- *
- * @covers ::mustContainEveryId
- */
+ #[Test]
public function id_list_must_contain_every_id(): void
{
// -- Assert
@@ -856,11 +736,7 @@ public function id_list_must_contain_every_id(): void
$partialList->mustContainEveryId($fullList);
}
- /**
- * @test
- *
- * @covers ::mustContainEveryId
- */
+ #[Test]
public function id_list_must_contain_every_id_throws_custom_exception(): void
{
// -- Assert
@@ -886,13 +762,8 @@ public function id_list_must_contain_every_id_throws_custom_exception(): void
);
}
- /**
- * @test
- *
- * @covers ::mustContainEveryId
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function id_list_must_contain_every_id_when_every_id_is_present(): void
{
// -- Arrange
@@ -912,11 +783,7 @@ public function id_list_must_contain_every_id_when_every_id_is_present(): void
$fullList->mustContainEveryId($partialList);
}
- /**
- * @test
- *
- * @covers ::mustNotContainEveryId
- */
+ #[Test]
public function id_list_must_not_contain_every_id(): void
{
// -- Assert
@@ -939,11 +806,7 @@ public function id_list_must_not_contain_every_id(): void
$fullList->mustNotContainEveryId($partialList);
}
- /**
- * @test
- *
- * @covers ::mustNotContainEveryId
- */
+ #[Test]
public function id_list_must_not_contain_every_id_throws_custom_exception(): void
{
// -- Assert
@@ -969,13 +832,8 @@ public function id_list_must_not_contain_every_id_throws_custom_exception(): voi
);
}
- /**
- * @test
- *
- * @covers ::mustNotContainEveryId
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function id_list_must_not_contain_every_id_when_every_id_is_present(): void
{
// -- Arrange
@@ -995,11 +853,7 @@ public function id_list_must_not_contain_every_id_when_every_id_is_present(): vo
$partialList->mustNotContainEveryId($fullList);
}
- /**
- * @test
- *
- * @covers ::mustContainSomeIds
- */
+ #[Test]
public function id_list_must_contain_some_ids(): void
{
// -- Assert
@@ -1024,11 +878,7 @@ public function id_list_must_contain_some_ids(): void
$almostFullList->mustContainSomeIds($idListWithDifferentId);
}
- /**
- * @test
- *
- * @covers ::mustContainSomeIds
- */
+ #[Test]
public function id_list_must_contain_some_ids_throws_custom_exception(): void
{
// -- Assert
@@ -1056,13 +906,8 @@ public function id_list_must_contain_some_ids_throws_custom_exception(): void
);
}
- /**
- * @test
- *
- * @covers ::mustContainSomeIds
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function id_list_must_contain_some_ids_when_one_id_is_available(): void
{
// -- Arrange
@@ -1085,11 +930,7 @@ public function id_list_must_contain_some_ids_when_one_id_is_available(): void
$almostFullList->mustContainSomeIds($idListWithDifferentId);
}
- /**
- * @test
- *
- * @covers ::mustContainNoneIds
- */
+ #[Test]
public function id_list_must_contain_none_ids(): void
{
// -- Assert
@@ -1115,11 +956,7 @@ public function id_list_must_contain_none_ids(): void
$idListWithPartialMatchingIds->mustContainNoneIds($almostFullList);
}
- /**
- * @test
- *
- * @covers ::mustContainNoneIds
- */
+ #[Test]
public function id_list_must_contain_none_ids_throws_custom_exception(): void
{
// -- Assert
@@ -1148,13 +985,8 @@ public function id_list_must_contain_none_ids_throws_custom_exception(): void
);
}
- /**
- * @test
- *
- * @covers ::mustContainNoneIds
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function id_list_must_contain_none_ids_when_no_id_is_available(): void
{
// -- Arrange
@@ -1178,13 +1010,8 @@ public function id_list_must_contain_none_ids_when_no_id_is_available(): void
// -- Must be empty
- /**
- * @test
- *
- * @covers ::mustBeEmpty
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function id_list_must_be_empty_works(): void
{
// -- Arrange
@@ -1194,11 +1021,7 @@ public function id_list_must_be_empty_works(): void
$emptyList->mustBeEmpty();
}
- /**
- * @test
- *
- * @covers ::mustBeEmpty
- */
+ #[Test]
public function id_list_must_be_empty_throws_exception_when_not_empty(): void
{
// -- Assert
@@ -1213,11 +1036,7 @@ public function id_list_must_be_empty_throws_exception_when_not_empty(): void
$notEmptyList->mustBeEmpty();
}
- /**
- * @test
- *
- * @covers ::mustBeEmpty
- */
+ #[Test]
public function id_list_must_be_empty_throws_custom_exception_when_not_empty(): void
{
// -- Assert
@@ -1236,13 +1055,8 @@ public function id_list_must_be_empty_throws_custom_exception_when_not_empty():
// -- Must not be empty
- /**
- * @test
- *
- * @covers ::mustNotBeEmpty
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function id_list_must_not_be_empty_works(): void
{
// -- Arrange
@@ -1254,11 +1068,7 @@ public function id_list_must_not_be_empty_works(): void
$notEmptyList->mustNotBeEmpty();
}
- /**
- * @test
- *
- * @covers ::mustNotBeEmpty
- */
+ #[Test]
public function id_list_must_not_be_empty_throws_exception_when_empty(): void
{
// -- Assert
@@ -1271,11 +1081,7 @@ public function id_list_must_not_be_empty_throws_exception_when_empty(): void
$emptyList->mustNotBeEmpty();
}
- /**
- * @test
- *
- * @covers ::mustNotBeEmpty
- */
+ #[Test]
public function id_list_must_not_be_empty_throws_custom_exception_when_empty(): void
{
// -- Assert
@@ -1292,12 +1098,7 @@ public function id_list_must_not_be_empty_throws_custom_exception_when_empty():
// -- Empty
- /**
- * @test
- *
- * @covers ::isEmpty
- * @covers ::isNotEmpty
- */
+ #[Test]
public function id_list_is_empty_works(): void
{
// -- Arrange
@@ -1316,11 +1117,7 @@ public function id_list_is_empty_works(): void
// -- Map
- /**
- * @test
- *
- * @covers ::map
- */
+ #[Test]
public function id_list_map_works(): void
{
// -- Arrange
@@ -1353,13 +1150,44 @@ public function id_list_map_works(): void
self::assertSame($expectedArray, $stringArray);
}
+ // -- Map with id keys
+
+ #[Test]
+ public function id_list_map_with_id_keys_works(): void
+ {
+ // -- Arrange
+ $idAnton = UserId::generateRandom();
+ $idMarkus = UserId::generateRandom();
+ $idPaul = UserId::generateRandom();
+ $idTom = UserId::generateRandom();
+
+ $listWithAllIds = UserIdList::fromIds([
+ $idAnton,
+ $idMarkus,
+ $idPaul,
+ $idTom,
+ ]);
+
+ $expectedArray = [
+ (string) $idAnton => (string) $idAnton,
+ (string) $idMarkus => (string) $idMarkus,
+ (string) $idPaul => (string) $idPaul,
+ (string) $idTom => (string) $idTom,
+ ];
+
+ // -- Act
+ /** @var array $stringArray */
+ $stringArray = $listWithAllIds->mapWithIdKeys(
+ static fn (UserId $userId) => (string) $userId,
+ );
+
+ // -- Assert
+ self::assertSame($expectedArray, $stringArray);
+ }
+
// -- Filter
- /**
- * @test
- *
- * @covers ::filter
- */
+ #[Test]
public function id_list_filter_works(): void
{
// -- Arrange
@@ -1396,11 +1224,7 @@ public function id_list_filter_works(): void
// -- Every
- /**
- * @test
- *
- * @covers ::every
- */
+ #[Test]
public function id_list_every_works(): void
{
// -- Arrange
@@ -1444,11 +1268,7 @@ public function id_list_every_works(): void
// -- Some
- /**
- * @test
- *
- * @covers ::some
- */
+ #[Test]
public function id_list_some_works(): void
{
// -- Arrange
@@ -1493,11 +1313,7 @@ public function id_list_some_works(): void
// -- Reduce
- /**
- * @test
- *
- * @covers ::reduce
- */
+ #[Test]
public function id_list_reduce_works(): void
{
// -- Arrange
@@ -1532,12 +1348,7 @@ public function id_list_reduce_works(): void
// -- Contains
- /**
- * @test
- *
- * @covers ::containsId
- * @covers ::notContainsId
- */
+ #[Test]
public function id_list_contains_and_not_contains_works(): void
{
// -- Arrange
@@ -1569,11 +1380,7 @@ public function id_list_contains_and_not_contains_works(): void
// -- Contains every id
- /**
- * @test
- *
- * @covers ::containsEveryId
- */
+ #[Test]
public function id_list_contains_every_id_works(): void
{
// -- Arrange
@@ -1611,11 +1418,7 @@ public function id_list_contains_every_id_works(): void
self::assertFalse($partialList->containsEveryId($listWithDifferentId));
}
- /**
- * @test
- *
- * @covers ::notContainsEveryId
- */
+ #[Test]
public function id_list_not_contains_every_id_works(): void
{
// -- Arrange
@@ -1655,11 +1458,7 @@ public function id_list_not_contains_every_id_works(): void
// -- Contains some ids
- /**
- * @test
- *
- * @covers ::containsSomeIds
- */
+ #[Test]
public function id_list_contains_some_ids_works(): void
{
// -- Arrange
@@ -1704,11 +1503,7 @@ public function id_list_contains_some_ids_works(): void
self::assertFalse($partialList->containsSomeIds($listWithOnlyDifferentIds));
}
- /**
- * @test
- *
- * @covers ::containsNoneIds
- */
+ #[Test]
public function id_list_contains_none_ids_works(): void
{
// -- Arrange
@@ -1755,12 +1550,7 @@ public function id_list_contains_none_ids_works(): void
// -- Is equal and not equal
- /**
- * @test
- *
- * @covers ::isEqualTo
- * @covers ::isNotEqualTo
- */
+ #[Test]
public function id_list_is_equal_to(): void
{
// -- Arrange
@@ -1806,12 +1596,7 @@ public function id_list_is_equal_to(): void
self::assertFalse($originalList->isNotEqualTo($copyOfOriginalList));
}
- /**
- * @test
- *
- * @covers ::isEqualTo
- * @covers ::isNotEqualTo
- */
+ #[Test]
public function empty_id_list_is_not_equal_to(): void
{
// -- Arrange
@@ -1830,12 +1615,7 @@ public function empty_id_list_is_not_equal_to(): void
$this->assertTrue($emptyIdList->isNotEqualTo($userIdList));
}
- /**
- * @test
- *
- * @covers ::isEqualTo
- * @covers ::isNotEqualTo
- */
+ #[Test]
public function id_list_is_not_equal_to_empty_id_list(): void
{
// -- Arrange
@@ -1854,11 +1634,7 @@ public function id_list_is_not_equal_to_empty_id_list(): void
$this->assertTrue($userIdList->isNotEqualTo($emptyIdList));
}
- /**
- * @test
- *
- * @covers ::mustBeEqualTo
- */
+ #[Test]
public function must_be_equal_to(): void
{
// -- Assert
@@ -1886,11 +1662,7 @@ public function must_be_equal_to(): void
$originalList->mustBeEqualTo($partialList);
}
- /**
- * @test
- *
- * @covers ::mustBeEqualTo
- */
+ #[Test]
public function must_be_equal_to_throws_custom_exception(): void
{
// -- Assert
@@ -1921,11 +1693,7 @@ public function must_be_equal_to_throws_custom_exception(): void
);
}
- /**
- * @test
- *
- * @covers ::mustNotBeEqualTo
- */
+ #[Test]
public function must_not_be_equal_to(): void
{
// -- Assert
@@ -1955,11 +1723,7 @@ public function must_not_be_equal_to(): void
$originalList->mustNotBeEqualTo($sameListInDifferentOrder);
}
- /**
- * @test
- *
- * @covers ::mustNotBeEqualTo
- */
+ #[Test]
public function must_not_be_equal_to_throws_custom_exception(): void
{
// -- Assert
@@ -1994,11 +1758,7 @@ public function must_not_be_equal_to_throws_custom_exception(): void
// -- Count
- /**
- * @test
- *
- * @covers ::count
- */
+ #[Test]
public function id_list_count_works(): void
{
// -- Arrange
@@ -2014,11 +1774,7 @@ public function id_list_count_works(): void
// -- Iteration
- /**
- * @test
- *
- * @covers ::getIterator
- */
+ #[Test]
public function id_list_iteration_works(): void
{
// -- Arrange
@@ -2062,11 +1818,7 @@ public function id_list_iteration_works(): void
self::assertEquals($duplicatedIdList, $idList);
}
- /**
- * @test
- *
- * @covers ::getIterator
- */
+ #[Test]
public function id_list_works_with_gaps_in_input_list(): void
{
// -- Arrange
@@ -2099,11 +1851,7 @@ public function id_list_works_with_gaps_in_input_list(): void
// -- Ids as string
- /**
- * @test
- *
- * @covers ::idsAsStringList
- */
+ #[Test]
public function id_list_as_string_works(): void
{
// -- Arrange
diff --git a/tests/ValueObject/IdTest.php b/tests/ValueObject/IdTest.php
index 97ec9d2..3fe8d38 100644
--- a/tests/ValueObject/IdTest.php
+++ b/tests/ValueObject/IdTest.php
@@ -7,19 +7,16 @@
use DigitalCraftsman\Ids\Test\Exception\NotTheSameUser;
use DigitalCraftsman\Ids\Test\Exception\SameUser;
use DigitalCraftsman\Ids\Test\ValueObject\UserId;
+use PHPUnit\Framework\Attributes\CoversClass;
+use PHPUnit\Framework\Attributes\DoesNotPerformAssertions;
+use PHPUnit\Framework\Attributes\Test;
use PHPUnit\Framework\TestCase;
-/** @coversDefaultClass \DigitalCraftsman\Ids\ValueObject\Id */
+#[CoversClass(Id::class)]
final class IdTest extends TestCase
{
- /**
- * @test
- *
- * @covers ::__construct
- * @covers ::fromString
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function construction_works(): void
{
// -- Act
@@ -28,11 +25,7 @@ public function construction_works(): void
UserId::generateRandom();
}
- /**
- * @test
- *
- * @covers ::__construct
- */
+ #[Test]
public function construction_with_invalid_id_fails(): void
{
// -- Assert
@@ -42,11 +35,7 @@ public function construction_with_invalid_id_fails(): void
new UserId('test');
}
- /**
- * @test
- *
- * @covers ::isEqualTo
- */
+ #[Test]
public function user_id_is_equal(): void
{
// -- Arrange
@@ -57,11 +46,7 @@ public function user_id_is_equal(): void
self::assertTrue($userId1->isEqualTo($userId2));
}
- /**
- * @test
- *
- * @covers ::isNotEqualTo
- */
+ #[Test]
public function user_id_is_not_equal(): void
{
// -- Arrange
@@ -72,13 +57,8 @@ public function user_id_is_not_equal(): void
self::assertTrue($userId1->isNotEqualTo($userId2));
}
- /**
- * @test
- *
- * @covers ::mustBeEqualTo
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function user_id_must_be_equal(): void
{
// -- Arrange
@@ -89,13 +69,8 @@ public function user_id_must_be_equal(): void
$userId1->mustBeEqualTo($userId2);
}
- /**
- * @test
- *
- * @covers ::mustNotBeEqualTo
- *
- * @doesNotPerformAssertions
- */
+ #[Test]
+ #[DoesNotPerformAssertions]
public function user_id_must_not_be_equal(): void
{
// -- Arrange
@@ -106,11 +81,7 @@ public function user_id_must_not_be_equal(): void
$userId1->mustNotBeEqualTo($userId2);
}
- /**
- * @test
- *
- * @covers ::mustBeEqualTo
- */
+ #[Test]
public function user_id_must_be_equal_fails(): void
{
// -- Assert
@@ -124,11 +95,7 @@ public function user_id_must_be_equal_fails(): void
$userId1->mustBeEqualTo($userId2);
}
- /**
- * @test
- *
- * @covers ::mustBeEqualTo
- */
+ #[Test]
public function user_id_must_be_equal_fails_with_custom_exception(): void
{
// -- Assert
@@ -145,11 +112,7 @@ public function user_id_must_be_equal_fails_with_custom_exception(): void
);
}
- /**
- * @test
- *
- * @covers ::mustNotBeEqualTo
- */
+ #[Test]
public function user_id_must_not_be_equal_fails(): void
{
// -- Assert
@@ -163,11 +126,7 @@ public function user_id_must_not_be_equal_fails(): void
$userId1->mustNotBeEqualTo($userId2);
}
- /**
- * @test
- *
- * @covers ::mustNotBeEqualTo
- */
+ #[Test]
public function user_id_must_not_be_equal_fails_with_custom_exception(): void
{
// -- Assert