From 1ab062c540077635df8d7487134590d02b4191c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20B=C3=B6sing?= <2189546+boesing@users.noreply.github.com> Date: Tue, 14 Sep 2021 23:29:52 +0200 Subject: [PATCH 01/12] feature: support for PHP 8.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- composer.json | 6 +-- composer.lock | 49 +++++++++---------- src/SaveHandler/Cache.php | 6 +++ src/SaveHandler/DbTableGateway.php | 6 +++ src/SaveHandler/MongoDB.php | 6 +++ src/Storage/AbstractSessionArrayStorage.php | 15 ++++++ src/Storage/ArrayStorage.php | 1 + test/SaveHandler/DbTableGatewayTest.php | 5 ++ test/SessionManagerTest.php | 14 +++--- .../Php81CompatibleStorageInterface.php | 12 +++++ test/TestAsset/TestSaveHandler.php | 14 ++++-- .../TestSaveHandlerWithValidator.php | 10 ++-- 12 files changed, 102 insertions(+), 42 deletions(-) create mode 100644 test/TestAsset/Php81CompatibleStorageInterface.php diff --git a/composer.json b/composer.json index ad69ee8e..a754311b 100644 --- a/composer.json +++ b/composer.json @@ -25,9 +25,9 @@ } }, "require": { - "php": "^7.3 || ~8.0.0", - "laminas/laminas-eventmanager": "^3.0", - "laminas/laminas-stdlib": "^3.2.1", + "php": "^7.3 || ~8.0.0 || ~8.1.0", + "laminas/laminas-eventmanager": "^3.4", + "laminas/laminas-stdlib": "^3.6", "laminas/laminas-zendframework-bridge": "^1.0" }, "require-dev": { diff --git a/composer.lock b/composer.lock index aed3bcf9..56e9d803 100644 --- a/composer.lock +++ b/composer.lock @@ -4,35 +4,35 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "9c4ddaac7dfe013479fac3b33c008fbd", + "content-hash": "4b4ef305147b6c8fbf87a4ec369d0467", "packages": [ { "name": "laminas/laminas-eventmanager", - "version": "3.3.1", + "version": "3.4.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-eventmanager.git", - "reference": "966c859b67867b179fde1eff0cd38df51472ce4a" + "reference": "a93fd278c97b2d41ebbce5ba048a24e3e6f580ba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-eventmanager/zipball/966c859b67867b179fde1eff0cd38df51472ce4a", - "reference": "966c859b67867b179fde1eff0cd38df51472ce4a", + "url": "https://api.github.com/repos/laminas/laminas-eventmanager/zipball/a93fd278c97b2d41ebbce5ba048a24e3e6f580ba", + "reference": "a93fd278c97b2d41ebbce5ba048a24e3e6f580ba", "shasum": "" }, "require": { - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ^8.0" + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, - "replace": { - "zendframework/zend-eventmanager": "^3.2.1" + "conflict": { + "zendframework/zend-eventmanager": "*" }, "require-dev": { "container-interop/container-interop": "^1.1", - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-stdlib": "^2.7.3 || ^3.0", - "phpbench/phpbench": "^0.17.1", - "phpunit/phpunit": "^8.5.8" + "laminas/laminas-coding-standard": "~2.2.1", + "laminas/laminas-stdlib": "^3.6", + "phpbench/phpbench": "^1.1", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.5.5" }, "suggest": { "container-interop/container-interop": "^1.1, to use the lazy listeners feature", @@ -70,28 +70,27 @@ "type": "community_bridge" } ], - "time": "2021-03-08T15:24:29+00:00" + "time": "2021-09-07T22:35:32+00:00" }, { "name": "laminas/laminas-stdlib", - "version": "3.4.0", + "version": "3.6.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-stdlib.git", - "reference": "e89c2268c9cad25099f562f7f015c28c5dd383c9" + "reference": "c53d8537f108fac3fae652677a19735db730ba46" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-stdlib/zipball/e89c2268c9cad25099f562f7f015c28c5dd383c9", - "reference": "e89c2268c9cad25099f562f7f015c28c5dd383c9", + "url": "https://api.github.com/repos/laminas/laminas-stdlib/zipball/c53d8537f108fac3fae652677a19735db730ba46", + "reference": "c53d8537f108fac3fae652677a19735db730ba46", "shasum": "" }, "require": { - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ^8.0" + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, - "replace": { - "zendframework/zend-stdlib": "^3.2.1" + "conflict": { + "zendframework/zend-stdlib": "*" }, "require-dev": { "laminas/laminas-coding-standard": "~2.3.0", @@ -130,7 +129,7 @@ "type": "community_bridge" } ], - "time": "2021-06-28T21:37:31+00:00" + "time": "2021-09-02T16:11:32+00:00" }, { "name": "laminas/laminas-zendframework-bridge", @@ -4876,8 +4875,8 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": "^7.3 || ~8.0.0" + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, "platform-dev": [], - "plugin-api-version": "2.0.0" + "plugin-api-version": "2.1.0" } diff --git a/src/SaveHandler/Cache.php b/src/SaveHandler/Cache.php index 44e756e5..192070ed 100644 --- a/src/SaveHandler/Cache.php +++ b/src/SaveHandler/Cache.php @@ -46,6 +46,7 @@ public function __construct(CacheStorage $cacheStorage) * @param string $name * @return bool */ + #[\ReturnTypeWillChange] public function open($savePath, $name) { // @todo figure out if we want to use these @@ -60,6 +61,7 @@ public function open($savePath, $name) * * @return bool */ + #[\ReturnTypeWillChange] public function close() { return true; @@ -71,6 +73,7 @@ public function close() * @param string $id * @return string */ + #[\ReturnTypeWillChange] public function read($id) { return (string) $this->getCacheStorage()->getItem($id); @@ -83,6 +86,7 @@ public function read($id) * @param string $data * @return bool */ + #[\ReturnTypeWillChange] public function write($id, $data) { return $this->getCacheStorage()->setItem($id, $data); @@ -94,6 +98,7 @@ public function write($id, $data) * @param string $id * @return bool */ + #[\ReturnTypeWillChange] public function destroy($id) { $this->getCacheStorage()->getItem($id, $exists); @@ -110,6 +115,7 @@ public function destroy($id) * @param int $maxlifetime * @return bool */ + #[\ReturnTypeWillChange] public function gc($maxlifetime) { $cache = $this->getCacheStorage(); diff --git a/src/SaveHandler/DbTableGateway.php b/src/SaveHandler/DbTableGateway.php index cc01992b..568f9586 100644 --- a/src/SaveHandler/DbTableGateway.php +++ b/src/SaveHandler/DbTableGateway.php @@ -64,6 +64,7 @@ public function __construct(TableGateway $tableGateway, DbTableGatewayOptions $o * @param string $name * @return bool */ + #[\ReturnTypeWillChange] public function open($savePath, $name) { $this->sessionSavePath = $savePath; @@ -78,6 +79,7 @@ public function open($savePath, $name) * * @return bool */ + #[\ReturnTypeWillChange] public function close() { return true; @@ -90,6 +92,7 @@ public function close() * @param bool $destroyExpired Optional; true by default * @return string */ + #[\ReturnTypeWillChange] public function read($id, $destroyExpired = true) { $row = $this->tableGateway->select([ @@ -118,6 +121,7 @@ public function read($id, $destroyExpired = true) * @param string $data * @return bool */ + #[\ReturnTypeWillChange] public function write($id, $data) { $data = [ @@ -149,6 +153,7 @@ public function write($id, $data) * @param string $id * @return bool */ + #[\ReturnTypeWillChange] public function destroy($id) { $this->tableGateway->delete([ @@ -165,6 +170,7 @@ public function destroy($id) * @param int $maxlifetime * @return true */ + #[\ReturnTypeWillChange] public function gc($maxlifetime) { $platform = $this->tableGateway->getAdapter()->getPlatform(); diff --git a/src/SaveHandler/MongoDB.php b/src/SaveHandler/MongoDB.php index 0dc52a48..c9662dfb 100644 --- a/src/SaveHandler/MongoDB.php +++ b/src/SaveHandler/MongoDB.php @@ -81,6 +81,7 @@ public function __construct($mongoClient, MongoDBOptions $options) * @param string $name * @return bool */ + #[\ReturnTypeWillChange] public function open($savePath, $name) { // Note: session save path is not used @@ -105,6 +106,7 @@ public function open($savePath, $name) * * @return bool */ + #[\ReturnTypeWillChange] public function close() { return true; @@ -116,6 +118,7 @@ public function close() * @param string $id * @return string */ + #[\ReturnTypeWillChange] public function read($id) { $session = $this->mongoCollection->findOne([ @@ -148,6 +151,7 @@ public function read($id) * @param string $data * @return bool */ + #[\ReturnTypeWillChange] public function write($id, $data) { $saveOptions = array_replace( @@ -185,6 +189,7 @@ public function write($id, $data) * @param string $id * @return bool */ + #[\ReturnTypeWillChange] public function destroy($id) { $result = $this->mongoCollection->deleteOne( @@ -212,6 +217,7 @@ public function destroy($id) * @param int $maxlifetime * @return bool */ + #[\ReturnTypeWillChange] public function gc($maxlifetime) { /* Note: unlike DbTableGateway, we do not use the lifetime field in diff --git a/src/Storage/AbstractSessionArrayStorage.php b/src/Storage/AbstractSessionArrayStorage.php index 3fa87963..54dc425c 100644 --- a/src/Storage/AbstractSessionArrayStorage.php +++ b/src/Storage/AbstractSessionArrayStorage.php @@ -121,6 +121,7 @@ public function __destruct() * @param mixed $key * @return bool */ + #[\ReturnTypeWillChange] public function offsetExists($key) { return isset($_SESSION[$key]); @@ -132,6 +133,7 @@ public function offsetExists($key) * @param mixed $key * @return mixed */ + #[\ReturnTypeWillChange] public function offsetGet($key) { if (isset($_SESSION[$key])) { @@ -148,6 +150,7 @@ public function offsetGet($key) * @param mixed $value * @return void */ + #[\ReturnTypeWillChange] public function offsetSet($key, $value) { $_SESSION[$key] = $value; @@ -159,6 +162,7 @@ public function offsetSet($key, $value) * @param mixed $key * @return void */ + #[\ReturnTypeWillChange] public function offsetUnset($key) { unset($_SESSION[$key]); @@ -169,6 +173,7 @@ public function offsetUnset($key) * * @return int */ + #[\ReturnTypeWillChange] public function count() { return count($_SESSION); @@ -200,6 +205,7 @@ public function unserialize($session) * * @return ArrayIterator */ + #[\ReturnTypeWillChange] public function getIterator() { return new ArrayIterator($_SESSION); @@ -488,4 +494,13 @@ public function toArray($metaData = false) return $values; } + + public function __serialize(): array + { + return $_SESSION; + } + + public function __unserialize(array $session) + { + } } diff --git a/src/Storage/ArrayStorage.php b/src/Storage/ArrayStorage.php index 9a3376fd..ec853a1d 100644 --- a/src/Storage/ArrayStorage.php +++ b/src/Storage/ArrayStorage.php @@ -87,6 +87,7 @@ public function getRequestAccessTime() * @param mixed $value * @throws Exception\RuntimeException */ + #[\ReturnTypeWillChange] public function offsetSet($key, $value) { if ($this->isImmutable()) { diff --git a/test/SaveHandler/DbTableGatewayTest.php b/test/SaveHandler/DbTableGatewayTest.php index 5a6f67e7..f3590c46 100644 --- a/test/SaveHandler/DbTableGatewayTest.php +++ b/test/SaveHandler/DbTableGatewayTest.php @@ -13,6 +13,7 @@ use function serialize; use function unserialize; use function var_export; +use const PHP_VERSION_ID; /** * Unit testing for DbTableGateway include all tests for @@ -56,6 +57,10 @@ abstract protected function getAdapter(); */ protected function setUp(): void { + if (PHP_VERSION_ID >= 80100) { + self::fail('Waiting for https://github.com/laminas/laminas-db/pull/204'); + } + $this->adapter = $this->getAdapter(); $this->options = new DbTableGatewayOptions( diff --git a/test/SessionManagerTest.php b/test/SessionManagerTest.php index be51e7d0..8e0cbdb9 100644 --- a/test/SessionManagerTest.php +++ b/test/SessionManagerTest.php @@ -12,11 +12,10 @@ use Laminas\Session\Storage\ArrayStorage; use Laminas\Session\Storage\SessionArrayStorage; use Laminas\Session\Storage\SessionStorage; -use Laminas\Session\Storage\StorageInterface; use Laminas\Session\Validator\Id; use Laminas\Session\Validator\RemoteAddr; +use LaminasTest\Session\TestAsset\Php81CompatibleStorageInterface; use PHPUnit\Framework\TestCase; -use Prophecy\PhpUnit\ProphecyTrait; use Traversable; use function array_merge; @@ -44,7 +43,6 @@ */ class SessionManagerTest extends TestCase { - use ProphecyTrait; use ReflectionPropertyTrait; /** @var false|string */ @@ -281,9 +279,13 @@ public function testStartConvertsSessionDataFromStorageInterfaceToArrayBeforeMer $key = 'testData'; $data = [$key => 'test']; - $sessionStorage = $this->prophesize(StorageInterface::class); - $_SESSION = $sessionStorage->reveal(); - $sessionStorage->toArray()->shouldBeCalledTimes(1)->willReturn($data); + $sessionStorage = $this + ->createMock(Php81CompatibleStorageInterface::class); + $_SESSION = $sessionStorage; + $sessionStorage + ->expects(self::once()) + ->method('toArray') + ->willReturn($data); $this->manager->start(); diff --git a/test/TestAsset/Php81CompatibleStorageInterface.php b/test/TestAsset/Php81CompatibleStorageInterface.php new file mode 100644 index 00000000..9b10119d --- /dev/null +++ b/test/TestAsset/Php81CompatibleStorageInterface.php @@ -0,0 +1,12 @@ + Date: Thu, 16 Sep 2021 09:51:56 +0200 Subject: [PATCH 02/12] qa: bump some dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This also removes the zendframework bridge while conflicting with the abandoned zend package Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- composer.json | 19 +++-- composer.lock | 206 ++++++++++++++++++++++++-------------------------- 2 files changed, 109 insertions(+), 116 deletions(-) diff --git a/composer.json b/composer.json index a754311b..1b885548 100644 --- a/composer.json +++ b/composer.json @@ -27,21 +27,20 @@ "require": { "php": "^7.3 || ~8.0.0 || ~8.1.0", "laminas/laminas-eventmanager": "^3.4", - "laminas/laminas-stdlib": "^3.6", - "laminas/laminas-zendframework-bridge": "^1.0" + "laminas/laminas-stdlib": "^3.6" }, "require-dev": { "container-interop/container-interop": "^1.1", "laminas/laminas-cache": "^2.6.1", "laminas/laminas-coding-standard": "~2.2.1", - "laminas/laminas-db": "^2.7", - "laminas/laminas-http": "^2.5.4", - "laminas/laminas-servicemanager": "^3.0.3", - "laminas/laminas-validator": "^2.6", - "mongodb/mongodb": "^1.0.1", + "laminas/laminas-db": "^2.13", + "laminas/laminas-http": "^2.15", + "laminas/laminas-servicemanager": "^3.7", + "laminas/laminas-validator": "^2.15", + "mongodb/mongodb": "^1.9", "php-mock/php-mock-phpunit": "^1.1.2 || ^2.0", "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^9.5.9" }, "suggest": { "laminas/laminas-cache": "Laminas\\Cache component", @@ -71,7 +70,7 @@ "test": "phpunit --colors=always", "test-coverage": "phpunit --colors=always --coverage-clover clover.xml" }, - "replace": { - "zendframework/zend-session": "^2.9.1" + "conflict": { + "zendframework/zend-session": "*" } } diff --git a/composer.lock b/composer.lock index 56e9d803..080a21f5 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": "4b4ef305147b6c8fbf87a4ec369d0467", + "content-hash": "554307a927f83927c92a24d617a2ec1a", "packages": [ { "name": "laminas/laminas-eventmanager", @@ -1585,37 +1585,35 @@ }, { "name": "laminas/laminas-db", - "version": "2.12.0", + "version": "2.13.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-db.git", - "reference": "80cbba4e749f9eb7d8036172acb9ad41e8b6923f" + "reference": "a7acfdb60cf3b6c357029f515184cc4df93e1933" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-db/zipball/80cbba4e749f9eb7d8036172acb9ad41e8b6923f", - "reference": "80cbba4e749f9eb7d8036172acb9ad41e8b6923f", + "url": "https://api.github.com/repos/laminas/laminas-db/zipball/a7acfdb60cf3b6c357029f515184cc4df93e1933", + "reference": "a7acfdb60cf3b6c357029f515184cc4df93e1933", "shasum": "" }, "require": { - "laminas/laminas-stdlib": "^3.3", - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ~8.0.0" + "laminas/laminas-stdlib": "^3.6", + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, - "replace": { - "zendframework/zend-db": "^2.11.0" + "conflict": { + "zendframework/zend-db": "*" }, "require-dev": { - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-eventmanager": "^3.3", - "laminas/laminas-hydrator": "^3.2 || ^4.0", - "laminas/laminas-servicemanager": "^3.3", - "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.3" + "laminas/laminas-coding-standard": "~2.2.1", + "laminas/laminas-eventmanager": "^3.4", + "laminas/laminas-hydrator": "^3.2 || ^4.3", + "laminas/laminas-servicemanager": "^3.7", + "phpunit/phpunit": "^9.5.5" }, "suggest": { "laminas/laminas-eventmanager": "Laminas\\EventManager component", - "laminas/laminas-hydrator": "(^3.2 || ^4.0) Laminas\\Hydrator component for using HydratingResultSets", + "laminas/laminas-hydrator": "(^3.2 || ^4.3) Laminas\\Hydrator component for using HydratingResultSets", "laminas/laminas-servicemanager": "Laminas\\ServiceManager component" }, "type": "library", @@ -1654,28 +1652,27 @@ "type": "community_bridge" } ], - "time": "2021-02-22T22:27:56+00:00" + "time": "2021-09-16T05:17:23+00:00" }, { "name": "laminas/laminas-escaper", - "version": "2.8.0", + "version": "2.9.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-escaper.git", - "reference": "2d6dce99668b413610e9544183fa10392437f542" + "reference": "891ad70986729e20ed2e86355fcf93c9dc238a5f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-escaper/zipball/2d6dce99668b413610e9544183fa10392437f542", - "reference": "2d6dce99668b413610e9544183fa10392437f542", + "url": "https://api.github.com/repos/laminas/laminas-escaper/zipball/891ad70986729e20ed2e86355fcf93c9dc238a5f", + "reference": "891ad70986729e20ed2e86355fcf93c9dc238a5f", "shasum": "" }, "require": { - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ~8.0.0" + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, - "replace": { - "zendframework/zend-escaper": "^2.6.1" + "conflict": { + "zendframework/zend-escaper": "*" }, "require-dev": { "laminas/laminas-coding-standard": "~2.3.0", @@ -1717,37 +1714,35 @@ "type": "community_bridge" } ], - "time": "2021-06-26T14:26:08+00:00" + "time": "2021-09-02T17:10:53+00:00" }, { "name": "laminas/laminas-http", - "version": "2.14.3", + "version": "2.15.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-http.git", - "reference": "bfaab8093e382274efed7fdc3ceb15f09ba352bb" + "reference": "e1f3420ab35e21ea135913d213b8d570e5e7b513" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-http/zipball/bfaab8093e382274efed7fdc3ceb15f09ba352bb", - "reference": "bfaab8093e382274efed7fdc3ceb15f09ba352bb", + "url": "https://api.github.com/repos/laminas/laminas-http/zipball/e1f3420ab35e21ea135913d213b8d570e5e7b513", + "reference": "e1f3420ab35e21ea135913d213b8d570e5e7b513", "shasum": "" }, "require": { - "laminas/laminas-loader": "^2.5.1", - "laminas/laminas-stdlib": "^3.2.1", - "laminas/laminas-uri": "^2.5.2", - "laminas/laminas-validator": "^2.10.1", - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ~8.0.0" + "laminas/laminas-loader": "^2.8", + "laminas/laminas-stdlib": "^3.6", + "laminas/laminas-uri": "^2.9.1", + "laminas/laminas-validator": "^2.15", + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, - "replace": { - "zendframework/zend-http": "^2.11.2" + "conflict": { + "zendframework/zend-http": "*" }, "require-dev": { - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-config": "^3.1 || ^2.6", - "phpunit/phpunit": "^9.3" + "laminas/laminas-coding-standard": "~2.2.1", + "phpunit/phpunit": "^9.5.5" }, "suggest": { "paragonie/certainty": "For automated management of cacert.pem" @@ -1783,31 +1778,30 @@ "type": "community_bridge" } ], - "time": "2021-02-18T21:58:11+00:00" + "time": "2021-09-10T10:45:31+00:00" }, { "name": "laminas/laminas-loader", - "version": "2.7.0", + "version": "2.8.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-loader.git", - "reference": "bcf8a566cb9925a2e7cc41a16db09235ec9fb616" + "reference": "d0589ec9dd48365fd95ad10d1c906efd7711c16b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-loader/zipball/bcf8a566cb9925a2e7cc41a16db09235ec9fb616", - "reference": "bcf8a566cb9925a2e7cc41a16db09235ec9fb616", + "url": "https://api.github.com/repos/laminas/laminas-loader/zipball/d0589ec9dd48365fd95ad10d1c906efd7711c16b", + "reference": "d0589ec9dd48365fd95ad10d1c906efd7711c16b", "shasum": "" }, "require": { - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ~8.0.0" + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, - "replace": { - "zendframework/zend-loader": "^2.6.1" + "conflict": { + "zendframework/zend-loader": "*" }, "require-dev": { - "laminas/laminas-coding-standard": "~1.0.0", + "laminas/laminas-coding-standard": "~2.2.1", "phpunit/phpunit": "^9.3" }, "type": "library", @@ -1840,20 +1834,20 @@ "type": "community_bridge" } ], - "time": "2021-02-12T16:08:18+00:00" + "time": "2021-09-02T18:30:53+00:00" }, { "name": "laminas/laminas-servicemanager", - "version": "3.6.4", + "version": "3.7.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-servicemanager.git", - "reference": "b1445e1a7077c21b0fad0974a1b7a11b9dbe0828" + "reference": "2b0aee477fdbd3191af7c302b93dbc5fda0626f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/b1445e1a7077c21b0fad0974a1b7a11b9dbe0828", - "reference": "b1445e1a7077c21b0fad0974a1b7a11b9dbe0828", + "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/2b0aee477fdbd3191af7c302b93dbc5fda0626f4", + "reference": "2b0aee477fdbd3191af7c302b93dbc5fda0626f4", "shasum": "" }, "require": { @@ -1876,14 +1870,16 @@ }, "require-dev": { "composer/package-versions-deprecated": "^1.0", - "laminas/laminas-coding-standard": "~1.0.0", + "laminas/laminas-coding-standard": "~2.2.0", "laminas/laminas-container-config-test": "^0.3", - "laminas/laminas-dependency-plugin": "^2.1", + "laminas/laminas-dependency-plugin": "^2.1.2", "mikey179/vfsstream": "^1.6.8", "ocramius/proxy-manager": "^2.2.3", - "phpbench/phpbench": "^1.0.0-alpha3", + "phpbench/phpbench": "^1.0.4", "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.4" + "phpunit/phpunit": "^9.4", + "psalm/plugin-phpunit": "^0.16.1", + "vimeo/psalm": "^4.8" }, "suggest": { "ocramius/proxy-manager": "ProxyManager ^2.1.1 to handle lazy initialization of services" @@ -1927,34 +1923,33 @@ "type": "community_bridge" } ], - "time": "2021-02-03T08:44:41+00:00" + "time": "2021-07-24T19:33:07+00:00" }, { "name": "laminas/laminas-uri", - "version": "2.8.1", + "version": "2.9.1", "source": { "type": "git", "url": "https://github.com/laminas/laminas-uri.git", - "reference": "79bd4c614c8cf9a6ba715a49fca8061e84933d87" + "reference": "7e837dc15c8fd3949df7d1213246fd7c8640032b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-uri/zipball/79bd4c614c8cf9a6ba715a49fca8061e84933d87", - "reference": "79bd4c614c8cf9a6ba715a49fca8061e84933d87", + "url": "https://api.github.com/repos/laminas/laminas-uri/zipball/7e837dc15c8fd3949df7d1213246fd7c8640032b", + "reference": "7e837dc15c8fd3949df7d1213246fd7c8640032b", "shasum": "" }, "require": { - "laminas/laminas-escaper": "^2.5", - "laminas/laminas-validator": "^2.10", - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ~8.0.0" + "laminas/laminas-escaper": "^2.9", + "laminas/laminas-validator": "^2.15", + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, - "replace": { - "zendframework/zend-uri": "^2.7.1" + "conflict": { + "zendframework/zend-uri": "*" }, "require-dev": { - "laminas/laminas-coding-standard": "^2.1", - "phpunit/phpunit": "^9.3" + "laminas/laminas-coding-standard": "~2.2.1", + "phpunit/phpunit": "^9.5.5" }, "type": "library", "autoload": { @@ -1986,35 +1981,33 @@ "type": "community_bridge" } ], - "time": "2021-02-17T21:53:05+00:00" + "time": "2021-09-09T18:37:15+00:00" }, { "name": "laminas/laminas-validator", - "version": "2.14.4", + "version": "2.15.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-validator.git", - "reference": "e370c4695db1c81e6dfad38d8c4dbdb37b23d776" + "reference": "270380e87904f5a1a1fba3059989d4ca157e16a9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-validator/zipball/e370c4695db1c81e6dfad38d8c4dbdb37b23d776", - "reference": "e370c4695db1c81e6dfad38d8c4dbdb37b23d776", + "url": "https://api.github.com/repos/laminas/laminas-validator/zipball/270380e87904f5a1a1fba3059989d4ca157e16a9", + "reference": "270380e87904f5a1a1fba3059989d4ca157e16a9", "shasum": "" }, "require": { "container-interop/container-interop": "^1.1", - "laminas/laminas-stdlib": "^3.3", - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ~8.0.0" + "laminas/laminas-stdlib": "^3.6", + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, - "replace": { - "zendframework/zend-validator": "^2.13.0" + "conflict": { + "zendframework/zend-validator": "*" }, "require-dev": { "laminas/laminas-cache": "^2.6.1", - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-config": "^2.6", + "laminas/laminas-coding-standard": "~2.2.1", "laminas/laminas-db": "^2.7", "laminas/laminas-filter": "^2.6", "laminas/laminas-http": "^2.14.2", @@ -2024,7 +2017,7 @@ "laminas/laminas-session": "^2.8", "laminas/laminas-uri": "^2.7", "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.3", + "phpunit/phpunit": "^9.5.5", "psalm/plugin-phpunit": "^0.15.0", "psr/http-client": "^1.0", "psr/http-factory": "^1.0", @@ -2078,38 +2071,39 @@ "type": "community_bridge" } ], - "time": "2021-01-24T20:45:49+00:00" + "time": "2021-09-08T23:16:56+00:00" }, { "name": "mongodb/mongodb", - "version": "1.8.0", + "version": "1.9.0", "source": { "type": "git", "url": "https://github.com/mongodb/mongo-php-library.git", - "reference": "953dbc19443aa9314c44b7217a16873347e6840d" + "reference": "4afe9254e87252879bfbb625858e78fbe072daa0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mongodb/mongo-php-library/zipball/953dbc19443aa9314c44b7217a16873347e6840d", - "reference": "953dbc19443aa9314c44b7217a16873347e6840d", + "url": "https://api.github.com/repos/mongodb/mongo-php-library/zipball/4afe9254e87252879bfbb625858e78fbe072daa0", + "reference": "4afe9254e87252879bfbb625858e78fbe072daa0", "shasum": "" }, "require": { "ext-hash": "*", "ext-json": "*", - "ext-mongodb": "^1.8.1", - "jean85/pretty-package-versions": "^1.2", - "php": "^7.0 || ^8.0", + "ext-mongodb": "^1.10.0", + "jean85/pretty-package-versions": "^1.2 || ^2.0.1", + "php": "^7.1 || ^8.0", "symfony/polyfill-php80": "^1.19" }, "require-dev": { - "squizlabs/php_codesniffer": "^3.5, <3.5.5", - "symfony/phpunit-bridge": "5.x-dev" + "doctrine/coding-standard": "^9.0", + "squizlabs/php_codesniffer": "^3.6", + "symfony/phpunit-bridge": "^5.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.8.x-dev" + "dev-master": "1.9.x-dev" } }, "autoload": { @@ -2144,9 +2138,9 @@ ], "support": { "issues": "https://github.com/mongodb/mongo-php-library/issues", - "source": "https://github.com/mongodb/mongo-php-library/tree/1.8.0" + "source": "https://github.com/mongodb/mongo-php-library/tree/1.9.0" }, - "time": "2020-11-25T12:26:02+00:00" + "time": "2021-07-13T20:03:24+00:00" }, { "name": "myclabs/deep-copy", @@ -3213,16 +3207,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.6", + "version": "9.5.7", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "fb9b8333f14e3dce976a60ef6a7e05c7c7ed8bfb" + "reference": "d0dc8b6999c937616df4fb046792004b33fd31c5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/fb9b8333f14e3dce976a60ef6a7e05c7c7ed8bfb", - "reference": "fb9b8333f14e3dce976a60ef6a7e05c7c7ed8bfb", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/d0dc8b6999c937616df4fb046792004b33fd31c5", + "reference": "d0dc8b6999c937616df4fb046792004b33fd31c5", "shasum": "" }, "require": { @@ -3300,7 +3294,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.6" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.7" }, "funding": [ { @@ -3312,7 +3306,7 @@ "type": "github" } ], - "time": "2021-06-23T05:14:38+00:00" + "time": "2021-07-19T06:14:47+00:00" }, { "name": "psr/cache", From f0a388de6f61b7b609aeb6f55afbe761191272c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20B=C3=B6sing?= <2189546+boesing@users.noreply.github.com> Date: Thu, 16 Sep 2021 10:08:15 +0200 Subject: [PATCH 03/12] qa: import `ReturnTypeWillChange` attribute MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- src/SaveHandler/Cache.php | 14 ++++++++------ src/SaveHandler/DbTableGateway.php | 14 ++++++++------ src/SaveHandler/MongoDB.php | 14 ++++++++------ src/Storage/AbstractSessionArrayStorage.php | 14 ++++++++------ src/Storage/ArrayStorage.php | 4 +++- test/TestAsset/TestSaveHandler.php | 9 +++++---- test/TestAsset/TestSaveHandlerWithValidator.php | 9 +++++---- 7 files changed, 45 insertions(+), 33 deletions(-) diff --git a/src/SaveHandler/Cache.php b/src/SaveHandler/Cache.php index 192070ed..c9d335d1 100644 --- a/src/SaveHandler/Cache.php +++ b/src/SaveHandler/Cache.php @@ -5,6 +5,8 @@ use Laminas\Cache\Storage\ClearExpiredInterface as ClearExpiredCacheStorage; use Laminas\Cache\Storage\StorageInterface as CacheStorage; +use ReturnTypeWillChange; + /** * Cache session save handler */ @@ -46,7 +48,7 @@ public function __construct(CacheStorage $cacheStorage) * @param string $name * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function open($savePath, $name) { // @todo figure out if we want to use these @@ -61,7 +63,7 @@ public function open($savePath, $name) * * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function close() { return true; @@ -73,7 +75,7 @@ public function close() * @param string $id * @return string */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function read($id) { return (string) $this->getCacheStorage()->getItem($id); @@ -86,7 +88,7 @@ public function read($id) * @param string $data * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function write($id, $data) { return $this->getCacheStorage()->setItem($id, $data); @@ -98,7 +100,7 @@ public function write($id, $data) * @param string $id * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function destroy($id) { $this->getCacheStorage()->getItem($id, $exists); @@ -115,7 +117,7 @@ public function destroy($id) * @param int $maxlifetime * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function gc($maxlifetime) { $cache = $this->getCacheStorage(); diff --git a/src/SaveHandler/DbTableGateway.php b/src/SaveHandler/DbTableGateway.php index 568f9586..782ad30c 100644 --- a/src/SaveHandler/DbTableGateway.php +++ b/src/SaveHandler/DbTableGateway.php @@ -8,6 +8,8 @@ use function sprintf; use function time; +use ReturnTypeWillChange; + /** * DB Table Gateway session save handler */ @@ -64,7 +66,7 @@ public function __construct(TableGateway $tableGateway, DbTableGatewayOptions $o * @param string $name * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function open($savePath, $name) { $this->sessionSavePath = $savePath; @@ -79,7 +81,7 @@ public function open($savePath, $name) * * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function close() { return true; @@ -92,7 +94,7 @@ public function close() * @param bool $destroyExpired Optional; true by default * @return string */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function read($id, $destroyExpired = true) { $row = $this->tableGateway->select([ @@ -121,7 +123,7 @@ public function read($id, $destroyExpired = true) * @param string $data * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function write($id, $data) { $data = [ @@ -153,7 +155,7 @@ public function write($id, $data) * @param string $id * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function destroy($id) { $this->tableGateway->delete([ @@ -170,7 +172,7 @@ public function destroy($id) * @param int $maxlifetime * @return true */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function gc($maxlifetime) { $platform = $this->tableGateway->getAdapter()->getPlatform(); diff --git a/src/SaveHandler/MongoDB.php b/src/SaveHandler/MongoDB.php index c9662dfb..7a6d1f72 100644 --- a/src/SaveHandler/MongoDB.php +++ b/src/SaveHandler/MongoDB.php @@ -14,6 +14,8 @@ use function microtime; use function time; +use ReturnTypeWillChange; + /** * MongoDB session save handler */ @@ -81,7 +83,7 @@ public function __construct($mongoClient, MongoDBOptions $options) * @param string $name * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function open($savePath, $name) { // Note: session save path is not used @@ -106,7 +108,7 @@ public function open($savePath, $name) * * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function close() { return true; @@ -118,7 +120,7 @@ public function close() * @param string $id * @return string */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function read($id) { $session = $this->mongoCollection->findOne([ @@ -151,7 +153,7 @@ public function read($id) * @param string $data * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function write($id, $data) { $saveOptions = array_replace( @@ -189,7 +191,7 @@ public function write($id, $data) * @param string $id * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function destroy($id) { $result = $this->mongoCollection->deleteOne( @@ -217,7 +219,7 @@ public function destroy($id) * @param int $maxlifetime * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function gc($maxlifetime) { /* Note: unlike DbTableGateway, we do not use the lifetime field in diff --git a/src/Storage/AbstractSessionArrayStorage.php b/src/Storage/AbstractSessionArrayStorage.php index 54dc425c..2245dcbc 100644 --- a/src/Storage/AbstractSessionArrayStorage.php +++ b/src/Storage/AbstractSessionArrayStorage.php @@ -19,6 +19,8 @@ use function sprintf; use function unserialize; +use ReturnTypeWillChange; + /** * Session storage in $_SESSION * @@ -121,7 +123,7 @@ public function __destruct() * @param mixed $key * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function offsetExists($key) { return isset($_SESSION[$key]); @@ -133,7 +135,7 @@ public function offsetExists($key) * @param mixed $key * @return mixed */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function offsetGet($key) { if (isset($_SESSION[$key])) { @@ -150,7 +152,7 @@ public function offsetGet($key) * @param mixed $value * @return void */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function offsetSet($key, $value) { $_SESSION[$key] = $value; @@ -162,7 +164,7 @@ public function offsetSet($key, $value) * @param mixed $key * @return void */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function offsetUnset($key) { unset($_SESSION[$key]); @@ -173,7 +175,7 @@ public function offsetUnset($key) * * @return int */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function count() { return count($_SESSION); @@ -205,7 +207,7 @@ public function unserialize($session) * * @return ArrayIterator */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function getIterator() { return new ArrayIterator($_SESSION); diff --git a/src/Storage/ArrayStorage.php b/src/Storage/ArrayStorage.php index ec853a1d..8ccf0b02 100644 --- a/src/Storage/ArrayStorage.php +++ b/src/Storage/ArrayStorage.php @@ -14,6 +14,8 @@ use function microtime; use function sprintf; +use ReturnTypeWillChange; + /** * Array session storage * @@ -87,7 +89,7 @@ public function getRequestAccessTime() * @param mixed $value * @throws Exception\RuntimeException */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function offsetSet($key, $value) { if ($this->isImmutable()) { diff --git a/test/TestAsset/TestSaveHandler.php b/test/TestAsset/TestSaveHandler.php index 32d24e58..f41d1acb 100644 --- a/test/TestAsset/TestSaveHandler.php +++ b/test/TestAsset/TestSaveHandler.php @@ -4,14 +4,15 @@ use Laminas\Session\SaveHandler\SaveHandlerInterface as SaveHandler; +use ReturnTypeWillChange; + class TestSaveHandler implements SaveHandler { /** * @param string $savePath * @param string $name - * @return void */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function open($savePath, $name): void { } @@ -25,7 +26,7 @@ public function close(): bool * @param int|string $id * @return void */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function read($id) { } @@ -53,7 +54,7 @@ public function destroy($id): bool * @param int $maxlifetime * @return void */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function gc($maxlifetime) { } diff --git a/test/TestAsset/TestSaveHandlerWithValidator.php b/test/TestAsset/TestSaveHandlerWithValidator.php index fd9cd56b..2b3382ca 100644 --- a/test/TestAsset/TestSaveHandlerWithValidator.php +++ b/test/TestAsset/TestSaveHandlerWithValidator.php @@ -4,6 +4,8 @@ use Laminas\Session\SaveHandler\SaveHandlerInterface as SaveHandler; +use ReturnTypeWillChange; + class TestSaveHandlerWithValidator implements SaveHandler { /** @@ -25,7 +27,7 @@ public function close(): bool * @param int|string $id * @return string */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function read($id) { return '__Laminas|a:1:{s:6:"_VALID";a:1:{s:50:"LaminasTest\Session\TestAsset\TestFailingValidator";s:0:"";}}'; @@ -36,7 +38,7 @@ public function read($id) * @param array $data * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function write($id, $data) { return true; @@ -44,7 +46,6 @@ public function write($id, $data) /** * @param int|string $id - * @return bool */ public function destroy($id): bool { @@ -55,7 +56,7 @@ public function destroy($id): bool * @param int $maxlifetime * @return bool */ - #[\ReturnTypeWillChange] + #[ReturnTypeWillChange] public function gc($maxlifetime) { return true; From 4f770c474ed27ffea4fff1dffaa3ca57470a2e19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20B=C3=B6sing?= <2189546+boesing@users.noreply.github.com> Date: Thu, 16 Sep 2021 10:08:25 +0200 Subject: [PATCH 04/12] qa: apply coding standard MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- test/SaveHandler/DbTableGatewayTest.php | 1 + test/SessionManagerTest.php | 1 + test/TestAsset/Php81CompatibleStorageInterface.php | 2 ++ 3 files changed, 4 insertions(+) diff --git a/test/SaveHandler/DbTableGatewayTest.php b/test/SaveHandler/DbTableGatewayTest.php index f3590c46..5215fb34 100644 --- a/test/SaveHandler/DbTableGatewayTest.php +++ b/test/SaveHandler/DbTableGatewayTest.php @@ -13,6 +13,7 @@ use function serialize; use function unserialize; use function var_export; + use const PHP_VERSION_ID; /** diff --git a/test/SessionManagerTest.php b/test/SessionManagerTest.php index 8e0cbdb9..cffede4d 100644 --- a/test/SessionManagerTest.php +++ b/test/SessionManagerTest.php @@ -33,6 +33,7 @@ use function set_error_handler; use function stristr; use function var_export; +use function xdebug_get_headers; use const E_WARNING; use const PHP_SAPI; diff --git a/test/TestAsset/Php81CompatibleStorageInterface.php b/test/TestAsset/Php81CompatibleStorageInterface.php index 9b10119d..ce468a76 100644 --- a/test/TestAsset/Php81CompatibleStorageInterface.php +++ b/test/TestAsset/Php81CompatibleStorageInterface.php @@ -1,7 +1,9 @@ Date: Thu, 16 Sep 2021 10:08:44 +0200 Subject: [PATCH 05/12] qa: ignore php platform requirement for PHP 8.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- .laminas-ci.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.laminas-ci.json b/.laminas-ci.json index 99d05c00..7341643c 100644 --- a/.laminas-ci.json +++ b/.laminas-ci.json @@ -3,5 +3,8 @@ "mongodb", "mysql", "pgsql" - ] + ], + "ignore_php_platform_requirements": { + "8.1": true + } } From 5e45056eee5c7f27fb13c291cf7313212759223d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20B=C3=B6sing?= <2189546+boesing@users.noreply.github.com> Date: Thu, 16 Sep 2021 10:25:29 +0200 Subject: [PATCH 06/12] qa: add `ReturnTypeWillChange` stub MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit With PHP 8.1, an attribute `ReturnTypeWillChange` was added. The coding standard does not detect that attribute as a class and uses `const` as import statement for it. To avoid this, I've added the proper usage and annotated it in the class PHPDoc so the coding standard can properly detect its usage as otherwise it would be removed. Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- .gitattributes | 1 + autoload-dev/ReturnTypeWillChange.php | 9 +++++++++ composer.json | 5 ++++- src/SaveHandler/Cache.php | 3 ++- src/SaveHandler/DbTableGateway.php | 5 +++-- src/SaveHandler/MongoDB.php | 5 +++-- src/Storage/AbstractSessionArrayStorage.php | 5 +++-- src/Storage/ArrayStorage.php | 5 +++-- test/TestAsset/TestSaveHandler.php | 6 +++--- test/TestAsset/TestSaveHandlerWithValidator.php | 4 +++- 10 files changed, 34 insertions(+), 14 deletions(-) create mode 100644 autoload-dev/ReturnTypeWillChange.php diff --git a/.gitattributes b/.gitattributes index 25bb0723..2c451648 100644 --- a/.gitattributes +++ b/.gitattributes @@ -8,3 +8,4 @@ /phpcs.xml export-ignore /phpunit.xml.dist export-ignore /test/ export-ignore +/autoload-dev/ export-ignore diff --git a/autoload-dev/ReturnTypeWillChange.php b/autoload-dev/ReturnTypeWillChange.php new file mode 100644 index 00000000..46f00544 --- /dev/null +++ b/autoload-dev/ReturnTypeWillChange.php @@ -0,0 +1,9 @@ + Date: Thu, 16 Sep 2021 10:27:45 +0200 Subject: [PATCH 07/12] qa: enable PHP 8.1 checks for the db adapter MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This also renames the abstract test class so we can re-enable the coding standard check regarding `Abstract` prefix Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- ...eGatewayTest.php => AbstractDbTableGatewayTest.php} | 10 ++-------- test/SaveHandler/DbTableGateway/MysqliAdapterTest.php | 4 ++-- .../SaveHandler/DbTableGateway/PdoMysqlAdapterTest.php | 4 ++-- .../DbTableGateway/PdoSqliteAdapterTest.php | 4 ++-- test/SaveHandler/DbTableGateway/PgsqlAdapterTest.php | 4 ++-- 5 files changed, 10 insertions(+), 16 deletions(-) rename test/SaveHandler/{DbTableGatewayTest.php => AbstractDbTableGatewayTest.php} (95%) diff --git a/test/SaveHandler/DbTableGatewayTest.php b/test/SaveHandler/AbstractDbTableGatewayTest.php similarity index 95% rename from test/SaveHandler/DbTableGatewayTest.php rename to test/SaveHandler/AbstractDbTableGatewayTest.php index 5215fb34..8502ae6f 100644 --- a/test/SaveHandler/DbTableGatewayTest.php +++ b/test/SaveHandler/AbstractDbTableGatewayTest.php @@ -1,4 +1,4 @@ -= 80100) { - self::fail('Waiting for https://github.com/laminas/laminas-db/pull/204'); - } - $this->adapter = $this->getAdapter(); $this->options = new DbTableGatewayOptions( diff --git a/test/SaveHandler/DbTableGateway/MysqliAdapterTest.php b/test/SaveHandler/DbTableGateway/MysqliAdapterTest.php index a19e51c7..bb45d5c3 100644 --- a/test/SaveHandler/DbTableGateway/MysqliAdapterTest.php +++ b/test/SaveHandler/DbTableGateway/MysqliAdapterTest.php @@ -4,13 +4,13 @@ use Laminas\Db\Adapter\Adapter; use Laminas\Session\SaveHandler\DbTableGateway; -use LaminasTest\Session\SaveHandler\DbTableGatewayTest; +use LaminasTest\Session\SaveHandler\AbstractDbTableGatewayTest; use function extension_loaded; use function getenv; use function sprintf; -class MysqliAdapterTest extends DbTableGatewayTest +class MysqliAdapterTest extends AbstractDbTableGatewayTest { /** * @return Adapter diff --git a/test/SaveHandler/DbTableGateway/PdoMysqlAdapterTest.php b/test/SaveHandler/DbTableGateway/PdoMysqlAdapterTest.php index 59cc9d21..ac8eb0cf 100644 --- a/test/SaveHandler/DbTableGateway/PdoMysqlAdapterTest.php +++ b/test/SaveHandler/DbTableGateway/PdoMysqlAdapterTest.php @@ -4,13 +4,13 @@ use Laminas\Db\Adapter\Adapter; use Laminas\Session\SaveHandler\DbTableGateway; -use LaminasTest\Session\SaveHandler\DbTableGatewayTest; +use LaminasTest\Session\SaveHandler\AbstractDbTableGatewayTest; use function extension_loaded; use function getenv; use function sprintf; -class PdoMysqlAdapterTest extends DbTableGatewayTest +class PdoMysqlAdapterTest extends AbstractDbTableGatewayTest { /** * @return Adapter diff --git a/test/SaveHandler/DbTableGateway/PdoSqliteAdapterTest.php b/test/SaveHandler/DbTableGateway/PdoSqliteAdapterTest.php index 1ae77432..20a25509 100644 --- a/test/SaveHandler/DbTableGateway/PdoSqliteAdapterTest.php +++ b/test/SaveHandler/DbTableGateway/PdoSqliteAdapterTest.php @@ -4,12 +4,12 @@ use Laminas\Db\Adapter\Adapter; use Laminas\Session\SaveHandler\DbTableGateway; -use LaminasTest\Session\SaveHandler\DbTableGatewayTest; +use LaminasTest\Session\SaveHandler\AbstractDbTableGatewayTest; use function extension_loaded; use function sprintf; -class PdoSqliteAdapterTest extends DbTableGatewayTest +class PdoSqliteAdapterTest extends AbstractDbTableGatewayTest { /** * @return Adapter diff --git a/test/SaveHandler/DbTableGateway/PgsqlAdapterTest.php b/test/SaveHandler/DbTableGateway/PgsqlAdapterTest.php index 2130787d..d871289e 100644 --- a/test/SaveHandler/DbTableGateway/PgsqlAdapterTest.php +++ b/test/SaveHandler/DbTableGateway/PgsqlAdapterTest.php @@ -4,13 +4,13 @@ use Laminas\Db\Adapter\Adapter; use Laminas\Session\SaveHandler\DbTableGateway; -use LaminasTest\Session\SaveHandler\DbTableGatewayTest; +use LaminasTest\Session\SaveHandler\AbstractDbTableGatewayTest; use function extension_loaded; use function getenv; use function sprintf; -class PgsqlAdapterTest extends DbTableGatewayTest +class PgsqlAdapterTest extends AbstractDbTableGatewayTest { /** * @return Adapter From bb717e78e3cb7c20ecf44351f9fe544011186b34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20B=C3=B6sing?= <2189546+boesing@users.noreply.github.com> Date: Mon, 20 Sep 2021 19:00:18 +0200 Subject: [PATCH 08/12] qa: ensure we are installing `ext-mongodb` from source MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- .../install-mongodb-extension-from-source.sh | 26 +++++++++++++++++++ .laminas-ci/pre-install.sh | 7 +++++ composer.json | 2 +- 3 files changed, 34 insertions(+), 1 deletion(-) create mode 100755 .laminas-ci/install-mongodb-extension-from-source.sh create mode 100755 .laminas-ci/pre-install.sh diff --git a/.laminas-ci/install-mongodb-extension-from-source.sh b/.laminas-ci/install-mongodb-extension-from-source.sh new file mode 100755 index 00000000..bc518418 --- /dev/null +++ b/.laminas-ci/install-mongodb-extension-from-source.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +PHP_VERSION="$1" + +if ! [[ "${PHP_VERSION}" =~ 8\.1 ]]; then + echo "MongoDB extension is only installed from source for PHP 8.1, ${PHP_VERSION} detected." + exit 0; +fi + +set +e + +CURRENT_WORKING_DIRECTORY=$(pwd) + +cd $TMPDIR +git clone https://github.com/mongodb/mongo-php-driver +cd mongo-php-driver + +git submodule deinit --all -f +git submodule update --init +phpize +./configure +make +make install + +cd $CURRENT_WORKING_DIRECTORY + diff --git a/.laminas-ci/pre-install.sh b/.laminas-ci/pre-install.sh new file mode 100755 index 00000000..8c383d08 --- /dev/null +++ b/.laminas-ci/pre-install.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +WORKING_DIRECTORY=$2 +JOB=$3 +PHP_VERSION=$(echo "${JOB}" | jq -r '.php') + +${WORKING_DIRECTORY}/.laminas-ci/install-mongodb-extension-from-source.sh "${PHP_VERSION}" || exit 1 diff --git a/composer.json b/composer.json index 585df1d0..5bc41a0b 100644 --- a/composer.json +++ b/composer.json @@ -31,7 +31,7 @@ }, "require-dev": { "container-interop/container-interop": "^1.1", - "laminas/laminas-cache": "^2.6.1", + "laminas/laminas-cache": "3.0.x-dev", "laminas/laminas-coding-standard": "~2.2.1", "laminas/laminas-db": "^2.13", "laminas/laminas-http": "^2.15", From 3145252eff131a929ae99dd93575f9109be8cb47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20B=C3=B6sing?= <2189546+boesing@users.noreply.github.com> Date: Mon, 20 Sep 2021 19:02:56 +0200 Subject: [PATCH 09/12] bugfix: create mods-available `mongodb.ini` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- .laminas-ci/install-mongodb-extension-from-source.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.laminas-ci/install-mongodb-extension-from-source.sh b/.laminas-ci/install-mongodb-extension-from-source.sh index bc518418..22bbbcd6 100755 --- a/.laminas-ci/install-mongodb-extension-from-source.sh +++ b/.laminas-ci/install-mongodb-extension-from-source.sh @@ -22,5 +22,7 @@ phpize make make install +echo "extension=mongodb.so" > /etc/php/${PHP_VERSION}/mods-available/mongodb.ini + cd $CURRENT_WORKING_DIRECTORY From 795d81e4c51360e57746b7d201611198dd61eb4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20B=C3=B6sing?= <2189546+boesing@users.noreply.github.com> Date: Mon, 20 Sep 2021 19:08:13 +0200 Subject: [PATCH 10/12] qa: require proper dependency set MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- composer.json | 1 + composer.lock | 1454 ++++++++++--------------------------------------- 2 files changed, 297 insertions(+), 1158 deletions(-) diff --git a/composer.json b/composer.json index 5bc41a0b..313dada8 100644 --- a/composer.json +++ b/composer.json @@ -32,6 +32,7 @@ "require-dev": { "container-interop/container-interop": "^1.1", "laminas/laminas-cache": "3.0.x-dev", + "laminas/laminas-cache-storage-adapter-memory": "2.0.x-dev", "laminas/laminas-coding-standard": "~2.2.1", "laminas/laminas-db": "^2.13", "laminas/laminas-http": "^2.15", diff --git a/composer.lock b/composer.lock index 080a21f5..a6c8f5a0 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": "554307a927f83927c92a24d617a2ec1a", + "content-hash": "8385debbc63cd560cac99b28b583daab", "packages": [ { "name": "laminas/laminas-eventmanager", @@ -130,68 +130,6 @@ } ], "time": "2021-09-02T16:11:32+00:00" - }, - { - "name": "laminas/laminas-zendframework-bridge", - "version": "1.3.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-zendframework-bridge.git", - "reference": "13af2502d9bb6f7d33be2de4b51fb68c6cdb476e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/13af2502d9bb6f7d33be2de4b51fb68c6cdb476e", - "reference": "13af2502d9bb6f7d33be2de4b51fb68c6cdb476e", - "shasum": "" - }, - "require": { - "php": "^7.3 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3", - "psalm/plugin-phpunit": "^0.15.1", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.6" - }, - "type": "library", - "extra": { - "laminas": { - "module": "Laminas\\ZendFrameworkBridge" - } - }, - "autoload": { - "files": [ - "src/autoload.php" - ], - "psr-4": { - "Laminas\\ZendFrameworkBridge\\": "src//" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Alias legacy ZF class names to Laminas Project equivalents.", - "keywords": [ - "ZendFramework", - "autoloading", - "laminas", - "zf" - ], - "support": { - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-zendframework-bridge/issues", - "rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom", - "source": "https://github.com/laminas/laminas-zendframework-bridge" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-06-24T12:49:22+00:00" } ], "packages-dev": [ @@ -346,1121 +284,249 @@ "name": "Franck Nijhof", "email": "franck.nijhof@dealerdirect.com", "homepage": "http://www.frenck.nl", - "role": "Developer / IT Manager" - } - ], - "description": "PHP_CodeSniffer Standards Composer Installer Plugin", - "homepage": "http://www.dealerdirect.com", - "keywords": [ - "PHPCodeSniffer", - "PHP_CodeSniffer", - "code quality", - "codesniffer", - "composer", - "installer", - "phpcs", - "plugin", - "qa", - "quality", - "standard", - "standards", - "style guide", - "stylecheck", - "tests" - ], - "support": { - "issues": "https://github.com/dealerdirect/phpcodesniffer-composer-installer/issues", - "source": "https://github.com/dealerdirect/phpcodesniffer-composer-installer" - }, - "time": "2020-12-07T18:04:37+00:00" - }, - { - "name": "doctrine/instantiator", - "version": "1.4.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", - "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^8.0", - "ext-pdo": "*", - "ext-phar": "*", - "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "https://ocramius.github.io/" - } - ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://www.doctrine-project.org/projects/instantiator.html", - "keywords": [ - "constructor", - "instantiate" - ], - "support": { - "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.4.0" - }, - "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": "2020-11-10T18:47:58+00:00" - }, - { - "name": "jean85/pretty-package-versions", - "version": "1.6.0", - "source": { - "type": "git", - "url": "https://github.com/Jean85/pretty-package-versions.git", - "reference": "1e0104b46f045868f11942aea058cd7186d6c303" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/1e0104b46f045868f11942aea058cd7186d6c303", - "reference": "1e0104b46f045868f11942aea058cd7186d6c303", - "shasum": "" - }, - "require": { - "composer/package-versions-deprecated": "^1.8.0", - "php": "^7.0|^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.0|^8.5|^9.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Jean85\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Alessandro Lai", - "email": "alessandro.lai85@gmail.com" - } - ], - "description": "A wrapper for ocramius/package-versions to get pretty versions strings", - "keywords": [ - "composer", - "package", - "release", - "versions" - ], - "support": { - "issues": "https://github.com/Jean85/pretty-package-versions/issues", - "source": "https://github.com/Jean85/pretty-package-versions/tree/1.6.0" - }, - "time": "2021-02-04T16:20:16+00:00" - }, - { - "name": "laminas/laminas-cache", - "version": "2.11.2", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache.git", - "reference": "f825aecc67f40e8bc499500373e5de700b95d00b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache/zipball/f825aecc67f40e8bc499500373e5de700b95d00b", - "reference": "f825aecc67f40e8bc499500373e5de700b95d00b", - "shasum": "" - }, - "require": { - "laminas/laminas-cache-storage-adapter-apc": "^1.0", - "laminas/laminas-cache-storage-adapter-apcu": "^1.0", - "laminas/laminas-cache-storage-adapter-blackhole": "^1.0", - "laminas/laminas-cache-storage-adapter-dba": "^1.0", - "laminas/laminas-cache-storage-adapter-ext-mongodb": "^1.0", - "laminas/laminas-cache-storage-adapter-filesystem": "^1.0", - "laminas/laminas-cache-storage-adapter-memcache": "^1.0", - "laminas/laminas-cache-storage-adapter-memcached": "^1.0", - "laminas/laminas-cache-storage-adapter-memory": "^1.0", - "laminas/laminas-cache-storage-adapter-mongodb": "^1.0", - "laminas/laminas-cache-storage-adapter-redis": "^1.0", - "laminas/laminas-cache-storage-adapter-session": "^1.0", - "laminas/laminas-cache-storage-adapter-wincache": "^1.0", - "laminas/laminas-cache-storage-adapter-xcache": "^1.0", - "laminas/laminas-cache-storage-adapter-zend-server": "^1.0", - "laminas/laminas-eventmanager": "^3.3", - "laminas/laminas-servicemanager": "^3.6", - "laminas/laminas-stdlib": "^3.3", - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ~8.0.0", - "psr/cache": "^1.0", - "psr/simple-cache": "^1.0" - }, - "provide": { - "psr/cache-implementation": "1.0", - "psr/simple-cache-implementation": "1.0" - }, - "replace": { - "zendframework/zend-cache": "^2.9.0" - }, - "require-dev": { - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-serializer": "^2.6", - "phpbench/phpbench": "^1.0.0-beta2", - "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.5" - }, - "suggest": { - "laminas/laminas-serializer": "Laminas\\Serializer component" - }, - "type": "library", - "extra": { - "laminas": { - "component": "Laminas\\Cache", - "config-provider": "Laminas\\Cache\\ConfigProvider" - } - }, - "autoload": { - "files": [ - "autoload/patternPluginManagerPolyfill.php" - ], - "psr-4": { - "Laminas\\Cache\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Caching implementation with a variety of storage options, as well as codified caching strategies for callbacks, classes, and output", - "homepage": "https://laminas.dev", - "keywords": [ - "cache", - "laminas", - "psr-16", - "psr-6" - ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-cache/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-cache/issues", - "rss": "https://github.com/laminas/laminas-cache/releases.atom", - "source": "https://github.com/laminas/laminas-cache" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-06-03T19:18:41+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-apc", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-apc.git", - "reference": "8b375d994f6e67534f6ae6e995249e706faa30c1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-apc/zipball/8b375d994f6e67534f6ae6e995249e706faa30c1", - "reference": "8b375d994f6e67534f6ae6e995249e706faa30c1", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.0@dev", - "laminas/laminas-coding-standard": "~1.0.0", - "phpunit/phpunit": "^5.7.27 || ^6.5.8 || ^7.1.2" - }, - "suggest": { - "ext-apc": "APC or compatible extension, to use the APC storage adapter" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter", - "keywords": [ - "cache", - "laminas" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-apc/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-apc/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-apc/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-apc" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "abandoned": true, - "time": "2020-10-12T16:04:12+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-apcu", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-apcu.git", - "reference": "e182aab739d6b03992a9915cc3c7019391a94548" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-apcu/zipball/e182aab739d6b03992a9915cc3c7019391a94548", - "reference": "e182aab739d6b03992a9915cc3c7019391a94548", - "shasum": "" - }, - "require": { - "php": "^7.3 || ~8.0.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "ext-apcu": "*", - "laminas/laminas-cache": "^2.10.1", - "laminas/laminas-cache-storage-adapter-test": "^1.1.1", - "laminas/laminas-coding-standard": "~1.0.0", - "squizlabs/php_codesniffer": "^2.7" - }, - "suggest": { - "ext-apcu": "APCU >= 5.1.0, to use the APCu storage adapter" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter for apcu", - "keywords": [ - "cache", - "laminas" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-apcu/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-apcu/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-apcu/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-apcu" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-05-03T20:41:53+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-blackhole", - "version": "1.2.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-blackhole.git", - "reference": "4af1053efd81785a292c2a9442871c075700345a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-blackhole/zipball/4af1053efd81785a292c2a9442871c075700345a", - "reference": "4af1053efd81785a292c2a9442871c075700345a", - "shasum": "" - }, - "require": { - "php": "^7.3 || ~8.0.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "laminas/laminas-cache": "^2.10.1", - "laminas/laminas-cache-storage-adapter-test": "^1.1.1", - "laminas/laminas-coding-standard": "^2.1.4", - "squizlabs/php_codesniffer": "^3.5.8" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter for blackhole", - "keywords": [ - "cache", - "laminas" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-blackhole/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-blackhole/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-blackhole/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-blackhole" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-04-29T21:06:24+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-dba", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-dba.git", - "reference": "ad968d3d8a0350af8e6717be58bb96e5a9e77f3b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-dba/zipball/ad968d3d8a0350af8e6717be58bb96e5a9e77f3b", - "reference": "ad968d3d8a0350af8e6717be58bb96e5a9e77f3b", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.0@dev", - "laminas/laminas-coding-standard": "~1.0.0", - "squizlabs/php_codesniffer": "^2.7" - }, - "suggest": { - "ext-dba": "DBA, to use the DBA storage adapter" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter for dba", - "keywords": [ - "cache", - "laminas" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-dba/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-dba/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-dba/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-dba" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "abandoned": true, - "time": "2020-10-12T16:08:58+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-ext-mongodb", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-ext-mongodb.git", - "reference": "5810c3ffb442527b8b3429b0d29dce1ddabc92f2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-ext-mongodb/zipball/5810c3ffb442527b8b3429b0d29dce1ddabc92f2", - "reference": "5810c3ffb442527b8b3429b0d29dce1ddabc92f2", - "shasum": "" - }, - "require": { - "php": "^7.3 || ~8.0.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10", - "mongodb/mongodb": "<1.8" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "laminas/laminas-cache": "^2.10.3", - "laminas/laminas-cache-storage-adapter-test": "^1.1.1", - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-serializer": "^2.10.1", - "mongodb/mongodb": "^1.8.0", - "squizlabs/php_codesniffer": "^2.7" - }, - "suggest": { - "mongodb/mongodb": "MongoDB, to use the ExtMongoDb storage adapter" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter for ext-mongodb", - "keywords": [ - "cache", - "laminas" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-ext-mongodb/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-ext-mongodb/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-ext-mongodb/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-ext-mongodb" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-05-06T07:52:48+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-filesystem", - "version": "1.1.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-filesystem.git", - "reference": "76fc488c3fa0ad442e4e70f807305c940d1bdcbc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-filesystem/zipball/76fc488c3fa0ad442e4e70f807305c940d1bdcbc", - "reference": "76fc488c3fa0ad442e4e70f807305c940d1bdcbc", - "shasum": "" - }, - "require": { - "php": "^7.3 || ~8.0.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.1.1", - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-serializer": "^2.10", - "phpunit/phpunit": "^9.5", - "squizlabs/php_codesniffer": "^2.7" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter for filesystem", - "keywords": [ - "cache", - "laminas" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-filesystem/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-filesystem/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-filesystem/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-filesystem" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-04-25T00:27:54+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-memcache", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-memcache.git", - "reference": "1d2a74e300a0fd0b8d0e0cb4e379a173ccad0088" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-memcache/zipball/1d2a74e300a0fd0b8d0e0cb4e379a173ccad0088", - "reference": "1d2a74e300a0fd0b8d0e0cb4e379a173ccad0088", - "shasum": "" - }, - "require": { - "php": "^7.3 || ~8.0.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "laminas/laminas-cache": "^2.10.1", - "laminas/laminas-cache-storage-adapter-test": "^1.1.1", - "laminas/laminas-coding-standard": "^2.1.4", - "laminas/laminas-serializer": "^2.10.1", - "squizlabs/php_codesniffer": "^3.6.0" - }, - "suggest": { - "ext-memcache": "Memcache >= 2.0.0 to use the Memcache storage adapter" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter for memcache", - "keywords": [ - "cache", - "laminas" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-memcache/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-memcache/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-memcache/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-memcache" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "abandoned": true, - "time": "2021-04-29T19:57:43+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-memcached", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-memcached.git", - "reference": "f5d35cc2ef6264c76021bcc798569182103baa91" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-memcached/zipball/f5d35cc2ef6264c76021bcc798569182103baa91", - "reference": "f5d35cc2ef6264c76021bcc798569182103baa91", - "shasum": "" - }, - "require": { - "php": "^7.3" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.0.2", - "laminas/laminas-coding-standard": "~1.0.0", - "phpunit/phpunit": "^7.5.20", - "squizlabs/php_codesniffer": "^2.7" - }, - "suggest": { - "ext-memcached": "Memcached >= 1.0.0 to use the Memcached storage adapter" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter for memcached", - "keywords": [ - "cache", - "laminas", - "memcached" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-memcached/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-memcached/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-memcached/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-memcached" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-04-24T20:06:16+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-memory", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-memory.git", - "reference": "02c7a4a1118bbd47d1c0f0bfe1e8b140af79d2bd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-memory/zipball/02c7a4a1118bbd47d1c0f0bfe1e8b140af79d2bd", - "reference": "02c7a4a1118bbd47d1c0f0bfe1e8b140af79d2bd", - "shasum": "" - }, - "require": { - "php": "^7.3 || ~8.0.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "laminas/laminas-cache": "^2.10.1", - "laminas/laminas-cache-storage-adapter-test": "^1.1.1", - "laminas/laminas-coding-standard": "^2.1.4", - "squizlabs/php_codesniffer": "^3.5.8" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter for memory", - "keywords": [ - "cache", - "laminas" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-memory/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-memory/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-memory/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-memory" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-04-28T17:27:13+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-mongodb", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-mongodb.git", - "reference": "ef4aa396b55533b8eb3e1d4126c39a78a22e49a6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-mongodb/zipball/ef4aa396b55533b8eb3e1d4126c39a78a22e49a6", - "reference": "ef4aa396b55533b8eb3e1d4126c39a78a22e49a6", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.0@dev", - "laminas/laminas-coding-standard": "~1.0.0", - "squizlabs/php_codesniffer": "^2.7" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Laminas cache adapter for mongodb", - "keywords": [ - "cache", - "laminas" - ], - "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-mongodb/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-mongodb/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-mongodb/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-mongodb" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "abandoned": true, - "time": "2020-10-12T16:19:10+00:00" - }, - { - "name": "laminas/laminas-cache-storage-adapter-redis", - "version": "1.2.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-redis.git", - "reference": "de8a63d4a0ef1ccead401eb7fb6d75b57fa3f9ee" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-redis/zipball/de8a63d4a0ef1ccead401eb7fb6d75b57fa3f9ee", - "reference": "de8a63d4a0ef1ccead401eb7fb6d75b57fa3f9ee", - "shasum": "" - }, - "require": { - "php": "^7.3 || ~8.0.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10", - "phpunit/phpunit": "<6.1.0" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" - }, - "require-dev": { - "composer-runtime-api": "^2", - "ext-posix": "*", - "ext-redis": "*", - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.1", - "laminas/laminas-coding-standard": "^2.1", - "laminas/laminas-serializer": "^2.10", - "psalm/plugin-phpunit": "^0.15.1", - "vimeo/psalm": "^4.7" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" + "role": "Developer / IT Manager" + } ], - "description": "Laminas cache adapter for redis", + "description": "PHP_CodeSniffer Standards Composer Installer Plugin", + "homepage": "http://www.dealerdirect.com", "keywords": [ - "cache", - "laminas" + "PHPCodeSniffer", + "PHP_CodeSniffer", + "code quality", + "codesniffer", + "composer", + "installer", + "phpcs", + "plugin", + "qa", + "quality", + "standard", + "standards", + "style guide", + "stylecheck", + "tests" ], "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-redis/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-redis/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-redis/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-redis" + "issues": "https://github.com/dealerdirect/phpcodesniffer-composer-installer/issues", + "source": "https://github.com/dealerdirect/phpcodesniffer-composer-installer" }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-06-03T16:14:07+00:00" + "time": "2020-12-07T18:04:37+00:00" }, { - "name": "laminas/laminas-cache-storage-adapter-session", - "version": "1.1.0", + "name": "doctrine/instantiator", + "version": "1.4.0", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-session.git", - "reference": "74a275056cfca2300eb9a67cd1d917f7066b4113" + "url": "https://github.com/doctrine/instantiator.git", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-session/zipball/74a275056cfca2300eb9a67cd1d917f7066b4113", - "reference": "74a275056cfca2300eb9a67cd1d917f7066b4113", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", "shasum": "" }, "require": { - "php": "^7.3 || ~8.0.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" + "php": "^7.1 || ^8.0" }, "require-dev": { - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.1", - "laminas/laminas-coding-standard": "^2.1", - "laminas/laminas-session": "^2.7.4" - }, - "suggest": { - "laminas/laminas-session": "Laminas\\Session component" + "doctrine/coding-standard": "^8.0", + "ext-pdo": "*", + "ext-phar": "*", + "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" }, "type": "library", "autoload": { "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" + "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], - "description": "Laminas cache adapter for session", + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "https://ocramius.github.io/" + } + ], + "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", + "homepage": "https://www.doctrine-project.org/projects/instantiator.html", "keywords": [ - "cache", - "laminas" + "constructor", + "instantiate" ], "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-session/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-session/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-session/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-session" + "issues": "https://github.com/doctrine/instantiator/issues", + "source": "https://github.com/doctrine/instantiator/tree/1.4.0" }, "funding": [ { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" + "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": "2021-05-02T13:52:36+00:00" + "time": "2020-11-10T18:47:58+00:00" }, { - "name": "laminas/laminas-cache-storage-adapter-wincache", - "version": "1.0.1", + "name": "jean85/pretty-package-versions", + "version": "1.6.0", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-wincache.git", - "reference": "0f54599c5d9aff11b01adadd2742097f923170ba" + "url": "https://github.com/Jean85/pretty-package-versions.git", + "reference": "1e0104b46f045868f11942aea058cd7186d6c303" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-wincache/zipball/0f54599c5d9aff11b01adadd2742097f923170ba", - "reference": "0f54599c5d9aff11b01adadd2742097f923170ba", + "url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/1e0104b46f045868f11942aea058cd7186d6c303", + "reference": "1e0104b46f045868f11942aea058cd7186d6c303", "shasum": "" }, "require": { - "php": "^5.6 || ^7.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" - }, - "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" + "composer/package-versions-deprecated": "^1.8.0", + "php": "^7.0|^8.0" }, "require-dev": { - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.0@dev", - "laminas/laminas-coding-standard": "~1.0.0", - "squizlabs/php_codesniffer": "^2.7" - }, - "suggest": { - "ext-wincache": "WinCache, to use the WinCache storage adapter" + "phpunit/phpunit": "^6.0|^8.5|^9.2" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, "autoload": { "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" + "Jean85\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" + ], + "authors": [ + { + "name": "Alessandro Lai", + "email": "alessandro.lai85@gmail.com" + } ], - "description": "Laminas cache adapter for wincache", + "description": "A wrapper for ocramius/package-versions to get pretty versions strings", "keywords": [ - "cache", - "laminas" + "composer", + "package", + "release", + "versions" ], "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-wincache/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-wincache/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-wincache/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-wincache" + "issues": "https://github.com/Jean85/pretty-package-versions/issues", + "source": "https://github.com/Jean85/pretty-package-versions/tree/1.6.0" }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "abandoned": true, - "time": "2020-10-12T16:22:49+00:00" + "time": "2021-02-04T16:20:16+00:00" }, { - "name": "laminas/laminas-cache-storage-adapter-xcache", - "version": "1.0.1", + "name": "laminas/laminas-cache", + "version": "3.0.x-dev", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-xcache.git", - "reference": "24049557aa796ec7527bcc8032ed68346232b219" + "url": "https://github.com/laminas/laminas-cache.git", + "reference": "8f1c9eaac6c66e0f251f3e1f20bfa146913e4b95" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-xcache/zipball/24049557aa796ec7527bcc8032ed68346232b219", - "reference": "24049557aa796ec7527bcc8032ed68346232b219", + "url": "https://api.github.com/repos/laminas/laminas-cache/zipball/8f1c9eaac6c66e0f251f3e1f20bfa146913e4b95", + "reference": "8f1c9eaac6c66e0f251f3e1f20bfa146913e4b95", "shasum": "" }, "require": { - "php": "^5.6 || ^7.0" + "laminas/laminas-cache-storage-implementation": "1.0", + "laminas/laminas-eventmanager": "^3.4", + "laminas/laminas-servicemanager": "^3.7", + "laminas/laminas-stdlib": "^3.6", + "php": "^7.3 || ~8.0.0 || ~8.1.0", + "psr/cache": "^1.0", + "psr/simple-cache": "^1.0", + "webmozart/assert": "^1.9" }, "conflict": { - "laminas/laminas-cache": "<2.10" + "symfony/console": "<5.1" }, "provide": { - "laminas/laminas-cache-storage-implementation": "1.0" + "psr/cache-implementation": "1.0", + "psr/simple-cache-implementation": "1.0" }, "require-dev": { - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.0@dev", - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-serializer": "^2.9", - "squizlabs/php_codesniffer": "^2.7" + "laminas/laminas-cache-storage-adapter-apcu": "2.0.x-dev", + "laminas/laminas-cache-storage-adapter-blackhole": "2.0.x-dev", + "laminas/laminas-cache-storage-adapter-filesystem": "2.0.x-dev", + "laminas/laminas-cache-storage-adapter-memory": "2.0.x-dev", + "laminas/laminas-cache-storage-adapter-test": "2.0.x-dev", + "laminas/laminas-cli": "^1.0", + "laminas/laminas-coding-standard": "~2.2.0", + "laminas/laminas-config-aggregator": "^1.5", + "laminas/laminas-feed": "^2.14", + "laminas/laminas-serializer": "^2.6", + "phpbench/phpbench": "^1.0", + "phpunit/phpunit": "^9.5", + "psalm/plugin-phpunit": "^0.16.1", + "vimeo/psalm": "^4.9" }, "suggest": { - "ext-xcache": "XCache, to use the XCache storage adapter" + "laminas/laminas-cache-storage-adapter-apcu": "APCu implementation", + "laminas/laminas-cache-storage-adapter-blackhole": "Blackhole/Void implementation", + "laminas/laminas-cache-storage-adapter-ext-mongodb": "MongoDB implementation", + "laminas/laminas-cache-storage-adapter-filesystem": "Filesystem implementation", + "laminas/laminas-cache-storage-adapter-memcached": "Memcached implementation", + "laminas/laminas-cache-storage-adapter-memory": "Memory implementation", + "laminas/laminas-cache-storage-adapter-redis": "Redis implementation", + "laminas/laminas-cache-storage-adapter-session": "Session implementation", + "laminas/laminas-cli": "The laminas-cli binary can be used to consume commands provided by this component", + "laminas/laminas-serializer": "Laminas\\Serializer component" }, + "default-branch": true, "type": "library", + "extra": { + "laminas": { + "component": "Laminas\\Cache", + "config-provider": "Laminas\\Cache\\ConfigProvider" + } + }, "autoload": { "psr-4": { - "Laminas\\Cache\\Storage\\Adapter\\": "src/" + "Laminas\\Cache\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], - "description": "Laminas cache adapter for xcache", + "description": "Caching implementation with a variety of storage options, as well as codified caching strategies for callbacks, classes, and output", + "homepage": "https://laminas.dev", "keywords": [ "cache", - "laminas" + "laminas", + "psr-16", + "psr-6" ], "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-xcache/", - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-xcache/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-xcache/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-xcache" + "chat": "https://laminas.dev/chat", + "docs": "https://docs.laminas.dev/laminas-cache/", + "forum": "https://discourse.laminas.dev", + "issues": "https://github.com/laminas/laminas-cache/issues", + "rss": "https://github.com/laminas/laminas-cache/releases.atom", + "source": "https://github.com/laminas/laminas-cache" }, "funding": [ { @@ -1468,39 +534,45 @@ "type": "community_bridge" } ], - "abandoned": true, - "time": "2020-10-12T16:23:46+00:00" + "time": "2021-09-20T16:39:34+00:00" }, { - "name": "laminas/laminas-cache-storage-adapter-zend-server", - "version": "1.0.1", + "name": "laminas/laminas-cache-storage-adapter-memory", + "version": "2.0.x-dev", "source": { "type": "git", - "url": "https://github.com/laminas/laminas-cache-storage-adapter-zend-server.git", - "reference": "8d0b0d219a048a92472d89a5e527990f3ea2decc" + "url": "https://github.com/laminas/laminas-cache-storage-adapter-memory.git", + "reference": "2b4df31e5fbbb3de99f4cc90473108864865e5e9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-zend-server/zipball/8d0b0d219a048a92472d89a5e527990f3ea2decc", - "reference": "8d0b0d219a048a92472d89a5e527990f3ea2decc", + "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-memory/zipball/2b4df31e5fbbb3de99f4cc90473108864865e5e9", + "reference": "2b4df31e5fbbb3de99f4cc90473108864865e5e9", "shasum": "" }, "require": { - "php": "^5.6 || ^7.0" - }, - "conflict": { - "laminas/laminas-cache": "<2.10" + "laminas/laminas-cache": "^3.0", + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, "provide": { "laminas/laminas-cache-storage-implementation": "1.0" }, "require-dev": { - "laminas/laminas-cache": "^2.10", - "laminas/laminas-cache-storage-adapter-test": "^1.0@dev", - "laminas/laminas-coding-standard": "~1.0.0", - "squizlabs/php_codesniffer": "^2.7" + "laminas/laminas-cache": "3.0.x-dev", + "laminas/laminas-cache-storage-adapter-benchmark": "^1.0", + "laminas/laminas-cache-storage-adapter-test": "2.0.x-dev", + "laminas/laminas-coding-standard": "~2.3.0", + "psalm/plugin-phpunit": "^0.16.1", + "vimeo/psalm": "^4.9" }, + "default-branch": true, "type": "library", + "extra": { + "laminas": { + "config-provider": "Laminas\\Cache\\Storage\\Adapter\\Memory\\ConfigProvider", + "module": "Laminas\\Cache\\Storage\\Adapter\\Memory" + } + }, "autoload": { "psr-4": { "Laminas\\Cache\\Storage\\Adapter\\": "src/" @@ -1510,17 +582,17 @@ "license": [ "BSD-3-Clause" ], - "description": "Laminas cache adapter for zend-server", + "description": "Laminas cache adapter for memory", "keywords": [ "cache", "laminas" ], "support": { - "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-zend-server/", + "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-memory/", "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-cache-storage-adapter-zend-server/issues", - "rss": "https://github.com/laminas/laminas-cache-storage-adapter-zend-server/releases.atom", - "source": "https://github.com/laminas/laminas-cache-storage-adapter-zend-server" + "issues": "https://github.com/laminas/laminas-cache-storage-adapter-memory/issues", + "rss": "https://github.com/laminas/laminas-cache-storage-adapter-memory/releases.atom", + "source": "https://github.com/laminas/laminas-cache-storage-adapter-memory" }, "funding": [ { @@ -1528,7 +600,7 @@ "type": "community_bridge" } ], - "time": "2020-10-12T16:24:25+00:00" + "time": "2021-09-14T22:14:02+00:00" }, { "name": "laminas/laminas-coding-standard", @@ -2073,6 +1145,68 @@ ], "time": "2021-09-08T23:16:56+00:00" }, + { + "name": "laminas/laminas-zendframework-bridge", + "version": "1.3.0", + "source": { + "type": "git", + "url": "https://github.com/laminas/laminas-zendframework-bridge.git", + "reference": "13af2502d9bb6f7d33be2de4b51fb68c6cdb476e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/13af2502d9bb6f7d33be2de4b51fb68c6cdb476e", + "reference": "13af2502d9bb6f7d33be2de4b51fb68c6cdb476e", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3", + "psalm/plugin-phpunit": "^0.15.1", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^4.6" + }, + "type": "library", + "extra": { + "laminas": { + "module": "Laminas\\ZendFrameworkBridge" + } + }, + "autoload": { + "files": [ + "src/autoload.php" + ], + "psr-4": { + "Laminas\\ZendFrameworkBridge\\": "src//" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Alias legacy ZF class names to Laminas Project equivalents.", + "keywords": [ + "ZendFramework", + "autoloading", + "laminas", + "zf" + ], + "support": { + "forum": "https://discourse.laminas.dev/", + "issues": "https://github.com/laminas/laminas-zendframework-bridge/issues", + "rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom", + "source": "https://github.com/laminas/laminas-zendframework-bridge" + }, + "funding": [ + { + "url": "https://funding.communitybridge.org/projects/laminas-project", + "type": "community_bridge" + } + ], + "time": "2021-06-24T12:49:22+00:00" + }, { "name": "mongodb/mongodb", "version": "1.9.0", @@ -2202,16 +1336,16 @@ }, { "name": "nikic/php-parser", - "version": "v4.10.5", + "version": "v4.13.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "4432ba399e47c66624bc73c8c0f811e5c109576f" + "reference": "50953a2691a922aa1769461637869a0a2faa3f53" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4432ba399e47c66624bc73c8c0f811e5c109576f", - "reference": "4432ba399e47c66624bc73c8c0f811e5c109576f", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/50953a2691a922aa1769461637869a0a2faa3f53", + "reference": "50953a2691a922aa1769461637869a0a2faa3f53", "shasum": "" }, "require": { @@ -2252,22 +1386,22 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.10.5" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.13.0" }, - "time": "2021-05-03T19:11:20+00:00" + "time": "2021-09-20T12:20:58+00:00" }, { "name": "phar-io/manifest", - "version": "2.0.1", + "version": "2.0.3", "source": { "type": "git", "url": "https://github.com/phar-io/manifest.git", - "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133" + "reference": "97803eca37d319dfa7826cc2437fc020857acb53" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", - "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53", + "reference": "97803eca37d319dfa7826cc2437fc020857acb53", "shasum": "" }, "require": { @@ -2312,9 +1446,9 @@ "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/master" + "source": "https://github.com/phar-io/manifest/tree/2.0.3" }, - "time": "2020-06-27T14:33:11+00:00" + "time": "2021-07-20T11:28:43+00:00" }, { "name": "phar-io/version", @@ -2668,16 +1802,16 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.4.0", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0" + "reference": "30f38bffc6f24293dadd1823936372dfa9e86e2f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/30f38bffc6f24293dadd1823936372dfa9e86e2f", + "reference": "30f38bffc6f24293dadd1823936372dfa9e86e2f", "shasum": "" }, "require": { @@ -2685,7 +1819,8 @@ "phpdocumentor/reflection-common": "^2.0" }, "require-dev": { - "ext-tokenizer": "*" + "ext-tokenizer": "*", + "psalm/phar": "^4.8" }, "type": "library", "extra": { @@ -2711,39 +1846,39 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.4.0" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.0" }, - "time": "2020-09-17T18:55:26+00:00" + "time": "2021-09-17T15:28:14+00:00" }, { "name": "phpspec/prophecy", - "version": "1.13.0", + "version": "1.14.0", "source": { "type": "git", "url": "https://github.com/phpspec/prophecy.git", - "reference": "be1996ed8adc35c3fd795488a653f4b518be70ea" + "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/be1996ed8adc35c3fd795488a653f4b518be70ea", - "reference": "be1996ed8adc35c3fd795488a653f4b518be70ea", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e", + "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e", "shasum": "" }, "require": { "doctrine/instantiator": "^1.2", - "php": "^7.2 || ~8.0, <8.1", + "php": "^7.2 || ~8.0, <8.2", "phpdocumentor/reflection-docblock": "^5.2", "sebastian/comparator": "^3.0 || ^4.0", "sebastian/recursion-context": "^3.0 || ^4.0" }, "require-dev": { - "phpspec/phpspec": "^6.0", + "phpspec/phpspec": "^6.0 || ^7.0", "phpunit/phpunit": "^8.0 || ^9.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.11.x-dev" + "dev-master": "1.x-dev" } }, "autoload": { @@ -2778,9 +1913,9 @@ ], "support": { "issues": "https://github.com/phpspec/prophecy/issues", - "source": "https://github.com/phpspec/prophecy/tree/1.13.0" + "source": "https://github.com/phpspec/prophecy/tree/1.14.0" }, - "time": "2021-03-17T13:42:18+00:00" + "time": "2021-09-10T09:02:12+00:00" }, { "name": "phpspec/prophecy-phpunit", @@ -2889,23 +2024,23 @@ }, { "name": "phpunit/php-code-coverage", - "version": "9.2.6", + "version": "9.2.7", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "f6293e1b30a2354e8428e004689671b83871edde" + "reference": "d4c798ed8d51506800b441f7a13ecb0f76f12218" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f6293e1b30a2354e8428e004689671b83871edde", - "reference": "f6293e1b30a2354e8428e004689671b83871edde", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/d4c798ed8d51506800b441f7a13ecb0f76f12218", + "reference": "d4c798ed8d51506800b441f7a13ecb0f76f12218", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.10.2", + "nikic/php-parser": "^4.12.0", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -2954,7 +2089,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.6" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.7" }, "funding": [ { @@ -2962,7 +2097,7 @@ "type": "github" } ], - "time": "2021-03-28T07:26:59+00:00" + "time": "2021-09-17T05:39:03+00:00" }, { "name": "phpunit/php-file-iterator", @@ -3207,16 +2342,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.7", + "version": "9.5.9", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "d0dc8b6999c937616df4fb046792004b33fd31c5" + "reference": "ea8c2dfb1065eb35a79b3681eee6e6fb0a6f273b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/d0dc8b6999c937616df4fb046792004b33fd31c5", - "reference": "d0dc8b6999c937616df4fb046792004b33fd31c5", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/ea8c2dfb1065eb35a79b3681eee6e6fb0a6f273b", + "reference": "ea8c2dfb1065eb35a79b3681eee6e6fb0a6f273b", "shasum": "" }, "require": { @@ -3228,7 +2363,7 @@ "ext-xml": "*", "ext-xmlwriter": "*", "myclabs/deep-copy": "^1.10.1", - "phar-io/manifest": "^2.0.1", + "phar-io/manifest": "^2.0.3", "phar-io/version": "^3.0.2", "php": ">=7.3", "phpspec/prophecy": "^1.12.1", @@ -3294,7 +2429,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.7" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.9" }, "funding": [ { @@ -3306,7 +2441,7 @@ "type": "github" } ], - "time": "2021-07-19T06:14:47+00:00" + "time": "2021-08-31T06:47:40+00:00" }, { "name": "psr/cache", @@ -4701,16 +3836,16 @@ }, { "name": "theseer/tokenizer", - "version": "1.2.0", + "version": "1.2.1", "source": { "type": "git", "url": "https://github.com/theseer/tokenizer.git", - "reference": "75a63c33a8577608444246075ea0af0d052e452a" + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a", - "reference": "75a63c33a8577608444246075ea0af0d052e452a", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", "shasum": "" }, "require": { @@ -4739,7 +3874,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/master" + "source": "https://github.com/theseer/tokenizer/tree/1.2.1" }, "funding": [ { @@ -4747,7 +3882,7 @@ "type": "github" } ], - "time": "2020-07-12T23:59:07+00:00" + "time": "2021-07-28T10:34:58+00:00" }, { "name": "webimpress/coding-standard", @@ -4865,7 +4000,10 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": [], + "stability-flags": { + "laminas/laminas-cache": 20, + "laminas/laminas-cache-storage-adapter-memory": 20 + }, "prefer-stable": false, "prefer-lowest": false, "platform": { From 096bfbe205efc1fc288121c80b04beb3e7b0d2b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20B=C3=B6sing?= <2189546+boesing@users.noreply.github.com> Date: Mon, 20 Sep 2021 19:15:56 +0200 Subject: [PATCH 11/12] qa: enfore `mongodb/mongodb` v1.9.x-dev to provide PHP 8.1 compat MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com> --- composer.json | 2 +- composer.lock | 126 ++++++++++++-------------------------------------- 2 files changed, 30 insertions(+), 98 deletions(-) diff --git a/composer.json b/composer.json index 313dada8..0fb83ba4 100644 --- a/composer.json +++ b/composer.json @@ -38,7 +38,7 @@ "laminas/laminas-http": "^2.15", "laminas/laminas-servicemanager": "^3.7", "laminas/laminas-validator": "^2.15", - "mongodb/mongodb": "^1.9", + "mongodb/mongodb": "v1.9.x-dev", "php-mock/php-mock-phpunit": "^1.1.2 || ^2.0", "phpspec/prophecy-phpunit": "^2.0", "phpunit/phpunit": "^9.5.9" diff --git a/composer.lock b/composer.lock index a6c8f5a0..9ec89e1f 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": "8385debbc63cd560cac99b28b583daab", + "content-hash": "8624d5719001ec2c6b2860cb964ff553", "packages": [ { "name": "laminas/laminas-eventmanager", @@ -133,79 +133,6 @@ } ], "packages-dev": [ - { - "name": "composer/package-versions-deprecated", - "version": "1.11.99.2", - "source": { - "type": "git", - "url": "https://github.com/composer/package-versions-deprecated.git", - "reference": "c6522afe5540d5fc46675043d3ed5a45a740b27c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/c6522afe5540d5fc46675043d3ed5a45a740b27c", - "reference": "c6522afe5540d5fc46675043d3ed5a45a740b27c", - "shasum": "" - }, - "require": { - "composer-plugin-api": "^1.1.0 || ^2.0", - "php": "^7 || ^8" - }, - "replace": { - "ocramius/package-versions": "1.11.99" - }, - "require-dev": { - "composer/composer": "^1.9.3 || ^2.0@dev", - "ext-zip": "^1.13", - "phpunit/phpunit": "^6.5 || ^7" - }, - "type": "composer-plugin", - "extra": { - "class": "PackageVersions\\Installer", - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "PackageVersions\\": "src/PackageVersions" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com" - }, - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be" - } - ], - "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", - "support": { - "issues": "https://github.com/composer/package-versions-deprecated/issues", - "source": "https://github.com/composer/package-versions-deprecated/tree/1.11.99.2" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2021-05-24T07:46:03+00:00" - }, { "name": "container-interop/container-interop", "version": "1.2.0", @@ -383,24 +310,28 @@ }, { "name": "jean85/pretty-package-versions", - "version": "1.6.0", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/Jean85/pretty-package-versions.git", - "reference": "1e0104b46f045868f11942aea058cd7186d6c303" + "reference": "694492c653c518456af2805f04eec445b997ed1f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/1e0104b46f045868f11942aea058cd7186d6c303", - "reference": "1e0104b46f045868f11942aea058cd7186d6c303", + "url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/694492c653c518456af2805f04eec445b997ed1f", + "reference": "694492c653c518456af2805f04eec445b997ed1f", "shasum": "" }, "require": { - "composer/package-versions-deprecated": "^1.8.0", - "php": "^7.0|^8.0" + "composer-runtime-api": "^2.0.0", + "php": "^7.1|^8.0" }, "require-dev": { - "phpunit/phpunit": "^6.0|^8.5|^9.2" + "friendsofphp/php-cs-fixer": "^2.17", + "jean85/composer-provided-replaced-stub-package": "^1.0", + "phpstan/phpstan": "^0.12.66", + "phpunit/phpunit": "^7.5|^8.5|^9.4", + "vimeo/psalm": "^4.3" }, "type": "library", "extra": { @@ -423,7 +354,7 @@ "email": "alessandro.lai85@gmail.com" } ], - "description": "A wrapper for ocramius/package-versions to get pretty versions strings", + "description": "A library to get pretty versions strings of installed dependencies", "keywords": [ "composer", "package", @@ -432,9 +363,9 @@ ], "support": { "issues": "https://github.com/Jean85/pretty-package-versions/issues", - "source": "https://github.com/Jean85/pretty-package-versions/tree/1.6.0" + "source": "https://github.com/Jean85/pretty-package-versions/tree/2.0.4" }, - "time": "2021-02-04T16:20:16+00:00" + "time": "2021-05-26T08:46:42+00:00" }, { "name": "laminas/laminas-cache", @@ -1209,16 +1140,16 @@ }, { "name": "mongodb/mongodb", - "version": "1.9.0", + "version": "v1.9.x-dev", "source": { "type": "git", "url": "https://github.com/mongodb/mongo-php-library.git", - "reference": "4afe9254e87252879bfbb625858e78fbe072daa0" + "reference": "46a9a8faf7e700aa7bcad06dfb6bfc2c1fad12a5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mongodb/mongo-php-library/zipball/4afe9254e87252879bfbb625858e78fbe072daa0", - "reference": "4afe9254e87252879bfbb625858e78fbe072daa0", + "url": "https://api.github.com/repos/mongodb/mongo-php-library/zipball/46a9a8faf7e700aa7bcad06dfb6bfc2c1fad12a5", + "reference": "46a9a8faf7e700aa7bcad06dfb6bfc2c1fad12a5", "shasum": "" }, "require": { @@ -1272,9 +1203,9 @@ ], "support": { "issues": "https://github.com/mongodb/mongo-php-library/issues", - "source": "https://github.com/mongodb/mongo-php-library/tree/1.9.0" + "source": "https://github.com/mongodb/mongo-php-library/tree/v1.9" }, - "time": "2021-07-13T20:03:24+00:00" + "time": "2021-08-30T17:10:38+00:00" }, { "name": "myclabs/deep-copy", @@ -3753,16 +3684,16 @@ }, { "name": "symfony/polyfill-php80", - "version": "v1.23.0", + "version": "v1.23.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "eca0bf41ed421bed1b57c4958bab16aa86b757d0" + "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/eca0bf41ed421bed1b57c4958bab16aa86b757d0", - "reference": "eca0bf41ed421bed1b57c4958bab16aa86b757d0", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/1100343ed1a92e3a38f9ae122fc0eb21602547be", + "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be", "shasum": "" }, "require": { @@ -3816,7 +3747,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.23.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.23.1" }, "funding": [ { @@ -3832,7 +3763,7 @@ "type": "tidelift" } ], - "time": "2021-02-19T12:13:01+00:00" + "time": "2021-07-28T13:41:28+00:00" }, { "name": "theseer/tokenizer", @@ -4002,7 +3933,8 @@ "minimum-stability": "stable", "stability-flags": { "laminas/laminas-cache": 20, - "laminas/laminas-cache-storage-adapter-memory": 20 + "laminas/laminas-cache-storage-adapter-memory": 20, + "mongodb/mongodb": 20 }, "prefer-stable": false, "prefer-lowest": false, From 6ba0747a2793880ce6adadae71ac398d070c0ba2 Mon Sep 17 00:00:00 2001 From: Matthew Weier O'Phinney Date: Tue, 21 Sep 2021 14:12:25 -0500 Subject: [PATCH 12/12] fix: bump laminas-db minimum to 2.13.4 Picks up a fix around pgsql resource objects necessary to test against PHP 8.1. Signed-off-by: Matthew Weier O'Phinney --- composer.json | 2 +- composer.lock | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/composer.json b/composer.json index 0fb83ba4..3e2d75ff 100644 --- a/composer.json +++ b/composer.json @@ -34,7 +34,7 @@ "laminas/laminas-cache": "3.0.x-dev", "laminas/laminas-cache-storage-adapter-memory": "2.0.x-dev", "laminas/laminas-coding-standard": "~2.2.1", - "laminas/laminas-db": "^2.13", + "laminas/laminas-db": "^2.13.4", "laminas/laminas-http": "^2.15", "laminas/laminas-servicemanager": "^3.7", "laminas/laminas-validator": "^2.15", diff --git a/composer.lock b/composer.lock index 9ec89e1f..818c6507 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": "8624d5719001ec2c6b2860cb964ff553", + "content-hash": "894c58c1fa14012779fff1b7c14d9a94", "packages": [ { "name": "laminas/laminas-eventmanager", @@ -588,16 +588,16 @@ }, { "name": "laminas/laminas-db", - "version": "2.13.0", + "version": "2.13.4", "source": { "type": "git", "url": "https://github.com/laminas/laminas-db.git", - "reference": "a7acfdb60cf3b6c357029f515184cc4df93e1933" + "reference": "cdabb4bfa669c2c0edb0cb4e014c15b41afd3fb1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-db/zipball/a7acfdb60cf3b6c357029f515184cc4df93e1933", - "reference": "a7acfdb60cf3b6c357029f515184cc4df93e1933", + "url": "https://api.github.com/repos/laminas/laminas-db/zipball/cdabb4bfa669c2c0edb0cb4e014c15b41afd3fb1", + "reference": "cdabb4bfa669c2c0edb0cb4e014c15b41afd3fb1", "shasum": "" }, "require": { @@ -655,7 +655,7 @@ "type": "community_bridge" } ], - "time": "2021-09-16T05:17:23+00:00" + "time": "2021-09-21T18:59:44+00:00" }, { "name": "laminas/laminas-escaper", @@ -1078,23 +1078,23 @@ }, { "name": "laminas/laminas-zendframework-bridge", - "version": "1.3.0", + "version": "1.4.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-zendframework-bridge.git", - "reference": "13af2502d9bb6f7d33be2de4b51fb68c6cdb476e" + "reference": "bf180a382393e7db5c1e8d0f2ec0c4af9c724baf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/13af2502d9bb6f7d33be2de4b51fb68c6cdb476e", - "reference": "13af2502d9bb6f7d33be2de4b51fb68c6cdb476e", + "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/bf180a382393e7db5c1e8d0f2ec0c4af9c724baf", + "reference": "bf180a382393e7db5c1e8d0f2ec0c4af9c724baf", "shasum": "" }, "require": { - "php": "^7.3 || ^8.0" + "php": "^7.3 || ~8.0.0 || ~8.1.0" }, "require-dev": { - "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3", + "phpunit/phpunit": "^9.3", "psalm/plugin-phpunit": "^0.15.1", "squizlabs/php_codesniffer": "^3.5", "vimeo/psalm": "^4.6" @@ -1136,7 +1136,7 @@ "type": "community_bridge" } ], - "time": "2021-06-24T12:49:22+00:00" + "time": "2021-09-03T17:53:30+00:00" }, { "name": "mongodb/mongodb",